]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
6.17-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 16 Oct 2025 14:53:25 +0000 (16:53 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 16 Oct 2025 14:53:25 +0000 (16:53 +0200)
added patches:
acpica-allow-to-skip-global-lock-initialization.patch

queue-6.17/acpica-allow-to-skip-global-lock-initialization.patch [new file with mode: 0644]
queue-6.17/series

diff --git a/queue-6.17/acpica-allow-to-skip-global-lock-initialization.patch b/queue-6.17/acpica-allow-to-skip-global-lock-initialization.patch
new file mode 100644 (file)
index 0000000..90e5c92
--- /dev/null
@@ -0,0 +1,54 @@
+From feb8ae81b2378b75a99c81d315602ac8918ed382 Mon Sep 17 00:00:00 2001
+From: Huacai Chen <chenhuacai@loongson.cn>
+Date: Fri, 12 Sep 2025 21:54:53 +0200
+Subject: ACPICA: Allow to skip Global Lock initialization
+
+From: Huacai Chen <chenhuacai@loongson.cn>
+
+commit feb8ae81b2378b75a99c81d315602ac8918ed382 upstream.
+
+Introduce acpi_gbl_use_global_lock, which allows to skip the Global Lock
+initialization. This is useful for systems without Global Lock (such as
+loong_arch), so as to avoid error messages during boot phase:
+
+ ACPI Error: Could not enable global_lock event (20240827/evxfevnt-182)
+ ACPI Error: No response from Global Lock hardware, disabling lock (20240827/evglock-59)
+
+Link: https://github.com/acpica/acpica/commit/463cb0fe
+Signed-off-by: Huacai Chen <chenhuacai@loongson.cn>
+Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
+Cc: Huacai Chen <chenhuacai@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ drivers/acpi/acpica/evglock.c |    4 ++++
+ include/acpi/acpixf.h         |    6 ++++++
+ 2 files changed, 10 insertions(+)
+
+--- a/drivers/acpi/acpica/evglock.c
++++ b/drivers/acpi/acpica/evglock.c
+@@ -42,6 +42,10 @@ acpi_status acpi_ev_init_global_lock_han
+               return_ACPI_STATUS(AE_OK);
+       }
++      if (!acpi_gbl_use_global_lock) {
++              return_ACPI_STATUS(AE_OK);
++      }
++
+       /* Attempt installation of the global lock handler */
+       status = acpi_install_fixed_event_handler(ACPI_EVENT_GLOBAL,
+--- a/include/acpi/acpixf.h
++++ b/include/acpi/acpixf.h
+@@ -214,6 +214,12 @@ ACPI_INIT_GLOBAL(u8, acpi_gbl_osi_data,
+ ACPI_INIT_GLOBAL(u8, acpi_gbl_reduced_hardware, FALSE);
+ /*
++ * ACPI Global Lock is mainly used for systems with SMM, so no-SMM systems
++ * (such as loong_arch) may not have and not use Global Lock.
++ */
++ACPI_INIT_GLOBAL(u8, acpi_gbl_use_global_lock, TRUE);
++
++/*
+  * Maximum timeout for While() loop iterations before forced method abort.
+  * This mechanism is intended to prevent infinite loops during interpreter
+  * execution within a host kernel.
index 039a0f0146e66107b718f5a890f171a6d41a6bc6..f95d25b2739a344179145614e9105c55ab77f793 100644 (file)
@@ -344,3 +344,4 @@ ext4-avoid-potential-buffer-over-read-in-parse_apply_sb_mount_options.patch
 ext4-fix-an-off-by-one-issue-during-moving-extents.patch
 ext4-guard-against-ea-inode-refcount-underflow-in-xattr-update.patch
 ext4-validate-ea_ino-and-size-in-check_xattrs.patch
+acpica-allow-to-skip-global-lock-initialization.patch