From 26133258fd17e1a8a2a5b5bef09f70d12a304ee1 Mon Sep 17 00:00:00 2001 From: heitbaum Date: Fri, 28 Jan 2022 23:21:34 +0000 Subject: [PATCH] nfsv4: fix multithreading mutex --- lib/nfs_v4.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/lib/nfs_v4.c b/lib/nfs_v4.c index f1a29d1..27102a0 100644 --- a/lib/nfs_v4.c +++ b/lib/nfs_v4.c @@ -1687,10 +1687,14 @@ nfs4_chdir_1_cb(struct rpc_context *rpc, int status, void *command_data, } /* Ok, all good. Lets steal the path string. */ +#ifdef HAVE_MULTITHREADING nfs_mt_mutex_lock(&nfs->rpc->rpc_mutex); +#endif free(nfs->nfsi->cwd); nfs->nfsi->cwd = data->path; +#ifdef HAVE_MULTITHREADING nfs_mt_mutex_unlock(&nfs->rpc->rpc_mutex); +#endif data->path = NULL; @@ -2347,10 +2351,10 @@ nfs4_open_readlink_cb(struct rpc_context *rpc, int status, void *command_data, #ifdef HAVE_MULTITHREADING nfs_mt_mutex_lock(&data->nfs->nfsi->nfs4_open_mutex); +#endif data->lock_owner = nfs->nfsi->open_counter++; +#ifdef HAVE_MULTITHREADING nfs_mt_mutex_unlock(&data->nfs->nfsi->nfs4_open_mutex); -#else - data->lock_owner = nfs->nfsi->open_counter++; #endif data->filler.func = nfs4_populate_open;