[PATCH V4] ACPI / GED: unregister interrupts during shutdown
From: rafael@kernel.org (Rafael J. Wysocki)
Date: 2017-12-19 01:42:55
Also in:
linux-acpi, linux-arm-msm, lkml
From: rafael@kernel.org (Rafael J. Wysocki)
Date: 2017-12-19 01:42:55
Also in:
linux-acpi, linux-arm-msm, lkml
On Wed, Dec 13, 2017 at 1:37 AM, Sinan Kaya [off-list ref] wrote:
Some GED interrupts could be pending by the time we are doing a reboot. Even though GED driver uses devm_request_irq() to register the interrupt handler, the handler is not being freed on time during a shutdown since the driver is missing a shutdown callback. If the ACPI handler is no longer available, this causes an interrupt storm and delays shutdown. 1. Don't use devm family of functions for IRQ registration/free 2. Keep track of the events since free_irq() requires the dev_id parameter passed into the request_irq() function. 3. Call free_irq() on both remove and shutdown explicitly. Signed-off-by: Sinan Kaya <redacted>
Applied, thanks!