Re: FS callback routines

From: Jesse Pollard (pollard@tomcat.admin.navo.hpc.mil)
Date: Thu Jan 11 2001 - 11:39:25 EST


Daniel Phillips <phillips@innominate.de>:
> Jamie Lokier wrote:
> >
> > Daniel Phillips wrote:
> > > DN_OPEN A file in the directory was opened
> > >
> > > You open the top level directory and register for events. When somebody
> > > opens a subdirectory of the top level directory, you receive
> > > notification and register for events on the subdirectory, and so on,
> > > down to the file that is actually modified.
> >
> > If it worked, and I'm not sure the timing would be reliable enough, the
> > daemon would only have to have open every directory being accessed by
> > every program in the system. Hmm. Seems like overkill when you're only
> > interested in files that are being modified.
>
> It gets to close some too. Normally just the directories in the path to
> the file(s) being modified would be open.
>
> Good point about the timing. A directory should not disappear before an
> in-flight notification has been serviced. I doubt the current scheme
> enforces this. There is no more room for 'works most of the time' in
> this than there is in our memory page handling.
>
> > It would be much, much more reliable to do a walk over d_parent in
> > dnotify.c. Your idea is a nice way to flag kernel dentries such that
> > you don't do d_parent walks unnecessarily.
>
> It's bottom-up vs top-down. It's worth analyzing the top-down approach
> a little more, it does solve a lot of problems (and creates some as you
> pointed out, or at least makes some existing problems more obvious).
> For make it's really quite nice. The make daemon only needs to register
> in the top level directory of the source tree. I think this solves the
> hard link problem too, because each path that's interested in
> notification will receive it.

It makes security checks impossible though. You would have to reboot
the system every time a directory changes permission to block unauthorized
monitoring of files that are no longer accessable by the user.

-------------------------------------------------------------------------
Jesse I Pollard, II
Email: pollard@navo.hpc.mil

Any opinions expressed are solely my own.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Mon Jan 15 2001 - 21:00:31 EST