Re: directory notifications lost after fork?

Andrea Arcangeli (andrea@suse.de)
Tue, 12 Mar 2002 02:20:46 +0100


On Tue, Mar 12, 2002 at 12:04:52PM +1100, Stephen Rothwell wrote:
> Hi Andrea,
>
> On Mon, 11 Mar 2002 11:26:52 +0100 Andrea Arcangeli <andrea@suse.de> wrote:
> >
> > On Sun, Mar 10, 2002 at 10:08:02PM +0100, Oskar Liljeblad wrote:
> > > The code snipper demonstrates what I consider a bug in the
> > > dnotify facilities in the kernel. After a fork, all registered
> > > notifications are lost in the process where they originally
> > > where registered (the parent process). "lost" here means that
> > > the signal specified with F_SETSIG fcntl no longer is delivered
> > > when notified.
> >
> > this should fix your problem:
> >
> > ftp://ftp.us.kernel.org/pub/linux/kernel/people/andrea/kernels/v2.4/2.4.19pre2aa2/00_dnotify-fl_owner-1
> >
> > Andrea
>
> Can you see any reason we should not use hte patch below instead?

If somebody overrides the dnotify on the same file, he should become the
new owner, that's not handled in the below patch.

Secondly I prefer to return -EPERM to userspace if somebody tries to
drop a dnotify that it doesn't own, it gives more information back to
userspace.

On the same lines I would prefer that also a "turning_off" that fails to
find the file in the i_dnotify list , would return an error to be
strictier, but I didn't changed this bit of course.

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