From 44b7b93b593371bfdddd0be0ae603f4f8720f78b Mon Sep 17 00:00:00 2001 From: Andrew Deason Date: Sat, 2 May 2020 23:54:55 -0500 Subject: [PATCH] afs: Drop GLOCK for RXAFS_GetCapabilities We are hitting the net here; we certainly should not be holding AFS_GLOCK while waiting for the server's response. Found via FreeBSD WITNESS. Change-Id: Ie727db27adaeed23ac8cff7665143bae2ce2ede8 Reviewed-on: https://gerrit.openafs.org/14181 Tested-by: BuildBot Reviewed-by: Benjamin Kaduk --- src/afs/afs_server.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/afs/afs_server.c b/src/afs/afs_server.c index e6a1d0f229..22d9bfd910 100644 --- a/src/afs/afs_server.c +++ b/src/afs/afs_server.c @@ -1520,7 +1520,9 @@ afs_GetCapabilities(struct server *ts) } /* InitCallBackStateN, triggered by our RPC, may need this */ ReleaseWriteLock(&afs_xserver); + AFS_GUNLOCK(); code = RXAFS_GetCapabilities(rxconn, &caps); + AFS_GLOCK(); ObtainWriteLock(&afs_xserver, 723); /* we forced a conn above; important we mark it down if needed */ if ((code < 0) && (code != RXGEN_OPCODE)) {