summaryrefslogtreecommitdiff
path: root/fs/dlm
diff options
context:
space:
mode:
authorEric Ren <zren@suse.com>2015-10-14 23:28:26 +0800
committerDavid Teigland <teigland@redhat.com>2015-11-03 10:38:22 -0600
commita6b1533e9a57d76cd3d9b7649d29ac604b1874b8 (patch)
treebd6a322b87c9e3db8728035a51cf72b9dbd2571b /fs/dlm
parent7379047d5585187d1288486d4627873170d0005a (diff)
downloadlwn-a6b1533e9a57d76cd3d9b7649d29ac604b1874b8.tar.gz
lwn-a6b1533e9a57d76cd3d9b7649d29ac604b1874b8.zip
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>
Diffstat (limited to 'fs/dlm')
-rw-r--r--fs/dlm/plock.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/dlm/plock.c b/fs/dlm/plock.c
index 5532f097f6da..88f103650448 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);