diff options
author | 2013-04-18 18:30:41 +0000 | |
---|---|---|
committer | 2013-04-18 18:30:41 +0000 | |
commit | 24437aa1dac7d51817d9fa6a8c6964719153522e (patch) | |
tree | 67528e6efecee93313dc75ccc08573409c8df06a /sys/dev/acpi/acpi.c | |
parent | - use FD_CLOEXEC instead of 1 (diff) | |
download | wireguard-openbsd-24437aa1dac7d51817d9fa6a8c6964719153522e.tar.xz wireguard-openbsd-24437aa1dac7d51817d9fa6a8c6964719153522e.zip |
pin the acpi thread to the BSP, because AML and SMI cannot be trusted. I
was certain we were doing this already, but it turns out no...
Diffstat (limited to 'sys/dev/acpi/acpi.c')
-rw-r--r-- | sys/dev/acpi/acpi.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/dev/acpi/acpi.c b/sys/dev/acpi/acpi.c index 0690a46cb8b..603122a5f7e 100644 --- a/sys/dev/acpi/acpi.c +++ b/sys/dev/acpi/acpi.c @@ -1,4 +1,4 @@ -/* $OpenBSD: acpi.c,v 1.242 2012/12/24 19:41:14 guenther Exp $ */ +/* $OpenBSD: acpi.c,v 1.243 2013/04/18 18:30:41 deraadt Exp $ */ /* * Copyright (c) 2005 Thorsten Lockert <tholo@sigmasoft.com> * Copyright (c) 2005 Jordan Hargrave <jordan@openbsd.org> @@ -2151,6 +2151,9 @@ acpi_thread(void *arg) extern int aml_busy; int s; + /* AML/SMI cannot be trusted -- only run on the BSP */ + sched_peg_curproc(&cpu_info_primary); + rw_enter_write(&sc->sc_lck); /* |