From: Nathan Chancellor <nathan@kernel.org>
To: "Rafael J. Wysocki" <rafael@kernel.org>
Cc: Tony Luck <tony.luck@intel.com>, Borislav Petkov <bp@alien8.de>,
Hanjun Guo <guohanjun@huawei.com>,
Mauro Carvalho Chehab <mchehab@kernel.org>,
Shuai Xue <xueshuai@linux.alibaba.com>,
Len Brown <lenb@kernel.org>,
Nick Desaulniers <nick.desaulniers+lkml@gmail.com>,
Bill Wendling <morbo@google.com>,
Justin Stitt <justinstitt@google.com>,
linux-acpi@vger.kernel.org, llvm@lists.linux.dev,
patches@lists.linux.dev
Subject: Re: [PATCH] ACPI: APEI: GHES: Disable KASAN instrumentation when compile testing with clang < 18
Date: Tue, 27 Jan 2026 14:47:11 -0700 [thread overview]
Message-ID: <20260127214711.GA3382807@ax162> (raw)
In-Reply-To: <CAJZ5v0ju+7U10_nuQMijadeFrVxUWQFYJfUyRvga9qEPdK50_Q@mail.gmail.com>
On Tue, Jan 27, 2026 at 03:37:58PM +0100, Rafael J. Wysocki wrote:
> On Thu, Jan 15, 2026 at 12:27 AM Nathan Chancellor <nathan@kernel.org> wrote:
> >
> > 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>
> > ---
> > drivers/acpi/apei/Makefile | 4 ++++
> > 1 file changed, 4 insertions(+)
> >
> > 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
> >
> > ---
>
> I'm inclined to apply this for 6.20/7.0 unless someone has any
> particular heartburn related to it.
I think taking it for next cycle is fine, I can just apply this to our
CI until it makes its way to Linus. Could you stick a
Cc: stable@vger.kernel.org
on the patch in that case so that it can go back to 6.18 after the
initial flurry of the merge window?
Cheers,
Nathan
next prev parent reply other threads:[~2026-01-27 21:47 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-01-14 23:27 [PATCH] ACPI: APEI: GHES: Disable KASAN instrumentation when compile testing with clang < 18 Nathan Chancellor
2026-01-27 14:37 ` Rafael J. Wysocki
2026-01-27 21:47 ` Nathan Chancellor [this message]
2026-01-28 20:36 ` Rafael J. Wysocki
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260127214711.GA3382807@ax162 \
--to=nathan@kernel.org \
--cc=bp@alien8.de \
--cc=guohanjun@huawei.com \
--cc=justinstitt@google.com \
--cc=lenb@kernel.org \
--cc=linux-acpi@vger.kernel.org \
--cc=llvm@lists.linux.dev \
--cc=mchehab@kernel.org \
--cc=morbo@google.com \
--cc=nick.desaulniers+lkml@gmail.com \
--cc=patches@lists.linux.dev \
--cc=rafael@kernel.org \
--cc=tony.luck@intel.com \
--cc=xueshuai@linux.alibaba.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox