On Tue, Jan 21, 2020 at 5:48 PM Amir Goldstein <amir73il@xxxxxxxxx> wrote: > > On Tue, Jan 21, 2020 at 5:55 AM Steve French <smfrench@xxxxxxxxx> wrote: > > > > Currently the inotify interface in the kernel can only be used for > > local file systems (unlike the previous change notify API used years > > ago, and the change notify interface in Windows and other OS which is > > primarily of interest for network file systems). > > > > I wanted to discuss the VFS changes needed to allow inotify requests > > to be passed into file systems so network and cluster file systems (as > > an example in the SMB3 case this simply means sending a > > SMB3_CHANGE_NOTIFY request to the server, whether Samba or Cloud > > (Azure) or Mac or Windows or Network Appliance - all support the API > > on the server side, the problem is that the network or cluster fs > > client isn't told about the request to wait on the inotify event). > > Although user space tools can use file system specific ioctls to wait > > on events, it is obviously preferable to allow network and cluster > > file systems to wait on events using the calls which current Linux > > GUIs use. > > > > This would allow gnome file manager GUI for example to be > > automatically updated when a file is added to an open directory window > > from another remote client. > > > > It would also fix the embarrassing problem noted in the inotify man page: > > > > "Inotify reports only events that a user-space program triggers > > through the filesystem > > API. As a result, it does not catch remote events that occur > > on network filesystems." > > > > but that is precisely the types of notifications that are most useful > > ... users often are aware of updates to local directories from the > > same system, but ... automatic notifications that allow GUIs to be > > updated on changes from **other** clients is of more value (and this > > is exactly what the equivalent API allows on other OS). > > > > The changes to the Linux VFS are small. > > > > > > Miklos has already posted an RFC patch: > https://lore.kernel.org/linux-fsdevel/20190507085707.GD30899@xxxxxxxxxxxxxxxxxxxxxxxxxx/ > > Did you try it? > > You also did not answer Miklos' question: > does the smb protocol support whole filesystem (or subtree) notifications? > (or just per-directory notifications)? SMB can do both. There is a flag that specifies if you want to just get notified about the directory itself or whether you want notifications from the whole subtree. > > Thanks, > Amir.