Re: [take2 1/4] kevent: core files.

From: James Morris
Date: Tue Aug 01 2006 - 10:25:27 EST


On Tue, 1 Aug 2006, Evgeniy Polyakov wrote:

> On Tue, Aug 01, 2006 at 09:46:58AM -0400, James Morris (jmorris@xxxxxxxxx) wrote:
> > On Tue, 1 Aug 2006, Evgeniy Polyakov wrote:
> >
> > > + u->ready_num = 0;
> > > +#ifdef CONFIG_KEVENT_USER_STAT
> > > + u->wait_num = u->im_num = u->total = 0;
> > > +#endif
> >
> > Generally, #ifdefs in the body of the kernel code are discouraged. Can
> > you abstract these out as static inlines?
>
> Yes, it is possible.
> I would ask is it needed at all?

Yes, please, it is standard kernel development practice.

Otherwise, the kernel will turn into an unmaintainable #ifdef jungle.

> It contains number of immediately fired
> events (i.e. those which were ready when event was added and thus
> syscall returned immediately showing that it is ready), total number of
> events, which were inserted in the given queue and number of events
> which were marked as ready after they were inserted.
> Currently it is compilation option which ends up in printk with above
> info when kevent queue is removed.

Fine, make

static inline void kevent_user_stat_reset(u);

etc.

which compile to nothing when it's not confifgured.


--
James Morris
<jmorris@xxxxxxxxx>
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/