summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormarkj <markj@FreeBSD.org>2016-06-23 19:24:38 +0000
committermarkj <markj@FreeBSD.org>2016-06-23 19:24:38 +0000
commit8ac07d0f7954b3cb4b8df478294c9110dab312d8 (patch)
treed35520969e8d7f25e4799b44e25a8071d1b75a80
parent70d8061f8ef743b1f543c7337d36cbef7fe46ea6 (diff)
downloadFreeBSD-src-8ac07d0f7954b3cb4b8df478294c9110dab312d8.zip
FreeBSD-src-8ac07d0f7954b3cb4b8df478294c9110dab312d8.tar.gz
Use M_NOWAIT when allocating memory for the ACPI wakeup handler.
If the allocation attempt fails, we may otherwise VM_WAIT after a failed attempt to reclaim contiguous memory in the requested range. After r297466, this results in the thread going to sleep, causing a hang during boot. Reviewed by: jkim, kib Approved by: re (gjb) Sponsored by: EMC / Isilon Storage Division Differential Revision: https://reviews.freebsd.org/D6945
-rw-r--r--sys/x86/acpica/acpi_wakeup.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/x86/acpica/acpi_wakeup.c b/sys/x86/acpica/acpi_wakeup.c
index e05d542..869f2eb 100644
--- a/sys/x86/acpica/acpi_wakeup.c
+++ b/sys/x86/acpica/acpi_wakeup.c
@@ -322,7 +322,7 @@ acpi_alloc_wakeup_handler(void)
* page-aligned.
*/
wakeaddr = contigmalloc((ACPI_PAGETABLES + 1) * PAGE_SIZE, M_DEVBUF,
- M_WAITOK, 0x500, 0xa0000, PAGE_SIZE, 0ul);
+ M_NOWAIT, 0x500, 0xa0000, PAGE_SIZE, 0ul);
if (wakeaddr == NULL) {
printf("%s: can't alloc wake memory\n", __func__);
return (NULL);
OpenPOWER on IntegriCloud