Re: [PATCH] sysfs: add filter function to groups

Kay Sievers
2007-10-29T17:41:23Z

On Mon, 2007-10-29 at 12:28 -0500, James Bottomley wrote:
> On Mon, 2007-10-29 at 18:27 +0100, Kay Sievers wrote:
> > On Mon, 2007-10-29 at 11:57 -0500, James Bottomley wrote:
> > > On Mon, 2007-10-29 at 17:54 +0100, Kay Sievers wrote:
> > > > On Mon, 2007-10-29 at 10:16 -0500, James Bottomley wrote:
> >
> > > > > struct attribute_group {
> > > > > const char *name;
> > > > > + int (*filter_show)(struct kobject *, int);
> > > >
> > > > Are you sure that you want to return an array index here, instead of the
> > > > actual attribute? Like:
> > >
> > > Actually, it returns a true/false value indicating whether the given
> > > attribute should be displayed.
> >
> > It isn't about the return value of the function, that's fine. You call
> > back with the index number (int) of the array of attributes, instead of
> > passing the attribute pointer (struct attribute *attr) back to ask the
> > device for the attribute to create.
>
> For bitmaps, the int is what we will want. I can add both to the
> prototype if that will make you happy? so people searching on struct
> attribute and not relying on the array construction order can use the
> code as well.

Having both parameters sounds fine. Otherwise, if the code is spread
around several files, the attribute arrays would need to be global to
handle the callbacks, which isn't too nice.

Thanks,
Kay