Messages in this thread | | | Subject | Re: Build failure in -next | From | Nathan Chancellor <> | Date | Wed, 23 Jun 2021 16:41:53 -0700 |
| |
Hi Paul,
On 6/23/2021 3:30 PM, Paul E. McKenney wrote: > Hello, Aneesh! > > Yesterday evening's next-20210622 testing gave me the following > kernel-build error: > > ld: mm/mremap.o: in function `move_huge_pud': > /home/git/linux-next/mm/mremap.c:372: undefined reference to `__compiletime_assert_395' > > Bisection landed on this commit: > > 257121c5aabe ("mm/mremap: convert huge PUD move to separate helper") > > I have no idea how this commit relates to that error message, but > reverting this commit on top of next-20210622 really does get rid of > the problem.
This was reported by Naresh Kamboju last week:
https://lore.kernel.org/r/CA+G9fYsWHE5Vu9T3FV-vtHHbVFJWEF=bmjQxwaZs3uVYef028g@mail.gmail.com/
It seems to be related to the fact that older versions of clang cannot figure out that the HPAGE_PUD case in move_pgt_entry() is never called when CONFIG_TRANSPARENT_HUGE is unset so it is not eliminated, which is problematic because flush_pud_tlb_range() evaluates to BUILD_BUG() in that case, which is called within move_huge_pud().
> The following reproducer provokes this error: > > tools/testing/selftests/rcutorture/bin/kvm.sh --allcpus --torture lock --configs LOCK07 --build-only --kconfig "CONFIG_DEBUG_LOCK_ALLOC=y CONFIG_PROVE_LOCKING=y" --kmake-arg "CC=clang-11" > > Run the above command in the top-level directory of your -next source > tree, and using this compiler: > > $ clang-11 -v > Ubuntu clang version 11.1.0-++20210428103817+1fdec59bffc1-1~exp1~20210428204431.166 > Target: x86_64-pc-linux-gnu > > Thoughts?
Aneesh had a patch in that thread above that would resolve the issue, it just needs to be sent to Andrew for a fixup patch.
Cheers, Nathan
| |