diff options
| -rw-r--r-- | xlators/nfs/server/src/mount3.c | 10 | 
1 files changed, 7 insertions, 3 deletions
diff --git a/xlators/nfs/server/src/mount3.c b/xlators/nfs/server/src/mount3.c index 48b719d29aa..b7350385c32 100644 --- a/xlators/nfs/server/src/mount3.c +++ b/xlators/nfs/server/src/mount3.c @@ -2544,8 +2544,6 @@ __mnt3svc_umountall (struct mount3_state *ms)                  GF_FREE (me);          } -        dict_unref (ms->mountdict); -          return 0;  } @@ -3939,7 +3937,13 @@ mnt3svc_deinit (xlator_t *nfsx)                  mnt3_auth_params_deinit (mstate->auth_params);          /* Unmount everything and clear mountdict */ -        mnt3svc_umountall (mstate); +        LOCK (&mstate->mountlock); +        { +                __mnt3svc_umountall (mstate); +                dict_unref (mstate->mountdict); +        } +        UNLOCK (&mstate->mountlock); +  }  rpcsvc_program_t *  | 
