Re: [PATCH] kernel/watch_queue: Make pipe NULL while clearing watch_queue

From: Siddh Raman Pant
Date: Sun Jul 24 2022 - 00:07:57 EST


On Sun, 24 Jul 2022 09:15:27 +0530 Khalid Masum <khalid.masum.92@xxxxxxxxx> wrote:
> On Sat, Jul 23, 2022 at 8:29 PM Siddh Raman Pant via
> Linux-kernel-mentees <linux-kernel-mentees@xxxxxxxxxxxxxxxxxxxxxxxxx>
> wrote:
> >
> > On Sat, 23 Jul 2022 19:33:33 +0530 Greg KH <gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
> > > You should not use #ifdef in .c files, it's unmaintainable over time.
> > >
> > > thanks,
> > >
> > > greg k-h
> > >
> >
> > I used it because it is used in the same way in fs/pipe.c too (please check the
> > stated line number).
> >
> > That, in turn, is because `watch_queue` member in the `pipe_inode_info` struct
> > is defined that way (see line 80 of include/linux/pipe_fs_i.h), so I am forced
> > to use the ifdef guard.
> >
> Maybe, we can use the IS_ENABLED macro here to avoid ifdef in the .c file as
> suggested here:
> https://www.kernel.org/doc/html/v4.10/process/coding-style.html#conditional-compilation
>
> if(IS_ENABLED(CONFIG_WATCH_QUEUE)){
> ...
> }
>
> > Thanks,
> > Siddh
>
> Thanks,
> -- Khalid Masum

I have looked at it again. The guard is superfluous in watch_queue.c (don't
need it since we are already in watch queue), hence I am sending v2 with it
removed.

Thanks,
Siddh