Commit 1d4590f5 authored by Linus Torvalds's avatar Linus Torvalds

Merge tag 'acpi-5.15-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm

Pull ACPI fixes from Rafael Wysocki:
 "These fix two regressions, one related to ACPI power resources
  management and one that broke ACPI tools compilation.

  Specifics:

   - Stop turning off unused ACPI power resources in an unknown state to
     address a regression introduced during the 5.14 cycle (Rafael
     Wysocki).

   - Fix an ACPI tools build issue introduced recently when the minimal
     stdarg.h was added (Miguel Bernal Marin)"

* tag 'acpi-5.15-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
  ACPI: PM: Do not turn off power resources in unknown state
  ACPI: tools: fix compilation error
parents cd82c4a7 7a748900
...@@ -1035,13 +1035,8 @@ void acpi_turn_off_unused_power_resources(void) ...@@ -1035,13 +1035,8 @@ void acpi_turn_off_unused_power_resources(void)
list_for_each_entry_reverse(resource, &acpi_power_resource_list, list_node) { list_for_each_entry_reverse(resource, &acpi_power_resource_list, list_node) {
mutex_lock(&resource->resource_lock); mutex_lock(&resource->resource_lock);
/*
* Turn off power resources in an unknown state too, because the
* platform firmware on some system expects the OS to turn off
* power resources without any users unconditionally.
*/
if (!resource->ref_count && if (!resource->ref_count &&
resource->state != ACPI_POWER_RESOURCE_STATE_OFF) { resource->state == ACPI_POWER_RESOURCE_STATE_ON) {
acpi_handle_debug(resource->device.handle, "Turning OFF\n"); acpi_handle_debug(resource->device.handle, "Turning OFF\n");
__acpi_power_off(resource); __acpi_power_off(resource);
} }
......
...@@ -22,9 +22,14 @@ typedef __builtin_va_list va_list; ...@@ -22,9 +22,14 @@ typedef __builtin_va_list va_list;
#define va_arg(v, l) __builtin_va_arg(v, l) #define va_arg(v, l) __builtin_va_arg(v, l)
#define va_copy(d, s) __builtin_va_copy(d, s) #define va_copy(d, s) __builtin_va_copy(d, s)
#else #else
#ifdef __KERNEL__
#include <linux/stdarg.h> #include <linux/stdarg.h>
#endif #else
#endif /* Used to build acpi tools */
#include <stdarg.h>
#endif /* __KERNEL__ */
#endif /* ACPI_USE_BUILTIN_STDARG */
#endif /* ! va_arg */
#define ACPI_INLINE __inline__ #define ACPI_INLINE __inline__
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment