linux-brain/drivers/acpi
Hans de Goede 51c849246f ACPI / scan: Initialize status to ACPI_STA_DEFAULT
[ Upstream commit 5971b0c159 ]

Since commit 63347db0af "ACPI / scan: Use acpi_bus_get_status() to
initialize ACPI_TYPE_DEVICE devs" the status field of normal acpi_devices
gets set to 0 by acpi_bus_type_and_status() and filled with its actual
value later when acpi_add_single_object() calls acpi_bus_get_status().

This means that any acpi_match_device_ids() calls in between will always
fail with -ENOENT.

We already have a workaround for this, which temporary forces status to
ACPI_STA_DEFAULT in drivers/acpi/x86/utils.c: acpi_device_always_present()
and the next commit in this series adds another acpi_match_device_ids()
call between status being initialized as 0 and the acpi_bus_get_status()
call.

Rather then adding another workaround, this commit makes
acpi_bus_type_and_status() initialize status to ACPI_STA_DEFAULT, this is
safe to do as the only code looking at status between the initialization
and the acpi_bus_get_status() call is those acpi_match_device_ids() calls.

Note this does mean that we need to (re)set status to 0 in case the
acpi_bus_get_status() call fails.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-09-15 09:42:59 +02:00
..
acpica ACPICA: acpi: acpica: fix acpi operand cache leak in nseval.c 2018-05-30 07:50:45 +02:00
apei ACPI: APEI / ERST: Fix missing error handling in erst_reader() 2017-12-29 17:42:57 +01:00
arm64 ACPI: Add new IORT functions to support MSI domain handling 2016-09-12 20:32:40 +01:00
dptf ACPI / platform: Add support for build-in properties 2016-11-10 00:30:29 +01:00
nfit nfit: fix unchecked dereference in acpi_nfit_ctl 2018-08-24 13:12:38 +02:00
pmic ACPI / PMIC: xpower: Fix power_table addresses 2018-03-24 11:00:18 +01:00
Kconfig TTY/Serial patches for 4.9-rc1 2016-10-03 20:11:49 -07:00
Makefile ACPI: Fix incompatibility with mcount-based function graph tracing 2017-04-08 09:30:34 +02:00
ac.c ACPI: Remove FSF mailing addresses 2015-07-08 02:27:32 +02:00
acpi_amba.c ACPI / amba: Remove CLK_IS_ROOT 2016-04-27 23:42:57 +02:00
acpi_apd.c Merge branch 'device-properties' 2016-11-11 23:23:02 +01:00
acpi_cmos_rtc.c char/genrtc: x86: remove remnants of asm/rtc.h 2016-06-04 00:20:07 +02:00
acpi_configfs.c ACPI: Rename configfs.c to acpi_configfs.c to prevent link error 2016-07-11 15:13:36 +02:00
acpi_dbg.c ACPI / debugger: Fix regression introduced by IS_ERR_VALUE() removal 2016-07-05 23:02:34 +02:00
acpi_extlog.c ACPI and power management updates for 3.17-rc1 2014-08-06 20:34:19 -07:00
acpi_ipmi.c ACPI: Remove FSF mailing addresses 2015-07-08 02:27:32 +02:00
acpi_lpat.c ACPI / lpat: make it explicitly non-modular 2016-07-16 03:08:10 +02:00
acpi_lpss.c ACPI / LPSS: Add missing prv_offset setting for byt/cht PWM devices 2018-08-15 18:14:42 +02:00
acpi_memhotplug.c ACPI: Remove FSF mailing addresses 2015-07-08 02:27:32 +02:00
acpi_pad.c ACPI: acpi_pad: Fix memory leak in power saving threads 2018-05-30 07:50:43 +02:00
acpi_platform.c ACPI: Do not create a platform_device for IOAPIC/IOxAPIC 2017-04-08 09:30:34 +02:00
acpi_pnp.c ACPI / PNP: constify device IDs 2016-01-04 22:10:30 +01:00
acpi_processor.c Revert "x86/acpi: Set persistent cpuid <-> nodeid mapping when booting" 2017-12-20 10:07:26 +01:00
acpi_video.c ACPI / video: Only default only_lcd to true on Win8-ready _desktops_ 2018-04-29 11:32:03 +02:00
acpi_watchdog.c ACPI / watchdog: Fix off-by-one error at resource assignment 2018-03-28 18:39:22 +02:00
battery.c ACPI / battery: Add sysfs representation after checking _BST 2016-08-31 00:35:16 +02:00
battery.h ACPI / battery: move some ACPI_BATTERY_* definitions to header 2014-03-19 01:57:46 +01:00
bgrt.c drivers/acpi: make bgrt driver explicitly non-modular 2016-03-09 23:46:07 +01:00
blacklist.c ACPI / blacklist: Make Dell Latitude 3350 ethernet work 2017-03-22 12:43:38 +01:00
bus.c Revert "x86/acpi: Set persistent cpuid <-> nodeid mapping when booting" 2017-12-20 10:07:26 +01:00
button.c Revert "ACPI / button: Change default behavior to lid_init_state=open" 2017-06-07 12:07:47 +02:00
cm_sbs.c ACPI: Remove FSF mailing addresses 2015-07-08 02:27:32 +02:00
container.c ACPI: Remove FSF mailing addresses 2015-07-08 02:27:32 +02:00
cppc_acpi.c ACPI / CPPC: set an error code on probe error path 2017-01-19 20:18:07 +01:00
custom_method.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
debugfs.c ACPI: fix acpi_debugfs_init prototype 2015-08-07 02:55:18 +02:00
device_pm.c ACPI / PM: Export acpi_device_fix_up_power() 2016-05-20 15:54:01 +02:00
device_sysfs.c ACPI / bus: Leave modalias empty for devices which are not present 2018-02-03 17:05:36 +01:00
dock.c ACPI / dock: make dock explicitly non-modular 2016-07-16 03:08:08 +02:00
ec.c ACPI: EC: Fix debugfs_create_*() usage 2018-04-13 19:48:10 +02:00
ec_sys.c ACPI: EC: Fix debugfs_create_*() usage 2018-04-13 19:48:10 +02:00
event.c netlink: make nlmsg_end() and genlmsg_end() void 2015-01-18 01:03:45 -05:00
evged.c ACPI / GED: make evged.c explicitly non-modular 2016-05-09 22:59:25 +02:00
fan.c ACPI / fan: Fix error reading cur_state 2016-10-10 02:20:43 +02:00
glue.c ACPI / scan: Prefer devices without _HID/_CID for _ADR matching 2018-01-31 12:55:52 +01:00
gsi.c ACPI: Rename acpi_gsi_get_irq_type to acpi_dev_get_irq_type and export symbol 2016-01-01 03:20:25 +01:00
hed.c ACPI: Remove FSF mailing addresses 2015-07-08 02:27:32 +02:00
internal.h ACPI: EC: Fix debugfs_create_*() usage 2018-04-13 19:48:10 +02:00
ioapic.c ACPI: ioapic: Clear on-stack resource before using it 2017-08-30 10:21:55 +02:00
numa.c acpi, numa: fix pxm to online numa node associations 2018-03-28 18:39:22 +02:00
nvs.c ACPI: Clean up acpi_os_map/unmap_memory() to eliminate __iomem. 2014-05-27 18:13:08 +02:00
osi.c ACPI / osi: Collect _OSI handling into one single file 2016-05-05 00:13:53 +02:00
osl.c acpi_os_vprintf: Use printk_get_level() to avoid unnecessary KERN_CONT 2016-10-12 21:46:37 +02:00
pci_irq.c ACPI / PCI: fix GIC irq model default PCI IRQ polarity 2016-09-10 02:50:50 +02:00
pci_link.c ACPI/PCI: pci_link: Include PIRQ_PENALTY_PCI_USING for ISA IRQs 2016-10-24 14:18:14 +02:00
pci_mcfg.c PCI/ACPI: Add generic MCFG table handling 2016-06-10 18:27:59 -05:00
pci_root.c PCI: pciehp: Request control of native hotplug only if supported 2018-08-03 07:55:19 +02:00
pci_slot.c ACPI / PCI: make pci_slot explicitly non-modular 2016-07-16 03:05:29 +02:00
power.c ACPI / power: Delay turning off unused power resources after suspend 2018-03-24 11:00:20 +01:00
proc.c ACPI: change acpi_sleep_proc_init() to return void 2015-09-15 03:03:15 +02:00
processor_core.c Revert "x86/acpi: Set persistent cpuid <-> nodeid mapping when booting" 2017-12-20 10:07:26 +01:00
processor_driver.c ACPI/processor: Replace racy task affinity logic 2018-03-24 11:00:09 +01:00
processor_idle.c nmi_backtrace: generate one-line reports for idle cpus 2016-10-07 18:46:30 -07:00
processor_pdc.c ACPI / processor: Introduce invalid_logical_cpuid() 2015-05-13 23:28:14 +02:00
processor_perflib.c ACPI: processor_perflib: Do not send _PPC change notification if not ready 2018-05-30 07:50:24 +02:00
processor_thermal.c ACPI: Remove FSF mailing addresses 2015-07-08 02:27:32 +02:00
processor_throttling.c ACPI/processor: Replace racy task affinity logic 2018-03-24 11:00:09 +01:00
property.c ACPI / property: Allow holes in reference properties 2016-10-11 22:44:00 +02:00
reboot.c
resource.c PCI: ACPI: IA64: fix IO port generic range check 2016-03-22 23:07:49 +01:00
sbs.c ACPI / SBS: fix inconsistent indenting inside if statement 2016-01-04 22:14:27 +01:00
sbshc.c ACPI: sbshc: remove raw pointer from printk() message 2018-02-17 13:21:20 +01:00
sbshc.h
scan.c ACPI / scan: Initialize status to ACPI_STA_DEFAULT 2018-09-15 09:42:59 +02:00
sleep.c ACPI / PM: save NVS memory for ASUS 1025C laptop 2018-08-22 07:47:15 +02:00
sleep.h ACPI / power: Delay turning off unused power resources after suspend 2018-03-24 11:00:20 +01:00
spcr.c ACPI: parse SPCR and enable matching console 2016-09-28 17:46:46 +02:00
sysfs.c ACPI / sysfs: Provide quirk mechanism to prevent GPE flooding 2017-04-12 12:41:18 +02:00
tables.c ACPI / tables: Remove duplicated include from tables.c 2016-09-17 01:03:32 +02:00
thermal.c thermal: Enhance thermal_zone_device_update for events 2016-09-27 14:35:21 +08:00
utils.c nfit: make DIMM DSMs optional 2016-07-19 12:32:39 -07:00
video_detect.c ACPI / video: Add quirk to force acpi-video backlight on Samsung 670Z5E 2018-04-24 09:34:10 +02:00
wakeup.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00