From: Eric Ren <zren@suse.com>
Date: Wed, 14 Oct 2015 15:28:26 +0000 (+0800)
Subject: dlm: make posix locks interruptible
X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=a6b1533e9a57;p=linux.git

dlm: make posix locks interruptible

Replace wait_event_killable with wait_event_interruptible
so that a program waiting for a posix lock can be
interrupted by a signal.  With the killable version,
a program was not interruptible by a signal if it
had a signal handler set for it, overriding the default
action of terminating the process.

Signed-off-by: Eric Ren <zren@suse.com>
Signed-off-by: David Teigland <teigland@redhat.com>
---

diff --git a/fs/dlm/plock.c b/fs/dlm/plock.c
index 5532f097f6dac..88f1036504488 100644
--- a/fs/dlm/plock.c
+++ b/fs/dlm/plock.c
@@ -145,7 +145,7 @@ int dlm_posix_lock(dlm_lockspace_t *lockspace, u64 number, struct file *file,
 	send_op(op);
 
 	if (xop->callback == NULL) {
-		rv = wait_event_killable(recv_wq, (op->done != 0));
+		rv = wait_event_interruptible(recv_wq, (op->done != 0));
 		if (rv == -ERESTARTSYS) {
 			log_debug(ls, "dlm_posix_lock: wait killed %llx",
 				  (unsigned long long)number);