On 13/11/24 23:18, Jan Kara wrote:
On Wed 13-11-24 08:45:06, Jeff Layton wrote:
On Wed, 2024-11-13 at 12:27 +0100, Karel Zak wrote:
On Tue, Nov 12, 2024 at 02:39:21PM GMT, Christian Brauner wrote:
Next on the wish list is a notification (a file descriptor that can be
used in epoll) that returns a 64-bit ID when there is a change in the
mount node. This will enable us to enhance systemd so that it does not
have to read the entire mount table after every change.
New fanotify events for mount table changes, perhaps?
Now that I'm looking at it I'm not sure fanotify is a great fit for this
usecase. A lot of fanotify functionality does not really work for virtual
filesystems such as proc and hence we generally try to discourage use of
fanotify for them. So just supporting one type of event (like FAN_MODIFY)
on one file inside proc looks as rather inconsistent interface. But I
vaguely remember we were discussing some kind of mount event, weren't we?
Or was that for something else?
I still need to have a look at the existing notifications sub-systems but,
tbh, I also don't think they offer the needed functionality.
The thing that was most useful with David's notifications when I was trying
to improve the mounts handling was the queuing interface. It allowed me to
batch notifications up to around a couple of hundred and grab them in one go
for processing. This significantly lowered the overhead of rapid fire event
processing. The ability to go directly to an individual mount and get it's
information only got about half the improvement I saw, the rest come
from the
notifications improvement.
Ian