diff options
-rw-r--r-- | util-linux/mount.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/util-linux/mount.c b/util-linux/mount.c index b76c38ab1..030ea662a 100644 --- a/util-linux/mount.c +++ b/util-linux/mount.c @@ -1453,8 +1453,10 @@ static int singlemount(struct mntent *mp, int ignore_busy) // Look at the file. (Not found isn't a failure for remount, or for // a synthetic filesystem like proc or sysfs.) + // (We use stat, not lstat, in order to allow + // mount symlink_to_file_or_blkdev dir) - if (!lstat(mp->mnt_fsname, &st) + if (!stat(mp->mnt_fsname, &st) && !(vfsflags & (MS_REMOUNT | MS_BIND | MS_MOVE)) ) { // Do we need to allocate a loopback device for it? |