summaryrefslogtreecommitdiffstats
path: root/drivers/acpi/system.c
diff options
context:
space:
mode:
authorAlexey Starikovskiy <astarikovskiy@suse.de>2008-10-25 19:48:46 +0200
committerLen Brown <len.brown@intel.com>2008-11-12 00:35:42 +0100
commit0b7084ac67fb84f0cf2f8bc02d7e0dea8521dd2d (patch)
tree0a619ac7a700543e6ba69aa5a568e5678ec0603d /drivers/acpi/system.c
parentACPI: EC: restart failed command (diff)
downloadlinux-0b7084ac67fb84f0cf2f8bc02d7e0dea8521dd2d.tar.xz
linux-0b7084ac67fb84f0cf2f8bc02d7e0dea8521dd2d.zip
ACPICA: Use spinlock for acpi_{en|dis}able_gpe
Disabling gpe might interfere with gpe detection/handling, thus producing "interrupt not handled" errors. Ironically, disabling of GPE from interrupt context is already under spinlock, so only userspace needs to start using it. Signed-off-by: Alexey Starikovskiy <astarikovskiy@suse.de> Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers/acpi/system.c')
-rw-r--r--drivers/acpi/system.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/acpi/system.c b/drivers/acpi/system.c
index 1d74171b7940..11995b612ad7 100644
--- a/drivers/acpi/system.c
+++ b/drivers/acpi/system.c
@@ -394,10 +394,10 @@ static ssize_t counter_set(struct kobject *kobj,
if (index < num_gpes) {
if (!strcmp(buf, "disable\n") &&
(status & ACPI_EVENT_FLAG_ENABLED))
- result = acpi_disable_gpe(handle, index, ACPI_NOT_ISR);
+ result = acpi_disable_gpe(handle, index);
else if (!strcmp(buf, "enable\n") &&
!(status & ACPI_EVENT_FLAG_ENABLED))
- result = acpi_enable_gpe(handle, index, ACPI_NOT_ISR);
+ result = acpi_enable_gpe(handle, index);
else if (!strcmp(buf, "clear\n") &&
(status & ACPI_EVENT_FLAG_SET))
result = acpi_clear_gpe(handle, index, ACPI_NOT_ISR);