summaryrefslogtreecommitdiffstats
path: root/sys/dev/acpica
diff options
context:
space:
mode:
authornjl <njl@FreeBSD.org>2004-01-03 02:01:39 +0000
committernjl <njl@FreeBSD.org>2004-01-03 02:01:39 +0000
commit5b9bbee08a34c013ab6b7b6432dd37835012f868 (patch)
treef93cf1a0f1523d76817a1bb06418ef29cb5029dc /sys/dev/acpica
parent6bccc23255928978735058e54187dd3efa32b3a6 (diff)
downloadFreeBSD-src-5b9bbee08a34c013ab6b7b6432dd37835012f868.zip
FreeBSD-src-5b9bbee08a34c013ab6b7b6432dd37835012f868.tar.gz
Delete the region we are passed if that is the requested operation.
This should fix the problem with removing an address space handler although we don't currently use that capability so it's unlikely anyone saw this problem.
Diffstat (limited to 'sys/dev/acpica')
-rw-r--r--sys/dev/acpica/acpi_ec.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/sys/dev/acpica/acpi_ec.c b/sys/dev/acpica/acpi_ec.c
index c0a4207..1ad4ccc 100644
--- a/sys/dev/acpica/acpi_ec.c
+++ b/sys/dev/acpica/acpi_ec.c
@@ -697,9 +697,13 @@ EcSpaceSetup(ACPI_HANDLE Region, UINT32 Function, void *Context,
ACPI_FUNCTION_TRACE((char *)(uintptr_t)__func__);
/*
- * Just pass the context through, there's nothing to do here.
+ * If deactivating a region, always set the output to NULL. Otherwise,
+ * just pass the context through.
*/
- *RegionContext = Context;
+ if (Function == ACPI_REGION_DEACTIVATE)
+ *RegionContext = NULL;
+ else
+ *RegionContext = Context;
return_ACPI_STATUS (AE_OK);
}
OpenPOWER on IntegriCloud