From 27936a387b1ea2798a2f6d068e31b83c6ca2632b Mon Sep 17 00:00:00 2001 From: NeilBrown Date: Wed, 6 Dec 2017 14:16:56 -0500 Subject: mount.nfs: don't parse "device" name for -o remount When "-o remount" is used, the device/special name is ignored. So don't parse it and risk generating a useless error. This is particularly important when nfs-root is used as the "device name" is listed as "/dev/nfs". Because mount.nfs doesn't think that is valid, mount -o remount,rw / will fail. Link: https://github.com/systemd/systemd/issues/3590 Signed-off-by: NeilBrown Signed-off-by: Steve Dickson --- utils/mount/stropts.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/utils/mount/stropts.c b/utils/mount/stropts.c index 4401314..1217823 100644 --- a/utils/mount/stropts.c +++ b/utils/mount/stropts.c @@ -384,7 +384,9 @@ static int nfs_set_version(struct nfsmount_info *mi) */ static int nfs_validate_options(struct nfsmount_info *mi) { - if (!nfs_parse_devname(mi->spec, &mi->hostname, NULL)) + /* For remount, ignore mi->spec: the kernel will. */ + if (!(mi->flags & MS_REMOUNT) && + !nfs_parse_devname(mi->spec, &mi->hostname, NULL)) return 0; if (!nfs_nfs_proto_family(mi->options, &mi->family)) -- cgit v1.2.1