summaryrefslogtreecommitdiffstats
path: root/sys/dev/pci/drm/drm_linux.c
diff options
context:
space:
mode:
authorvisa <visa@openbsd.org>2019-11-30 11:19:17 +0000
committervisa <visa@openbsd.org>2019-11-30 11:19:17 +0000
commitde60e9182e3ea7b387cda2ea58c0a4cb67e2fb14 (patch)
tree0d9cc081abbdfb023b4de31f99779e04103d947a /sys/dev/pci/drm/drm_linux.c
parentNot being able to create a resolver is not a fatal condition in unwind, (diff)
downloadwireguard-openbsd-de60e9182e3ea7b387cda2ea58c0a4cb67e2fb14.tar.xz
wireguard-openbsd-de60e9182e3ea7b387cda2ea58c0a4cb67e2fb14.zip
Move kernel locking inside the sleep machinery. This enables calling
rwsleep(9) with PCATCH and rw_enter(9) with RW_INTR without the kernel lock. In addition, now tsleep(9) with PCATCH should be safe to use without the kernel lock if the sleep is purely time-based. Tested by anton@, cheloha@, chris@ OK anton@, cheloha@
Diffstat (limited to 'sys/dev/pci/drm/drm_linux.c')
-rw-r--r--sys/dev/pci/drm/drm_linux.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/dev/pci/drm/drm_linux.c b/sys/dev/pci/drm/drm_linux.c
index a53230091f0..ffd8ded926d 100644
--- a/sys/dev/pci/drm/drm_linux.c
+++ b/sys/dev/pci/drm/drm_linux.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: drm_linux.c,v 1.50 2019/10/23 10:17:40 jsg Exp $ */
+/* $OpenBSD: drm_linux.c,v 1.51 2019/11/30 11:19:17 visa Exp $ */
/*
* Copyright (c) 2013 Jonathan Gray <jsg@openbsd.org>
* Copyright (c) 2015, 2016 Mark Kettenis <kettenis@openbsd.org>
@@ -91,7 +91,7 @@ schedule_timeout(long timeout)
sleep_setup(&sls, sch_ident, sch_priority, "schto");
if (timeout != MAX_SCHEDULE_TIMEOUT)
sleep_setup_timeout(&sls, timeout);
- sleep_setup_signal(&sls, sch_priority);
+ sleep_setup_signal(&sls);
wait = (sch_proc == curproc && timeout > 0);