From a63214d65accded81c7d937912d95a3532c47b5a Mon Sep 17 00:00:00 2001 From: Bill Krier Date: Mon, 12 Oct 2009 11:23:20 -0700 Subject: 6883491 sharemgr loops forever trying to unshare file systems preventing the system shutting down --- usr/src/lib/libshare/nfs/libshare_nfs.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'usr/src/lib/libshare/nfs/libshare_nfs.c') diff --git a/usr/src/lib/libshare/nfs/libshare_nfs.c b/usr/src/lib/libshare/nfs/libshare_nfs.c index e045713c3c..4286f18d22 100644 --- a/usr/src/lib/libshare/nfs/libshare_nfs.c +++ b/usr/src/lib/libshare/nfs/libshare_nfs.c @@ -1913,6 +1913,10 @@ nfs_enable_share(sa_share_t share) sa_sharetab_fill_zfs(share, &sh, "nfs"); err = sa_share_zfs(share, NULL, path, &sh, &ea, ZFS_SHARE_NFS); + if (err != SA_OK) { + errno = err; + err = -1; + } sa_emptyshare(&sh); } } else { @@ -2028,6 +2032,10 @@ nfs_disable_share(sa_share_t share, char *path) err = sa_share_zfs(share, NULL, path, &sh, &ea, ZFS_UNSHARE_NFS); + if (err != SA_OK) { + errno = err; + err = -1; + } } else { err = exportfs(path, NULL); } @@ -2048,8 +2056,8 @@ nfs_disable_share(sa_share_t share, char *path) case ENOENT: ret = SA_NO_SUCH_PATH; break; - default: - ret = SA_SYSTEM_ERR; + default: + ret = SA_SYSTEM_ERR; break; } } -- cgit v1.2.3