All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] initramfs: fix clang build failure
@ 2020-12-04 16:57 Arnd Bergmann
  2020-12-04 16:57 ` [PATCH 2/2] elfcore: fix building with clang Arnd Bergmann
  2020-12-05  0:34 ` [PATCH 1/2] initramfs: fix clang build failure Andrew Morton
  0 siblings, 2 replies; 3+ messages in thread
From: Arnd Bergmann @ 2020-12-04 16:57 UTC (permalink / raw)
  To: Andrew Morton, Nathan Chancellor, Nick Desaulniers
  Cc: Arnd Bergmann, Barret Rhoden, linux-kernel, clang-built-linux

From: Arnd Bergmann <arnd@arndb.de>

There is only one function in init/initramfs.c that is in the .text
section, and it is marked __weak. When building with clang-12 and
the integrated assembler, this leads to a bug with recordmcount:

./scripts/recordmcount  "init/initramfs.o"
Cannot find symbol for section 2: .text.
init/initramfs.o: failed

I'm not quite sure what exactly goes wrong, but I notice that this
function is only ever called from an __init function, and normally
inlined. Marking it __init as well is clearly correct and it
leads to recordmcount no longer complaining.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 init/initramfs.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/init/initramfs.c b/init/initramfs.c
index 1f97c0328a7a..55b74d7e5260 100644
--- a/init/initramfs.c
+++ b/init/initramfs.c
@@ -535,7 +535,7 @@ extern unsigned long __initramfs_size;
 #include <linux/initrd.h>
 #include <linux/kexec.h>
 
-void __weak free_initrd_mem(unsigned long start, unsigned long end)
+void __weak __init free_initrd_mem(unsigned long start, unsigned long end)
 {
 #ifdef CONFIG_ARCH_KEEP_MEMBLOCK
 	unsigned long aligned_start = ALIGN_DOWN(start, PAGE_SIZE);
-- 
2.27.0


^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2020-12-05  0:36 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-12-04 16:57 [PATCH 1/2] initramfs: fix clang build failure Arnd Bergmann
2020-12-04 16:57 ` [PATCH 2/2] elfcore: fix building with clang Arnd Bergmann
2020-12-05  0:34 ` [PATCH 1/2] initramfs: fix clang build failure Andrew Morton

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.