[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <87k080bsk8.fsf@mpe.ellerman.id.au>
Date: Tue, 26 Jul 2022 10:56:07 +1000
From: Michael Ellerman <mpe@...erman.id.au>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: linuxppc-dev@...ts.ozlabs.org, alexdeucher@...il.com,
amd-gfx@...ts.freedesktop.org, linux@...ck-us.net,
linux-kernel@...r.kernel.org, dan@...ny.cz,
tpearson@...torengineering.com
Subject: Re: [PATCH] drm/amdgpu: Re-enable DCN for 64-bit powerpc
Linus Torvalds <torvalds@...ux-foundation.org> writes:
> On Mon, Jul 25, 2022 at 5:39 AM Michael Ellerman <mpe@...erman.id.au> wrote:
>>
>> Further digging shows that the build failures only occur with compilers
>> that default to 64-bit long double.
>
> Where the heck do we have 'long double' things anywhere in the kernel?
There's one or two uses, but not in any code that's relevant to this
issue AFAICS.
> I tried to grep for it, and failed miserably. I found some constants
> that would qualify, but they were in the v4l colorspaces-details.rst
> doc file.
>
> Strange.
It doesn't seem to matter if you use long double or not. It's just that
if the long double size is 64-bits the linker refuses to link a mixture
of soft/hard-float objects.
The 64-bit ABI says long double is 128-bits, so the compilers that are
using 64-bit long double are either not built correctly, or we are not
passing the correct flags to them.
There's an -mlong-double-128 flag which we can pass at build time which
seems to do the right thing, I will probably add that to the kernel
CFLAGS, but I want that to get a bit more testing.
cheers
Powered by blists - more mailing lists