aboutsummaryrefslogtreecommitdiffstats
path: root/module/os
diff options
context:
space:
mode:
authorнаб <[email protected]>2022-01-19 21:33:50 +0100
committerBrian Behlendorf <[email protected]>2022-01-25 12:52:51 -0800
commita46237106cb48e7f4a1bf458d227981f291d59f0 (patch)
tree0944e3d52ce07e951a7d996b71448c80a1d39e0a /module/os
parenta9856574cffd8fac7702424cc6134c5e0b5325b5 (diff)
Linux 5.17 compat: dequeue_signal() takes a 4th argument
Linux 5.17's dequeue_signal() takes an additional enum pid_type * output argument Upstream commit 5768d8906bc23d512b1a736c1e198aa833a6daa4 ("signal: Requeue signals in the appropriate queue") Reviewed-by: Tony Hutter <[email protected]> Reviewed-by: Brian Behlendorf <[email protected]> Signed-off-by: Ahelenia Ziemiańska <[email protected]> Closes #12989
Diffstat (limited to 'module/os')
-rw-r--r--module/os/linux/spl/spl-thread.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/module/os/linux/spl/spl-thread.c b/module/os/linux/spl/spl-thread.c
index 0ba4c18c1..16d2ca1b1 100644
--- a/module/os/linux/spl/spl-thread.c
+++ b/module/os/linux/spl/spl-thread.c
@@ -188,7 +188,12 @@ issig(int why)
spin_lock_irq(&task->sighand->siglock);
int ret;
+#ifdef HAVE_DEQUEUE_SIGNAL_4ARG
+ enum pid_type __type;
+ if ((ret = dequeue_signal(task, &set, &__info, &__type)) != 0) {
+#else
if ((ret = dequeue_signal(task, &set, &__info)) != 0) {
+#endif
#ifdef HAVE_SIGNAL_STOP
spin_unlock_irq(&task->sighand->siglock);
kernel_signal_stop();