linux/drivers/acpi
Lan Tianyu f3ca416452 ACPI / processor: Rework processor throttling with work_on_cpu()
acpi_processor_set_throttling() uses set_cpus_allowed_ptr() to make
sure that the (struct acpi_processor)->acpi_processor_set_throttling()
callback will run on the right CPU.  However, the function may be
called from a worker thread already bound to a different CPU in which
case that won't work.

Make acpi_processor_set_throttling() use work_on_cpu() as appropriate
instead of abusing set_cpus_allowed_ptr().

Reported-and-tested-by: Jiri Olsa <jolsa@redhat.com>
Signed-off-by: Lan Tianyu <tianyu.lan@intel.com>
Cc: All applicable <stable@vger.kernel.org>
[rjw: Changelog]
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2014-02-27 00:21:05 +01:00
..
acpica ACPICA: Remove bool usage from ACPICA. 2014-01-27 23:59:08 +01:00
apei ACPI and power management updates for 3.14-rc1 2014-01-24 15:51:02 -08:00
ac.c ACPI / AC: fix AC driver compile error when CONFIG_PM_SLEEP is undefined 2014-02-13 15:13:44 +01:00
acpi_cmos_rtc.c ACPI: Add CMOS RTC Operation Region handler support 2013-06-27 21:35:37 +02:00
acpi_extlog.c ACPI and power management updates for 3.14-rc1 2014-01-24 15:51:02 -08:00
acpi_ipmi.c ACPI / IPMI: Cleanup coding styles 2013-09-30 19:46:13 +02:00
acpi_lpss.c Revert "ACPI: Add BayTrail SoC GPIO and LPSS ACPI IDs" 2014-01-18 14:04:58 +01:00
acpi_memhotplug.c ACPI / memhotplug: add parameter to disable memory hotplug 2014-01-16 01:43:49 +01:00
acpi_pad.c ACPI and power management updates for 3.14-rc1 2014-01-24 15:51:02 -08:00
acpi_platform.c ACPI / driver core: Store an ACPI device pointer in struct acpi_dev_node 2013-11-14 23:14:43 +01:00
acpi_processor.c Merge branches 'acpi-processor', 'acpi-hotplug', 'acpi-init', 'acpi-pm' and 'acpica' 2014-01-29 11:47:18 +01:00
battery.c ACPI / battery: fix battery driver compile error when CONFIG_PM_SLEEP is undefined 2014-02-13 15:13:44 +01:00
bgrt.c acpi: bgrt: fix build error due to attribute change 2013-08-22 08:34:39 -07:00
blacklist.c Revert "ACPI: Blacklist Win8 OSI for some HP laptop 2013 models" 2014-02-20 01:33:40 +01:00
bus.c Merge branches 'acpi-processor', 'acpi-hotplug', 'acpi-init', 'acpi-pm' and 'acpica' 2014-01-29 11:47:18 +01:00
button.c ACPI / button: fix button driver compile error when CONFIG_PM_SLEEP is undefined 2014-02-13 15:13:44 +01:00
container.c ACPI / container: Fix error code path in container_device_attach() 2014-02-12 14:55:16 +01:00
custom_method.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
debugfs.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
device_pm.c Merge branches 'acpi-processor', 'acpi-hotplug', 'acpi-init', 'acpi-pm' and 'acpica' 2014-01-29 11:47:18 +01:00
dock.c ACPI / dock: Make 'docked' sysfs attribute work as documented 2014-02-15 01:29:06 +01:00
ec_sys.c ACPI / EC: Mark the function acpi_ec_add_debugfs() as static in ec_sys.c 2014-01-06 00:13:22 +01:00
ec.c Merge branches 'acpi-gpe', 'acpi-video', 'acpi-thermal', 'acpi-processor', 'acpi-sleep' 2014-01-12 23:46:55 +01:00
event.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
fan.c ACPI / fan: fix fan driver compile error when CONFIG_PM_SLEEP is undefined 2014-02-13 15:13:44 +01:00
glue.c ACPI / bind: Move acpi_get_child() to drivers/ide/ide-acpi.c 2013-12-07 01:05:50 +01:00
hed.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
internal.h Merge branch 'acpi-hotplug' 2014-01-12 23:45:04 +01:00
Kconfig x86/efi: Don't select EFI from certain special ACPI drivers 2013-12-19 21:32:46 +01:00
Makefile ACPI and power management updates for 3.13-rc1 2013-11-14 13:41:48 +09:00
numa.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
nvs.c ACPI / NVS: Include appropriate header file in nvs.c 2014-01-06 00:13:22 +01:00
osl.c Merge branch 'acpi-hotplug' 2014-01-12 23:45:04 +01:00
pci_irq.c ACPI / PCI: Fix memory leak in acpi_pci_irq_enable() 2014-02-18 15:47:23 +01:00
pci_link.c ACPI / PCI: Include appropriate header file in pci_link.c 2014-01-06 00:13:22 +01:00
pci_root.c ACPI and power management updates for 3.14-rc1 2014-01-24 15:51:02 -08:00
pci_slot.c ACPI / PCI: Include appropriate header file in pci_slot.c 2014-01-06 00:13:22 +01:00
power.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
proc.c ACPI / proc: remove unneeded NULL check 2014-02-05 01:06:21 +01:00
processor_core.c Merge branches 'acpi-processor', 'acpi-hotplug', 'acpi-init', 'acpi-pm' and 'acpica' 2014-01-29 11:47:18 +01:00
processor_driver.c ACPI / processor: use ACPI_COMPANION() to get ACPI device 2013-12-07 01:41:01 +01:00
processor_idle.c ACPI and power management updates for 3.14-rc1 2014-01-24 15:51:02 -08:00
processor_perflib.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
processor_thermal.c ACPI: correct minor typos 2013-12-07 01:38:45 +01:00
processor_throttling.c ACPI / processor: Rework processor throttling with work_on_cpu() 2014-02-27 00:21:05 +01:00
reboot.c
resource.c ACPI: introduce helper function acpi_has_method() 2013-07-15 01:33:10 +02:00
sbs.c Merge branches 'acpi-pm' and 'acpi-video' 2014-02-21 01:28:12 +01:00
sbshc.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
sbshc.h
scan.c ACPI / hotplug: Fix panic on eject to ejected device 2014-02-05 12:14:43 +01:00
sleep.c Merge branches 'acpi-gpe', 'acpi-video', 'acpi-thermal', 'acpi-processor', 'acpi-sleep' 2014-01-12 23:46:55 +01:00
sleep.h
sysfs.c Merge branches 'acpi-processor', 'acpi-hotplug', 'acpi-init', 'acpi-pm' and 'acpica' 2014-01-29 11:47:18 +01:00
tables.c ACPI / tables: Return proper error codes from acpi_table_parse() and fix comment. 2014-01-06 12:33:06 +01:00
thermal.c ACPI / thermal: fix thermal driver compile error when CONFIG_PM_SLEEP is undefined 2014-02-13 15:13:45 +01:00
utils.c ACPI / utils: remove a pointless NULL check 2014-02-05 01:05:24 +01:00
video_detect.c ACPI / video: Add systems that should favour native backlight interface 2014-02-20 01:33:40 +01:00
video.c ACPI / video: Add systems that should favour native backlight interface 2014-02-20 01:33:40 +01:00
wakeup.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00