[PATCH 2/2] orangefs: fix double-unlock issue in service_operation().

From: wu000273
Date: Sat May 23 2020 - 00:36:03 EST


From: Qiushi Wu <wu000273@xxxxxxx>

spin_unlock(&op->lock) is called before calling wake_up_interruptible().
But spin_unlock() was called again after a call of the function
"wait_for_matching_downcall" failed. Fix this issue by remove
the second spin_unlock().

Signed-off-by: Qiushi Wu <wu000273@xxxxxxx>
---
fs/orangefs/waitqueue.c | 1 -
1 file changed, 1 deletion(-)

diff --git a/fs/orangefs/waitqueue.c b/fs/orangefs/waitqueue.c
index beafc33d57be..3981507ad920 100644
--- a/fs/orangefs/waitqueue.c
+++ b/fs/orangefs/waitqueue.c
@@ -152,7 +152,6 @@ int service_operation(struct orangefs_kernel_op_s *op,

/* got matching downcall; make sure status is in errno format */
if (!ret) {
- spin_unlock(&op->lock);
op->downcall.status =
orangefs_normalize_to_errno(op->downcall.status);
ret = op->downcall.status;
--
2.17.1