* Re: Patch "ACPI: APEI: GHES: Disable KASAN instrumentation when compile testing with clang < 18" has been added to the 6.12-stable tree
[not found] <20260308164129.19119-1-sashal@kernel.org>
@ 2026-03-09 21:28 ` Nathan Chancellor
2026-03-09 22:25 ` Sasha Levin
0 siblings, 1 reply; 2+ messages in thread
From: Nathan Chancellor @ 2026-03-09 21:28 UTC (permalink / raw)
To: stable, Sasha Levin
Cc: stable-commits, Rafael J. Wysocki, Tony Luck, Borislav Petkov,
Hanjun Guo, Mauro Carvalho Chehab, Shuai Xue, Len Brown,
Nick Desaulniers, Bill Wendling, Justin Stitt
On Sun, Mar 08, 2026 at 12:41:28PM -0400, Sasha Levin wrote:
> This is a note to let you know that I've just added the patch titled
>
> ACPI: APEI: GHES: Disable KASAN instrumentation when compile testing with clang < 18
>
> to the 6.12-stable tree which can be found at:
> http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
>
> The filename of the patch is:
> acpi-apei-ghes-disable-kasan-instrumentation-when-co.patch
> and it can be found in the queue-6.12 subdirectory.
>
> If you, or anyone else, feels it should not be added to the stable tree,
> please let <stable@vger.kernel.org> know about it.
>
>
>
> commit ccd3cab8095d5c53eaf8a6598ff339ffaad6a696
> Author: Nathan Chancellor <nathan@kernel.org>
> Date: Wed Jan 14 16:27:11 2026 -0700
>
> ACPI: APEI: GHES: Disable KASAN instrumentation when compile testing with clang < 18
>
> [ Upstream commit b584bfbd7ec417f257f651cc00a90c66e31dfbf1 ]
>
> After a recent innocuous change to drivers/acpi/apei/ghes.c, building
> ARCH=arm64 allmodconfig with clang-17 or older (which has both
> CONFIG_KASAN=y and CONFIG_WERROR=y) fails with:
>
> drivers/acpi/apei/ghes.c:902:13: error: stack frame size (2768) exceeds limit (2048) in 'ghes_do_proc' [-Werror,-Wframe-larger-than]
> 902 | static void ghes_do_proc(struct ghes *ghes,
> | ^
>
> A KASAN pass that removes unneeded stack instrumentation, enabled by
> default in clang-18 [1], drastically improves stack usage in this case.
>
> To avoid the warning in the common allmodconfig case when it can break
> the build, disable KASAN for ghes.o when compile testing with clang-17
> and older. Disabling KASAN outright may hide legitimate runtime issues,
> so live with the warning in that case; the user can either increase the
> frame warning limit or disable -Werror, which they should probably do
> when debugging with KASAN anyways.
>
> Closes: https://github.com/ClangBuiltLinux/linux/issues/2148
> Link: https://github.com/llvm/llvm-project/commit/51fbab134560ece663517bf1e8c2a30300d08f1a [1]
> Signed-off-by: Nathan Chancellor <nathan@kernel.org>
> Cc: All applicable <stable@vger.kernel.org>
> Link: https://patch.msgid.link/20260114-ghes-avoid-wflt-clang-older-than-18-v1-1-9c8248bfe4f4@kernel.org
> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
> Signed-off-by: Sasha Levin <sashal@kernel.org>
>
> diff --git a/drivers/acpi/apei/Makefile b/drivers/acpi/apei/Makefile
> index 5db61dfb46915..1a0b85923cd42 100644
> --- a/drivers/acpi/apei/Makefile
> +++ b/drivers/acpi/apei/Makefile
> @@ -1,6 +1,10 @@
> # SPDX-License-Identifier: GPL-2.0
> obj-$(CONFIG_ACPI_APEI) += apei.o
> obj-$(CONFIG_ACPI_APEI_GHES) += ghes.o
> +# clang versions prior to 18 may blow out the stack with KASAN
> +ifeq ($(CONFIG_COMPILE_TEST)_$(CONFIG_CC_IS_CLANG)_$(call clang-min-version, 180000),y_y_)
> +KASAN_SANITIZE_ghes.o := n
> +endif
> obj-$(CONFIG_ACPI_APEI_PCIEAER) += ghes_helpers.o
> obj-$(CONFIG_ACPI_APEI_EINJ) += einj.o
> einj-y := einj-core.o
The backports you have taken to make this apply cleanly to 6.12
20260308164114.18890-1-sashal@kernel.org
20260308164118.18945-1-sashal@kernel.org
20260308164121.19006-1-sashal@kernel.org
20260308164125.19064-1-sashal@kernel.org
are excessive in my opinion. I think you should just address the
conflict... There is absolutely no dependency on those changes so
"Stable-dep-of" is a bit misleading.
diff --git a/drivers/acpi/apei/Makefile b/drivers/acpi/apei/Makefile
index 2c474e6477e1..346cdf0a0ef9 100644
--- a/drivers/acpi/apei/Makefile
+++ b/drivers/acpi/apei/Makefile
@@ -1,6 +1,10 @@
# SPDX-License-Identifier: GPL-2.0
obj-$(CONFIG_ACPI_APEI) += apei.o
obj-$(CONFIG_ACPI_APEI_GHES) += ghes.o
+# clang versions prior to 18 may blow out the stack with KASAN
+ifeq ($(CONFIG_COMPILE_TEST)_$(CONFIG_CC_IS_CLANG)_$(call clang-min-version, 180000),y_y_)
+KASAN_SANITIZE_ghes.o := n
+endif
obj-$(CONFIG_ACPI_APEI_EINJ) += einj.o
einj-y := einj-core.o
einj-$(CONFIG_ACPI_APEI_EINJ_CXL) += einj-cxl.o
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: Patch "ACPI: APEI: GHES: Disable KASAN instrumentation when compile testing with clang < 18" has been added to the 6.12-stable tree
2026-03-09 21:28 ` Patch "ACPI: APEI: GHES: Disable KASAN instrumentation when compile testing with clang < 18" has been added to the 6.12-stable tree Nathan Chancellor
@ 2026-03-09 22:25 ` Sasha Levin
0 siblings, 0 replies; 2+ messages in thread
From: Sasha Levin @ 2026-03-09 22:25 UTC (permalink / raw)
To: Nathan Chancellor
Cc: stable, stable-commits, Rafael J. Wysocki, Tony Luck,
Borislav Petkov, Hanjun Guo, Mauro Carvalho Chehab, Shuai Xue,
Len Brown, Nick Desaulniers, Bill Wendling, Justin Stitt
On Mon, Mar 09, 2026 at 02:28:07PM -0700, Nathan Chancellor wrote:
>On Sun, Mar 08, 2026 at 12:41:28PM -0400, Sasha Levin wrote:
>> This is a note to let you know that I've just added the patch titled
>>
>> ACPI: APEI: GHES: Disable KASAN instrumentation when compile testing with clang < 18
>>
>> to the 6.12-stable tree which can be found at:
>> http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
>>
>> The filename of the patch is:
>> acpi-apei-ghes-disable-kasan-instrumentation-when-co.patch
>> and it can be found in the queue-6.12 subdirectory.
>>
>> If you, or anyone else, feels it should not be added to the stable tree,
>> please let <stable@vger.kernel.org> know about it.
>>
>>
>>
>> commit ccd3cab8095d5c53eaf8a6598ff339ffaad6a696
>> Author: Nathan Chancellor <nathan@kernel.org>
>> Date: Wed Jan 14 16:27:11 2026 -0700
>>
>> ACPI: APEI: GHES: Disable KASAN instrumentation when compile testing with clang < 18
>>
>> [ Upstream commit b584bfbd7ec417f257f651cc00a90c66e31dfbf1 ]
>>
>> After a recent innocuous change to drivers/acpi/apei/ghes.c, building
>> ARCH=arm64 allmodconfig with clang-17 or older (which has both
>> CONFIG_KASAN=y and CONFIG_WERROR=y) fails with:
>>
>> drivers/acpi/apei/ghes.c:902:13: error: stack frame size (2768) exceeds limit (2048) in 'ghes_do_proc' [-Werror,-Wframe-larger-than]
>> 902 | static void ghes_do_proc(struct ghes *ghes,
>> | ^
>>
>> A KASAN pass that removes unneeded stack instrumentation, enabled by
>> default in clang-18 [1], drastically improves stack usage in this case.
>>
>> To avoid the warning in the common allmodconfig case when it can break
>> the build, disable KASAN for ghes.o when compile testing with clang-17
>> and older. Disabling KASAN outright may hide legitimate runtime issues,
>> so live with the warning in that case; the user can either increase the
>> frame warning limit or disable -Werror, which they should probably do
>> when debugging with KASAN anyways.
>>
>> Closes: https://github.com/ClangBuiltLinux/linux/issues/2148
>> Link: https://github.com/llvm/llvm-project/commit/51fbab134560ece663517bf1e8c2a30300d08f1a [1]
>> Signed-off-by: Nathan Chancellor <nathan@kernel.org>
>> Cc: All applicable <stable@vger.kernel.org>
>> Link: https://patch.msgid.link/20260114-ghes-avoid-wflt-clang-older-than-18-v1-1-9c8248bfe4f4@kernel.org
>> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
>> Signed-off-by: Sasha Levin <sashal@kernel.org>
>>
>> diff --git a/drivers/acpi/apei/Makefile b/drivers/acpi/apei/Makefile
>> index 5db61dfb46915..1a0b85923cd42 100644
>> --- a/drivers/acpi/apei/Makefile
>> +++ b/drivers/acpi/apei/Makefile
>> @@ -1,6 +1,10 @@
>> # SPDX-License-Identifier: GPL-2.0
>> obj-$(CONFIG_ACPI_APEI) += apei.o
>> obj-$(CONFIG_ACPI_APEI_GHES) += ghes.o
>> +# clang versions prior to 18 may blow out the stack with KASAN
>> +ifeq ($(CONFIG_COMPILE_TEST)_$(CONFIG_CC_IS_CLANG)_$(call clang-min-version, 180000),y_y_)
>> +KASAN_SANITIZE_ghes.o := n
>> +endif
>> obj-$(CONFIG_ACPI_APEI_PCIEAER) += ghes_helpers.o
>> obj-$(CONFIG_ACPI_APEI_EINJ) += einj.o
>> einj-y := einj-core.o
>
>The backports you have taken to make this apply cleanly to 6.12
>
> 20260308164114.18890-1-sashal@kernel.org
> 20260308164118.18945-1-sashal@kernel.org
> 20260308164121.19006-1-sashal@kernel.org
> 20260308164125.19064-1-sashal@kernel.org
>
>are excessive in my opinion. I think you should just address the
>conflict... There is absolutely no dependency on those changes so
>"Stable-dep-of" is a bit misleading.
ack
--
Thanks,
Sasha
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-03-09 22:25 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20260308164129.19119-1-sashal@kernel.org>
2026-03-09 21:28 ` Patch "ACPI: APEI: GHES: Disable KASAN instrumentation when compile testing with clang < 18" has been added to the 6.12-stable tree Nathan Chancellor
2026-03-09 22:25 ` Sasha Levin
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox