Le 31/03/2023 à 12:53, Michael Ellerman a écrit : > "Daniel Kolesa" <daniel@xxxxxxxxxxxxx> writes: >> Commit c653c591789b ("drm/amdgpu: Re-enable DCN for 64-bit powerpc") >> introduced this check as a workaround for the driver not building >> with toolchains that default to 64-bit long double. > ... >> In mainline, this work is now fully done, so this check is fully >> redundant and does not do anything except preventing AMDGPU DC >> from being built on systems such as those using musl libc. The >> last piece of work to enable this was commit c92b7fe0d92a >> ("drm/amd/display: move remaining FPU code to dml folder") >> and this has since been backported to 6.1 stable (in 6.1.7). >> >> Relevant issue: https://gitlab.freedesktop.org/drm/amd/-/issues/2288 > > I looked to pick this up for 6.3 but was still seeing build errors with > some compilers. I assumed that was due to some fixes coming in > linux-next that I didn't have. > > But applying the patch on v6.3-rc4 I still see build errors. This is > building allyesconfig with the kernel.org GCC 12.2.0 / binutils 2.39 > toolchain: > > powerpc64le-linux-gnu-ld: drivers/gpu/drm/amd/display/dc/dml/display_mode_lib.o uses hard float, arch/powerpc/lib/test_emulate_step.o uses soft float > powerpc64le-linux-gnu-ld: failed to merge target specific data of file drivers/gpu/drm/amd/display/dc/dml/display_mode_lib.o > > etc. > > All the conflicts are between test_emulate_step.o and some file in drivers/gpu/drm/amd/display/dc/dml. > > So even with all the hard-float code isolated in the dml folder, we > still hit build errors, because allyesconfig wants to link those > hard-float using objects with soft-float objects from elsewhere in the > kernel. > > It seems like the only workable fix is to force the kernel build to use > 128-bit long double. I'll send a patch doing that. > Commit 78f0929884d4 ("powerpc/64: Always build with 128-bit long double") I guess ? Let's drop this patch from patchwork then.