RE: [char-misc-next 3/3] mei: me: use an index instead of a pointer for private data

From: Winkler, Tomas
Date: Tue Jun 13 2017 - 10:33:18 EST




> -----Original Message-----
> From: Greg Kroah-Hartman [mailto:gregkh@xxxxxxxxxxxxxxxxxxx]
> Sent: Tuesday, June 13, 2017 16:46
> To: Winkler, Tomas <tomas.winkler@xxxxxxxxx>
> Cc: Usyskin, Alexander <alexander.usyskin@xxxxxxxxx>; linux-
> kernel@xxxxxxxxxxxxxxx
> Subject: Re: [char-misc-next 3/3] mei: me: use an index instead of a pointer
> for private data
>
> On Mon, Jun 12, 2017 at 12:15:57PM +0300, Tomas Winkler wrote:
> > +static const struct mei_cfg *const mei_cfg_list[] = {
> > + NULL,
> > + &mei_me_legacy_cfg,
> > + &mei_me_ich_cfg,
> > + &mei_me_pch_cfg,
> > + &mei_me_pch_cpt_pbg_cfg,
> > + &mei_me_pch8_cfg,
> > + &mei_me_pch8_sps_cfg,
> > +};
>
> Does this structure have to keep in sync with:
>
> > +enum mei_cfg_idx {
> > + MEI_ME_UNDEF_CFG,
> > + MEI_ME_LEGACY_CFG,
> > + MEI_ME_ICH_CFG,
> > + MEI_ME_PCH_CFG,
> > + MEI_ME_PCH_CPT_PBG_CFG,
> > + MEI_ME_PCH8_CFG,
> > + MEI_ME_PCH8_SPS_CFG,
> > + MEI_ME_NUM_CFG,
> > +};
>
> That value?
>
> If so, why not make it automatic and have the array use the enum values?
> That way you know you get it right.

Do you mean 'designated Initializers'? I didn't know it's supported.. neat feature.

> At the very least, document the heck out of this...

Will do

Thanks
Tomas