[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20240429220756.979347-2-elsk@google.com>
Date: Mon, 29 Apr 2024 22:07:56 +0000
From: Yifan Hong <elsk@...gle.com>
To: Yifan Hong <elsk@...gle.com>
Cc: kernel-team@...roid.com, linux-kernel@...r.kernel.org
Subject: [PATCH] kernel/configs: Disable LTO on kernel/configs.o
This solves an incremental
build issue that, when a config changes, config_data
and config_data.gz is rebuilt, but because the
thinlto-cache cannot be updated, the config is not
reflected in the final vmlinux binary.
The issue is described in
https://github.com/ClangBuiltLinux/linux/issues/2021.
Signed-off-by: Yifan Hong <elsk@...gle.com>
---
kernel/Makefile | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/kernel/Makefile b/kernel/Makefile
index 10ef068f598d..76d9acc49c5f 100644
--- a/kernel/Makefile
+++ b/kernel/Makefile
@@ -140,6 +140,10 @@ obj-$(CONFIG_SCF_TORTURE_TEST) += scftorture.o
$(obj)/configs.o: $(obj)/config_data.gz
+# Disable LTO on configs.o so changes in .config is reflected in vmlinux. See
+# https://github.com/ClangBuiltLinux/linux/issues/2021
+CFLAGS_REMOVE_configs.o += $(CC_FLAGS_LTO)
+
targets += config_data config_data.gz
$(obj)/config_data.gz: $(obj)/config_data FORCE
$(call if_changed,gzip)
--
2.45.0.rc1.225.g2a3ae87e7f-goog
Powered by blists - more mailing lists