From: Qiushi Wu <wu000...@umn.edu>

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 <wu000...@umn.edu>
---
 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

Reply via email to