Pádraig Brady wrote: > I got a few minutes to look at this today, > and the attached patch seems to work with a very quick test. > > It doesn't handle the above remount case though > as if I mount the parent dir of a file or bind mount the file itself > then there are no inotify notifications. This remounting issue is > independent of nfs anyway. So can inotify handle this or will we > have to periodically check with a select rather than a blocking read?
Thanks for starting on this. Please filter through cppi to indent the new cpp directives. I should make syntax-check automate that check. There used to be a cvs commit hook to enforce it. Also, please spell "file system" with two words, not one, to get by the syntax-check for that. Not to look the gift horse in the mouth, but what do you think about adding a test for this? Maybe we can exercise it via a FUSE-based file system. That should be easier than setting up NFS. > tail: fix --follow to not use inotify on remote files > > * src/tail.c (......): > > diff --git a/src/tail.c b/src/tail.c > index 71f8a32..3880444 100644 > --- a/src/tail.c > +++ b/src/tail.c > @@ -52,6 +52,12 @@ > # include <sys/inotify.h> > /* `select' is used by tail_forever_inotify. */ > # include <sys/select.h> > + > +/* inotify needs to know if a file is local. */ > +#include "fs.h" > +#if HAVE_SYS_STATFS_H > +#include <sys/statfs.h> > +#endif > #endif