summaryrefslogtreecommitdiffstats
path: root/drivers/acpi/Kconfig
diff options
context:
space:
mode:
authorAaron Lu <aaron.lu@intel.com>2013-04-25 04:47:49 +0200
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2013-04-25 12:53:19 +0200
commit91e13aa37023437c260c85a3f17308052bbfbfa2 (patch)
treec867075f3975ca0d3611e99c5be6f102da55f326 /drivers/acpi/Kconfig
parentACPI: Fix wrong parameter passed to memblock_reserve (diff)
downloadlinux-91e13aa37023437c260c85a3f17308052bbfbfa2.tar.xz
linux-91e13aa37023437c260c85a3f17308052bbfbfa2.zip
ACPI: video: correct acpi_video_bus_add error processing
acpi_video_bus_get_devices() may fail due to some video output device doesn't have the _ADR method, and in this case, the error processing is to simply free the video structure in acpi_video_bus_add(), while leaving those already registered video output devices in the wild, which means for some video output device, we have already registered a backlight interface and installed a notification handler for it. So it can happen when user is using this system, on hotkey pressing, the notification handler will send a keycode through a non-existing input device, causing kernel freeze. To solve this problem, free all those already registered video output devices once something goes wrong in acpi_video_bus_get_devices(), so that no wild backlight interfaces and notification handlers exist. References: https://bugzilla.kernel.org/show_bug.cgi?id=51731 Reported-and-tested-by: <i-tek@web.de> Signed-off-by: Aaron Lu <aaron.lu@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/acpi/Kconfig')
0 files changed, 0 insertions, 0 deletions