Re: Upcoming: Notifications, FS notifications and fsinfo()

From: J. Bruce Fields
Date: Mon Apr 06 2020 - 14:46:29 EST


On Mon, Apr 06, 2020 at 09:34:08AM -0700, Linus Torvalds wrote:
> On Mon, Apr 6, 2020 at 2:17 AM Karel Zak <kzak@xxxxxxxxxx> wrote:
> >
> > On Fri, Apr 03, 2020 at 04:30:24PM -0400, J. Bruce Fields wrote:
> > >
> > > nfs-utils/support/misc/mountpoint.c:check_is_mountpoint() stats the file
> > > and ".." and returns true if they have different st_dev or the same
> > > st_ino. Comparing mount ids sounds better.
> >
> > BTW, this traditional st_dev+st_ino way is not reliable for bind mounts.
> > For mountpoint(1) we search the directory in /proc/self/mountinfo.
>
> These days you should probably use openat2() with RESOLVE_NO_XDEV.
>
> No need for any mountinfo or anything like that. Just look up the
> pathname and say "don't cross mount-points", and you'll get an error
> if it's a mount crossing lookup.

OK, I can't see why that wouldn't work, thanks.

--b.

>
> So this kind of thing is _not_ an argument for another kernel querying
> interface. We got a new (and better) model for a lot of this.
>
> Linus