[linux-cifs-client] Re: dnotify/inotify and vfs questions
Ian Campbell
ijc at hellion.org.uk
Thu Aug 25 15:07:25 GMT 2005
On Thu, 2005-08-25 at 15:57 +0100, Jamie Lokier wrote:
> Ian Campbell wrote:
> > On Tue, 2005-08-23 at 16:23 +0100, Jamie Lokier wrote:
> > > <receive some request>...
> > > if (any_dnotify_or_inotify_events_pending) {
> > > read_dnotify_or_inotify_events();
> > > if (any_events_related_to(file)) {
> > > store_in_userspace_stat_cache(file, stat(file));
> > > }
> > > }
> > > stat_info = lookup_userspace_stat_cache(file);
> > >
> > > Now that's a silly way to save one system call in the fast path by itself.
> >
> > I'm not that familiar with inotify internals but doesn't
> > read_dnotify_or_inotify_events() or
> > any_dnotify_or_inotify_events_pending() involve a syscall?
>
> The fast path is just any_dnotify_or_inotify_events_pending: there
> aren't any relevant events pending in the fast path.
[snip]
> As I explained in the previous mail, all this is absolutely pointless
> to save one system call. It's a lot of work for negligable gain.
>
> The point is when it saves lots of calls and userspace logic together,
> for things like web page templates and compiled programs, which depend
> on many files which can be revalidated in a small number of operations.
Thanks for the explaination.
Ian.
--
Ian Campbell
Current Noise: Iron Maiden - Prodigal Son
Fay: The British police force used to be run by men of integrity.
Truscott: That is a mistake which has been rectified.
-- Joe Orton, "Loot"
More information about the linux-cifs-client
mailing list