summaryrefslogtreecommitdiff
path: root/drivers/acpi/osl.c
diff options
context:
space:
mode:
authorLen Brown <len.brown@intel.com>2008-02-07 11:13:36 +0300
committerLen Brown <len.brown@intel.com>2008-02-07 11:13:36 +0300
commite5e54bc86a1fed9849b22fd736c30b23c4719046 (patch)
treec53d0d5a7d6e2806bc154f8fc1642ec7a6684ca1 /drivers/acpi/osl.c
parent70ec75c5b8e0bda7a16fb387f91e08545f379a0e (diff)
parent5229e87d59cef33539322948bd8e3b5a537f7c97 (diff)
downloadlinux-e5e54bc86a1fed9849b22fd736c30b23c4719046.tar.xz
Merge branches 'release' and 'stats' into release
Diffstat (limited to 'drivers/acpi/osl.c')
-rw-r--r--drivers/acpi/osl.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/drivers/acpi/osl.c b/drivers/acpi/osl.c
index 0c41db3075a5..3b8aef3aefe5 100644
--- a/drivers/acpi/osl.c
+++ b/drivers/acpi/osl.c
@@ -337,7 +337,15 @@ acpi_os_table_override(struct acpi_table_header * existing_table,
static irqreturn_t acpi_irq(int irq, void *dev_id)
{
- return (*acpi_irq_handler) (acpi_irq_context) ? IRQ_HANDLED : IRQ_NONE;
+ u32 handled;
+
+ handled = (*acpi_irq_handler) (acpi_irq_context);
+
+ if (handled) {
+ acpi_irq_handled++;
+ return IRQ_HANDLED;
+ } else
+ return IRQ_NONE;
}
acpi_status
@@ -346,6 +354,8 @@ acpi_os_install_interrupt_handler(u32 gsi, acpi_osd_handler handler,
{
unsigned int irq;
+ acpi_irq_stats_init();
+
/*
* Ignore the GSI from the core, and use the value in our copy of the
* FADT. It may not be the same if an interrupt source override exists