Re: [PATCH] VFS/inotify: send netlink messages when an inotify watch has been set or removed.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, Jan 07, 2012 at 04:03:26PM +0100, Stef Bon wrote:
> Futher, the FUSE fs knows it's own mountpoint. (ignore the submounts
> on a FUSE fs here), it can filter out the watches which are set on the
> fs.
> This is not so hard right? What problems with "no way to tell at which
> locations the damn thing happens to" you are pointing at??

Filesystem may be mounted at many places.  The set of those locations
depends on the process.  It may change at any time.  With no way for
the filesystem to know about that (nor should it care, actually).

See mount(2).  Pay particular attention to MS_MOVE and MS_BIND flags
(== --move and --bind in mount(8)).

Moreover, it's not just maintaining the table of what is mounted where;
different processes may bloody well have different sets of mounts.

And even assuming we started sending notifications on *everything*,
it still would not be enough - how is your FUSE server supposed to
distinguish between
	* "add watch" notification sent
	* pathname argument of inotify_add_watch() resolved (down in
inotify_find_inode())
	* "mount --move" notification sent, mounted subtree moved
and
	* "add watch" notification sent
	* "mount --move" notification sent, mounted subtree moved
	* pathname argument of inotify_add_watch() resolved (down in
inotify_find_inode())
when the netlink traffic it sees is identical in both cases?  And results
are very much _not_ the same...

IOW, what you are proposing is inherently racy.
--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]
  Powered by Linux