From: Vivek Goyal <vgoyal@redhat.com>
To: Stef Bon <stefbon@gmail.com>
Cc: Steve French <sfrench@samba.org>, Jan Kara <jack@suse.cz>,
Miklos Szeredi <miklos@szeredi.hu>,
Amir Goldstein <amir73il@gmail.com>,
virtio-fs-list <virtio-fs@redhat.com>,
Al Viro <viro@zeniv.linux.org.uk>,
linux-fsdevel <linux-fsdevel@vger.kernel.org>
Subject: Re: [Virtio-fs] [RFC PATCH 0/7] Inotify support in FUSE and virtiofs
Date: Tue, 30 Nov 2021 10:36:45 -0500 [thread overview]
Message-ID: <YaZFDS2u5PBoUvkl@redhat.com> (raw)
In-Reply-To: <CANXojcy9JzXeLQ6bz9+UOekkpqo8NkgQbhugmGmPE+x3+_=h3Q@mail.gmail.com>
On Tue, Nov 16, 2021 at 06:09:41AM +0100, Stef Bon wrote:
> Hi Ioannis,
>
> I see that you have been working on making fsnotify work on virtiofs.
> Earlier you contacted me since I've written this:
>
> https://github.com/libfuse/libfuse/wiki/Fsnotify-and-FUSE
>
> and send you my patches on 23 june.
> I want to mention first that I would have appreciated it if you would
> have reacted to me after I've sent you my patches. I did not get any
> reaction from you. Maybe these patches (which differ from what you
> propose now, but there is also a lot in common) have been an
> inspiration for you.
Hi Stef,
Sorry about not giving you the credit you deserved. We definitely made
a mistake here. We will be more careful in future and not repeat such
things.
>
> Second, what I've written about is that with network filesystems (eg a
> backend shared with other systems) fsnotify support in FUSE has some
> drawbacks.
> In a network environment, where a network fs is part of making people
> collaborate, it's very useful to have information on who did what on
> which host, and also when. Simply a message "a file has been created
> in the folder you watch" is not enough. For example, if you are part
> of a team, and assigned to your team is a directory on a server where
> you can work on some shared documents. Now in this example there is a
> planning, and some documents have to be written. In that case you want
> to be informed that someone in your team has started a document (by
> creating it) by the system.
>
> This "extended" information will never get through fsnotify.
Wondering fsnotify can be extended to carry this info when available.
>
> Other info useful to you as team member:
>
> - you have become member of another team: sbon@anotherteam.example.org
> - diskspace and/or quota shortage reported by networksystem
> - new teammember, teammember left
> - your "rights" or role in the network/team have been changed (for
> example from reader to reader and writer to some documents)
All these sound useful. Some of them like change of team/group or
change of rights/role seem outside the scope of filesystem notificaitons
as such. Some sort of notifications for diskspace/quota could be
applicable to local filesystems too.
>
> What I want to say is that in a network where lots of people work
> together in teams/projects, (and I want Linux to play a role there, as
> desktop/workstation) communication is very important, and all these
> messages should be supported by the system. My idea is the support of
> watching fs events with FUSE filesystems should go through userspace,
> and not via the kernel (cause fs events are part of your setup in the
> network, together with all other tools to make people collaborate like
> chat/call/text, and because mentioned above extended info about the
> who on what host etc is not supported by fsnotify).
> There should be a fs event watcher which takes care of all watches on
> behalf of applications during a session, similar to gamin and FAM once
> did (not used anymore?).
So how does the API look like for this OOB channel? Have you published
it somewhere.
Thanks
Vivek
> When receiving a request from one of the applications this fsevent
> watcher will use inotify and/or fanotify for local fs's only. With a
> FUSE fs, it should contact (via a socket) this fs that a watch has
> been set on an inode with a certain mask.
> If the FUSE fs does not support this, fallback on normal inotify/fanotify.
> This way extended info is possible.
>
> Is this extended information also useful for virtiofs?
>
> Stef Bon
>
WARNING: multiple messages have this Message-ID (diff)
From: Vivek Goyal <vgoyal@redhat.com>
To: Stef Bon <stefbon@gmail.com>
Cc: Amir Goldstein <amir73il@gmail.com>, Jan Kara <jack@suse.cz>,
Ioannis Angelakopoulos <iangelak@redhat.com>,
linux-fsdevel <linux-fsdevel@vger.kernel.org>,
virtio-fs-list <virtio-fs@redhat.com>,
Al Viro <viro@zeniv.linux.org.uk>,
Miklos Szeredi <miklos@szeredi.hu>,
Steve French <sfrench@samba.org>
Subject: Re: [RFC PATCH 0/7] Inotify support in FUSE and virtiofs
Date: Tue, 30 Nov 2021 10:36:45 -0500 [thread overview]
Message-ID: <YaZFDS2u5PBoUvkl@redhat.com> (raw)
In-Reply-To: <CANXojcy9JzXeLQ6bz9+UOekkpqo8NkgQbhugmGmPE+x3+_=h3Q@mail.gmail.com>
On Tue, Nov 16, 2021 at 06:09:41AM +0100, Stef Bon wrote:
> Hi Ioannis,
>
> I see that you have been working on making fsnotify work on virtiofs.
> Earlier you contacted me since I've written this:
>
> https://github.com/libfuse/libfuse/wiki/Fsnotify-and-FUSE
>
> and send you my patches on 23 june.
> I want to mention first that I would have appreciated it if you would
> have reacted to me after I've sent you my patches. I did not get any
> reaction from you. Maybe these patches (which differ from what you
> propose now, but there is also a lot in common) have been an
> inspiration for you.
Hi Stef,
Sorry about not giving you the credit you deserved. We definitely made
a mistake here. We will be more careful in future and not repeat such
things.
>
> Second, what I've written about is that with network filesystems (eg a
> backend shared with other systems) fsnotify support in FUSE has some
> drawbacks.
> In a network environment, where a network fs is part of making people
> collaborate, it's very useful to have information on who did what on
> which host, and also when. Simply a message "a file has been created
> in the folder you watch" is not enough. For example, if you are part
> of a team, and assigned to your team is a directory on a server where
> you can work on some shared documents. Now in this example there is a
> planning, and some documents have to be written. In that case you want
> to be informed that someone in your team has started a document (by
> creating it) by the system.
>
> This "extended" information will never get through fsnotify.
Wondering fsnotify can be extended to carry this info when available.
>
> Other info useful to you as team member:
>
> - you have become member of another team: sbon@anotherteam.example.org
> - diskspace and/or quota shortage reported by networksystem
> - new teammember, teammember left
> - your "rights" or role in the network/team have been changed (for
> example from reader to reader and writer to some documents)
All these sound useful. Some of them like change of team/group or
change of rights/role seem outside the scope of filesystem notificaitons
as such. Some sort of notifications for diskspace/quota could be
applicable to local filesystems too.
>
> What I want to say is that in a network where lots of people work
> together in teams/projects, (and I want Linux to play a role there, as
> desktop/workstation) communication is very important, and all these
> messages should be supported by the system. My idea is the support of
> watching fs events with FUSE filesystems should go through userspace,
> and not via the kernel (cause fs events are part of your setup in the
> network, together with all other tools to make people collaborate like
> chat/call/text, and because mentioned above extended info about the
> who on what host etc is not supported by fsnotify).
> There should be a fs event watcher which takes care of all watches on
> behalf of applications during a session, similar to gamin and FAM once
> did (not used anymore?).
So how does the API look like for this OOB channel? Have you published
it somewhere.
Thanks
Vivek
> When receiving a request from one of the applications this fsevent
> watcher will use inotify and/or fanotify for local fs's only. With a
> FUSE fs, it should contact (via a socket) this fs that a watch has
> been set on an inode with a certain mask.
> If the FUSE fs does not support this, fallback on normal inotify/fanotify.
> This way extended info is possible.
>
> Is this extended information also useful for virtiofs?
>
> Stef Bon
>
next prev parent reply other threads:[~2021-11-30 15:36 UTC|newest]
Thread overview: 137+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-10-25 20:46 [Virtio-fs] [RFC PATCH 0/7] Inotify support in FUSE and virtiofs Ioannis Angelakopoulos
2021-10-25 20:46 ` Ioannis Angelakopoulos
2021-10-25 20:46 ` [Virtio-fs] [RFC PATCH 1/7] FUSE: Add the fsnotify opcode and in/out structs to FUSE Ioannis Angelakopoulos
2021-10-25 20:46 ` Ioannis Angelakopoulos
2021-10-26 14:56 ` [Virtio-fs] " Amir Goldstein
2021-10-26 14:56 ` Amir Goldstein
2021-10-26 18:28 ` [Virtio-fs] " Amir Goldstein
2021-10-26 18:28 ` Amir Goldstein
2021-10-26 20:47 ` [Virtio-fs] " Ioannis Angelakopoulos
2021-10-27 5:46 ` Amir Goldstein
2021-10-27 5:46 ` Amir Goldstein
2021-10-27 21:46 ` [Virtio-fs] " Vivek Goyal
2021-10-27 21:46 ` Vivek Goyal
2021-10-28 4:13 ` [Virtio-fs] " Amir Goldstein
2021-10-28 4:13 ` Amir Goldstein
2021-10-28 14:20 ` [Virtio-fs] " Vivek Goyal
2021-10-28 14:20 ` Vivek Goyal
2021-10-25 20:46 ` [Virtio-fs] [RFC PATCH 2/7] FUSE: Add the remote inotify support capability " Ioannis Angelakopoulos
2021-10-25 20:46 ` Ioannis Angelakopoulos
2021-10-25 20:46 ` [Virtio-fs] [RFC PATCH 3/7] FUSE, Inotify, Fsnotify, VFS: Add the fuse_fsnotify_update_mark inode operation Ioannis Angelakopoulos
2021-10-25 20:46 ` [RFC PATCH 3/7] FUSE,Inotify,Fsnotify,VFS: " Ioannis Angelakopoulos
2021-10-26 15:06 ` [Virtio-fs] [RFC PATCH 3/7] FUSE, Inotify, Fsnotify, VFS: " Amir Goldstein
2021-10-26 15:06 ` [RFC PATCH 3/7] FUSE,Inotify,Fsnotify,VFS: " Amir Goldstein
2021-11-01 17:49 ` [Virtio-fs] [RFC PATCH 3/7] FUSE, Inotify, Fsnotify, VFS: " Vivek Goyal
2021-11-01 17:49 ` [RFC PATCH 3/7] FUSE,Inotify,Fsnotify,VFS: " Vivek Goyal
2021-11-02 7:34 ` [Virtio-fs] [RFC PATCH 3/7] FUSE, Inotify, Fsnotify, VFS: " Amir Goldstein
2021-11-02 7:34 ` [RFC PATCH 3/7] FUSE,Inotify,Fsnotify,VFS: " Amir Goldstein
2021-10-25 20:46 ` [Virtio-fs] [RFC PATCH 4/7] FUSE: Add the fuse_fsnotify_send_request to FUSE Ioannis Angelakopoulos
2021-10-25 20:46 ` Ioannis Angelakopoulos
2021-10-25 20:46 ` [Virtio-fs] [RFC PATCH 5/7] Fsnotify: Add a wrapper around the fsnotify function Ioannis Angelakopoulos
2021-10-25 20:46 ` Ioannis Angelakopoulos
2021-10-26 14:37 ` [Virtio-fs] " Amir Goldstein
2021-10-26 14:37 ` Amir Goldstein
2021-10-26 15:38 ` [Virtio-fs] " Vivek Goyal
2021-10-26 15:38 ` Vivek Goyal
2021-10-25 20:46 ` [Virtio-fs] [RFC PATCH 6/7] FUSE, Fsnotify: Add the fuse_fsnotify_event inode operation Ioannis Angelakopoulos
2021-10-25 20:46 ` [RFC PATCH 6/7] FUSE,Fsnotify: " Ioannis Angelakopoulos
2021-10-25 20:46 ` [Virtio-fs] [RFC PATCH 7/7] virtiofs: Add support for handling the remote fsnotify notifications Ioannis Angelakopoulos
2021-10-25 20:46 ` Ioannis Angelakopoulos
2021-10-26 15:23 ` [Virtio-fs] [RFC PATCH 0/7] Inotify support in FUSE and virtiofs Amir Goldstein
2021-10-26 15:23 ` Amir Goldstein
2021-10-26 15:52 ` [Virtio-fs] " Vivek Goyal
2021-10-26 15:52 ` Vivek Goyal
2021-10-26 18:19 ` [Virtio-fs] " Amir Goldstein
2021-10-26 18:19 ` Amir Goldstein
2021-10-26 16:18 ` [Virtio-fs] " Vivek Goyal
2021-10-26 16:18 ` Vivek Goyal
2021-10-26 17:59 ` [Virtio-fs] " Amir Goldstein
2021-10-26 17:59 ` Amir Goldstein
2021-10-26 18:27 ` [Virtio-fs] " Vivek Goyal
2021-10-26 18:27 ` Vivek Goyal
2021-10-26 19:04 ` [Virtio-fs] " Amir Goldstein
2021-10-26 19:04 ` Amir Goldstein
2021-10-26 19:14 ` [Virtio-fs] " Ioannis Angelakopoulos
2021-10-27 5:59 ` Amir Goldstein
2021-10-27 5:59 ` Amir Goldstein
2021-10-27 13:23 ` [Virtio-fs] " Jan Kara
2021-10-27 13:23 ` Jan Kara
2021-10-27 20:29 ` [Virtio-fs] " Vivek Goyal
2021-10-27 20:29 ` Vivek Goyal
2021-10-27 20:37 ` [Virtio-fs] " Vivek Goyal
2021-10-27 20:37 ` Vivek Goyal
2021-11-02 11:09 ` [Virtio-fs] " Jan Kara
2021-11-02 11:09 ` Jan Kara
2021-11-02 12:54 ` [Virtio-fs] " Amir Goldstein
2021-11-02 12:54 ` Amir Goldstein
2021-11-02 20:34 ` [Virtio-fs] " Vivek Goyal
2021-11-02 20:34 ` Vivek Goyal
2021-11-03 7:31 ` [Virtio-fs] " Amir Goldstein
2021-11-03 7:31 ` Amir Goldstein
2021-11-03 22:29 ` [Virtio-fs] " Vivek Goyal
2021-11-03 22:29 ` Vivek Goyal
2021-11-04 5:19 ` [Virtio-fs] " Amir Goldstein
2021-11-04 5:19 ` Amir Goldstein
2021-11-03 10:09 ` [Virtio-fs] " Jan Kara
2021-11-03 10:09 ` Jan Kara
2021-11-03 11:17 ` [Virtio-fs] " Amir Goldstein
2021-11-03 11:17 ` Amir Goldstein
2021-11-03 22:36 ` [Virtio-fs] " Vivek Goyal
2021-11-03 22:36 ` Vivek Goyal
2021-11-04 5:29 ` [Virtio-fs] " Amir Goldstein
2021-11-04 5:29 ` Amir Goldstein
2021-11-04 10:03 ` [Virtio-fs] " Jan Kara
2021-11-04 10:03 ` Jan Kara
2021-11-05 14:30 ` [Virtio-fs] " Vivek Goyal
2021-11-05 14:30 ` Vivek Goyal
2021-11-10 6:28 ` [Virtio-fs] " Amir Goldstein
2021-11-10 6:28 ` Amir Goldstein
2021-11-11 17:30 ` [Virtio-fs] " Jan Kara
2021-11-11 17:30 ` Jan Kara
2021-11-11 20:52 ` [Virtio-fs] " Amir Goldstein
2021-11-11 20:52 ` Amir Goldstein
2021-11-16 5:09 ` [Virtio-fs] " Stef Bon
2021-11-16 5:09 ` Stef Bon
2021-11-16 18:00 ` [Virtio-fs] " Ioannis Angelakopoulos
2021-11-16 22:12 ` Ioannis Angelakopoulos
2021-11-17 6:40 ` Amir Goldstein
2021-11-17 6:40 ` Amir Goldstein
2021-11-30 15:27 ` [Virtio-fs] " Vivek Goyal
2021-11-30 15:27 ` Vivek Goyal
2021-12-14 23:21 ` [Virtio-fs] " Ioannis Angelakopoulos
2021-12-15 7:10 ` Amir Goldstein
2021-12-15 7:10 ` Amir Goldstein
2021-12-15 16:44 ` [Virtio-fs] " Vivek Goyal
2021-12-15 16:44 ` Vivek Goyal
2021-12-15 17:29 ` [Virtio-fs] " Amir Goldstein
2021-12-15 17:29 ` Amir Goldstein
2021-12-15 19:20 ` [Virtio-fs] " Vivek Goyal
2021-12-15 19:20 ` Vivek Goyal
2021-12-15 19:54 ` [Virtio-fs] " Amir Goldstein
2021-12-15 19:54 ` Amir Goldstein
2021-12-16 11:03 ` [Virtio-fs] " Amir Goldstein
2021-12-16 11:03 ` Amir Goldstein
2021-12-16 16:24 ` [Virtio-fs] " Vivek Goyal
2021-12-16 16:24 ` Vivek Goyal
2021-12-16 18:22 ` [Virtio-fs] " Amir Goldstein
2021-12-16 18:22 ` Amir Goldstein
2021-12-16 22:24 ` [Virtio-fs] " Vivek Goyal
2021-12-16 22:24 ` Vivek Goyal
2021-12-17 4:21 ` [Virtio-fs] " Amir Goldstein
2021-12-17 4:21 ` Amir Goldstein
2021-12-17 14:15 ` [Virtio-fs] " Vivek Goyal
2021-12-17 14:15 ` Vivek Goyal
2021-12-18 8:28 ` [Virtio-fs] " Amir Goldstein
2021-12-18 8:28 ` Amir Goldstein
2021-12-20 16:41 ` [Virtio-fs] " Vivek Goyal
2021-12-20 16:41 ` Vivek Goyal
2021-12-20 18:22 ` [Virtio-fs] " Amir Goldstein
2021-12-20 18:22 ` Amir Goldstein
2022-01-06 23:37 ` [Virtio-fs] " Steve French
2022-01-06 23:37 ` Steve French
2021-11-30 15:36 ` Vivek Goyal [this message]
2021-11-30 15:36 ` Vivek Goyal
2021-10-27 20:24 ` [Virtio-fs] " Vivek Goyal
2021-10-27 20:24 ` Vivek Goyal
2021-10-28 5:11 ` [Virtio-fs] " Amir Goldstein
2021-10-28 5:11 ` Amir Goldstein
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=YaZFDS2u5PBoUvkl@redhat.com \
--to=vgoyal@redhat.com \
--cc=amir73il@gmail.com \
--cc=jack@suse.cz \
--cc=linux-fsdevel@vger.kernel.org \
--cc=miklos@szeredi.hu \
--cc=sfrench@samba.org \
--cc=stefbon@gmail.com \
--cc=viro@zeniv.linux.org.uk \
--cc=virtio-fs@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.