Modify the umount(8) command so that it doesn't do
a sync(2) syscall before unmount(2) for the "-f" case. This avoids a forced dismount from getting stuck for an NFS mountpoint in sync() when the server is not responsive. With this commit, forced dismounts should normally work for the NFS clients, but can take up to about 1minute to complete. PR: kern/157365 Reviewed by: kib MFC after: 2 weeks
This commit is contained in:
parent
2c33480efe
commit
7c714099c7
@ -90,9 +90,6 @@ main(int argc, char *argv[])
|
||||
struct statfs *mntbuf, *sfs;
|
||||
struct addrinfo hints;
|
||||
|
||||
/* Start disks transferring immediately. */
|
||||
sync();
|
||||
|
||||
all = errs = 0;
|
||||
while ((ch = getopt(argc, argv, "AaF:fh:t:v")) != -1)
|
||||
switch (ch) {
|
||||
@ -127,6 +124,10 @@ main(int argc, char *argv[])
|
||||
argc -= optind;
|
||||
argv += optind;
|
||||
|
||||
/* Start disks transferring immediately. */
|
||||
if ((fflag & MNT_FORCE) == 0)
|
||||
sync();
|
||||
|
||||
if ((argc == 0 && !all) || (argc != 0 && all))
|
||||
usage();
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user