diff options
author | 2017-11-28 16:22:27 +0000 | |
---|---|---|
committer | 2017-11-28 16:22:27 +0000 | |
commit | 64a91b3ea89ecff79eac55e7462b565657016c27 (patch) | |
tree | 940c27a99b9254983d1a31f5e9fb512f2e2e4df1 /sys/kern/kern_sched.c | |
parent | The divert structure was using the port number to indicate that (diff) | |
download | wireguard-openbsd-64a91b3ea89ecff79eac55e7462b565657016c27.tar.xz wireguard-openbsd-64a91b3ea89ecff79eac55e7462b565657016c27.zip |
Raise the IPL of the sbar taskq to avoid lock order issues
with the kernel lock.
Fixes a deadlock seen by Hrvoje Popovski and dhill@.
OK mpi@, dhill@
Diffstat (limited to 'sys/kern/kern_sched.c')
-rw-r--r-- | sys/kern/kern_sched.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/kern/kern_sched.c b/sys/kern/kern_sched.c index 50c86ec3b01..54705ee5019 100644 --- a/sys/kern/kern_sched.c +++ b/sys/kern/kern_sched.c @@ -1,4 +1,4 @@ -/* $OpenBSD: kern_sched.c,v 1.45 2017/02/12 04:55:08 guenther Exp $ */ +/* $OpenBSD: kern_sched.c,v 1.46 2017/11/28 16:22:27 visa Exp $ */ /* * Copyright (c) 2007, 2008 Artur Grabowski <art@openbsd.org> * @@ -228,7 +228,7 @@ void sched_init_runqueues(void) { #ifdef MULTIPROCESSOR - sbartq = taskq_create("sbar", 1, IPL_NONE, + sbartq = taskq_create("sbar", 1, IPL_VM, TASKQ_MPSAFE | TASKQ_CANTSLEEP); if (sbartq == NULL) panic("unable to create sbar taskq"); |