[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20230216005535.6bff7aa6@yea>
Date: Thu, 16 Feb 2023 00:55:35 +0100
From: "Erhard F." <erhard_f@...lbox.org>
To: linuxppc-dev@...ts.ozlabs.org
Cc: linux-kernel@...r.kernel.org, mpe@...erman.id.au
Subject: 6.2-rc7 fails building on Talos II: memory.c:(.text+0x2e14):
undefined reference to `hash__tlb_flush'
Just noticed a build failure on 6.2-rc7 for my Talos 2 (.config attached):
# make
CALL scripts/checksyscalls.sh
UPD include/generated/utsversion.h
CC init/version-timestamp.o
LD .tmp_vmlinux.kallsyms1
ld: ld: DWARF error: could not find abbrev number 6
mm/memory.o: in function `unmap_page_range':
memory.c:(.text+0x2e14): undefined reference to `hash__tlb_flush'
ld: memory.c:(.text+0x2f8c): undefined reference to `hash__tlb_flush'
ld: ld: DWARF error: could not find abbrev number 3117
mm/mmu_gather.o: in function `tlb_remove_table':
mmu_gather.c:(.text+0x584): undefined reference to `hash__tlb_flush'
ld: mmu_gather.c:(.text+0x6c4): undefined reference to `hash__tlb_flush'
ld: mm/mmu_gather.o: in function `tlb_flush_mmu':
mmu_gather.c:(.text+0x80c): undefined reference to `hash__tlb_flush'
ld: mm/mmu_gather.o:mmu_gather.c:(.text+0xbe0): more undefined references to `hash__tlb_flush' follow
make[1]: *** [scripts/Makefile.vmlinux:35: vmlinux] Fehler 1
make: *** [Makefile:1264: vmlinux] Error 2
As 6.2-rc6 was good on this machine I did a quick bisect which revealed this commit:
# git bisect bad
1665c027afb225882a5a0b014c45e84290b826c2 is the first bad commit
commit 1665c027afb225882a5a0b014c45e84290b826c2
Author: Michael Ellerman <mpe@...erman.id.au>
Date: Tue Jan 31 22:14:07 2023 +1100
powerpc/64s: Reconnect tlb_flush() to hash__tlb_flush()
Commit baf1ed24b27d ("powerpc/mm: Remove empty hash__ functions")
removed some empty hash MMU flushing routines, but got a bit overeager
and also removed the call to hash__tlb_flush() from tlb_flush().
In regular use this doesn't lead to any noticable breakage, which is a
little concerning. Presumably there are flushes happening via other
paths such as arch_leave_lazy_mmu_mode(), and/or a bit of luck.
Fix it by reinstating the call to hash__tlb_flush().
Fixes: baf1ed24b27d ("powerpc/mm: Remove empty hash__ functions")
Signed-off-by: Michael Ellerman <mpe@...erman.id.au>
Link: https://lore.kernel.org/r/20230131111407.806770-1-mpe@ellerman.id.au
arch/powerpc/include/asm/book3s/64/tlbflush.h | 2 ++
1 file changed, 2 insertions(+)
Regards,
Erhard
Download attachment "config_62-rc7_p9" of type "application/octet-stream" (117112 bytes)
Powered by blists - more mailing lists