Re: [PATCH] x86/numa_emulation: Fix uniform size build failure

From: Dan Williams
Date: Thu Jul 05 2018 - 22:57:01 EST


On Thu, Jul 5, 2018 at 1:24 AM, Ingo Molnar <mingo@xxxxxxxxxx> wrote:
>
> * Dan Williams <dan.j.williams@xxxxxxxxx> wrote:
>
>> The calculation of a uniform numa-node size attempted to perform
>> division with a 64-bit diviser leading to the following failure on
>> 32-bit:
>>
>> arch/x86/mm/numa_emulation.o: In function `split_nodes_size_interleave_uniform':
>> arch/x86/mm/numa_emulation.c:239: undefined reference to `__udivdi3'
>>
>> Convert the implementation to do the division in terms of pages and then
>> shift the result back to an absolute physical address.
>>
>> Fixes: 93e738834fcc ("x86/numa_emulation: Introduce uniform split capability")
>> Cc: David Rientjes <rientjes@xxxxxxxxxx>
>> Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
>> Cc: Wei Yang <richard.weiyang@xxxxxxxxx>
>> Reported-by: kbuild test robot <lkp@xxxxxxxxx>
>> Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>
>
> I'm still getting this link failure on 32-bit kernels:
>
> arch/x86/mm/numa_emulation.o: In function `split_nodes_size_interleave_uniform.constprop.1':
> numa_emulation.c:(.init.text+0x669): undefined reference to `__udivdi3'
> Makefile:1005: recipe for target 'vmlinux' failed
>
> config attached.
>
> These numa_emulation changes are a bit of a trainwreck - I'm removing both
> num_emulation commits from -tip for now, could you please resubmit a fixed/tested
> combo version?
>

So I squashed the fix and let the 0day robot chew on it all day with
no reports as of yet. I just recompiled it here and am not seeing the
link failure, can you send me the details of the kernel config + gcc
version that is failing?