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. 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