diff options
author | Eric Ren <zren@suse.com> | 2015-10-14 23:28:26 +0800 |
---|---|---|
committer | David Teigland <teigland@redhat.com> | 2015-11-03 10:38:22 -0600 |
commit | a6b1533e9a57d76cd3d9b7649d29ac604b1874b8 (patch) | |
tree | bd6a322b87c9e3db8728035a51cf72b9dbd2571b /fs/dlm | |
parent | 7379047d5585187d1288486d4627873170d0005a (diff) | |
download | lwn-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.c | 2 |
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); |