diff options
Diffstat (limited to 'usr/src/uts/common/fs/vfs.c')
-rw-r--r-- | usr/src/uts/common/fs/vfs.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/usr/src/uts/common/fs/vfs.c b/usr/src/uts/common/fs/vfs.c index 61f43e6b00..5a88c3e69d 100644 --- a/usr/src/uts/common/fs/vfs.c +++ b/usr/src/uts/common/fs/vfs.c @@ -23,7 +23,7 @@ * Copyright (c) 1988, 2010, Oracle and/or its affiliates. All rights reserved. * Copyright 2016 Joyent, Inc. * Copyright 2016 Toomas Soome <tsoome@me.com> - * Copyright (c) 2016 by Delphix. All rights reserved. + * Copyright (c) 2016, 2017 by Delphix. All rights reserved. * Copyright 2016 Nexenta Systems, Inc. * Copyright 2017 RackTop Systems. */ @@ -1293,7 +1293,8 @@ domount(char *fsname, struct mounta *uap, vnode_t *vp, struct cred *credp, * successful for later cleanup and addition to * the mount in progress table. */ - if ((uap->flags & MS_GLOBAL) == 0 && + if ((vswp->vsw_flag & VSW_MOUNTDEV) && + (uap->flags & MS_GLOBAL) == 0 && lookupname(uap->spec, fromspace, FOLLOW, NULL, &bvp) == 0) { addmip = 1; @@ -1509,7 +1510,8 @@ domount(char *fsname, struct mounta *uap, vnode_t *vp, struct cred *credp, * wlock above. This case is for a non-spliced, non-global filesystem. */ if (!addmip) { - if ((uap->flags & MS_GLOBAL) == 0 && + if ((vswp->vsw_flag & VSW_MOUNTDEV) && + (uap->flags & MS_GLOBAL) == 0 && lookupname(uap->spec, fromspace, FOLLOW, NULL, &bvp) == 0) { addmip = 1; } |