Radeon 5770, graphics/gpu-firmware-kmod, and graphics/drm-fbsd11.2-kmod

Warner Losh imp at bsdimp.com
Mon Apr 13 14:58:18 UTC 2020


make[4]: "/usr/src/lib/libc/Makefile" line 188: amd64 libc requires linker
ifunc support

I'll look into this. I think you may need to upgrade to 12.0 and then to
12-stable, but it's within the normal expected to work zone. I'll see when
that was added.

Did you disable C++ on your 11.3 system and force the use of gcc-only?
Otherwise my reading of the code (without trying it out, I'll grant)
suggests that this upgrade should work.

What's happening is that ifunc is now required for libc on amd64, even in
12. This means you need to have a LLD built, which requires clang or a
C++11 compiler (which I don't think g++ 4.2.1 actually is). Or you need
newer binutils and to build with that. However, a stock 11 system should
have LLD unless you've force it to be bfd for some reason.

Warner

On Mon, Apr 13, 2020 at 8:36 AM Scott Bennett <bennett at sdf.org> wrote:

> Warner Losh <imp at bsdimp.com> wrote:
>
> > What's the 12 stable failure message?
> >
>      Apparently, I neglected to save the typescript of the most recent
> attempts,
> but here is the end of one from 26 November 2019 at r355127.  Thank you for
> looking at it.
>
>
> --- crti.o ---
> /usr/local/libexec/ccache/world/cc -target x86_64-unknown-freebsd12.1
> --sysroot=/usr/obj/usr/src/amd64.amd64/tmp
> -B/usr/obj/usr/src/amd64.amd64/tmp/usr/bin -O2 -pipe "-mtune=core2"
> -I/usr/src/lib/csu/amd64 -I/usr/src/lib/csu/common
> -I/usr/src/lib/libc/include -fno-omit-frame-pointer -DCRT_IRELOC_RELA
> -march=core2  -g -MD  -MF.depend.crti.o -MTcrti.o -std=gnu99
> -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter
> -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type
> -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter
> -Wcast-align -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls
> -Wold-style-definition -Wno-pointer-sign -Wthread-safety -Wno-empty-body
> -Wno-string-plus-int -Wno-unused-const-variable  -Qunused-arguments    -c
> /usr/src/lib/csu/amd64/crti.S -o crti.o
> /usr/src/lib/csu/amd64/crti.S:29:2: warning: DWARF2 only supports one
> section per compilation unit
>  .section .init,"ax", at progbits
>  ^
> /usr/src/lib/csu/amd64/crti.S:36:2: warning: DWARF2 only supports one
> section per compilation unit
>  .section .fini,"ax", at progbits
>  ^
> /usr/src/lib/csu/amd64/crti.S:43:2: warning: DWARF2 only supports one
> section per compilation unit
>  .section .note.GNU-stack,"",%progbits
>  ^
> ctfconvert -L VERSION -g crti.o
> --- gnu/lib/csu__L ---
> --- crtend.o ---
> /usr/local/libexec/ccache/world/cc -target x86_64-unknown-freebsd12.1
> --sysroot=/usr/obj/usr/src/amd64.amd64/tmp
> -B/usr/obj/usr/src/amd64.amd64/tmp/usr/bin -O2 -pipe "-mtune=core2"
> -march=core2  -DIN_GCC -DHAVE_LD_EH_FRAME_HDR -DDT_CONFIG -D__GLIBC__=3
> -fno-inline-functions -fno-exceptions  -fno-zero-initialized-in-bss
> -fno-asynchronous-unwind-tables  -fno-omit-frame-pointer
> -I/usr/src/contrib/gcclibs/include -I/usr/src/contrib/gcc/config
> -I/usr/src/contrib/gcc -I.  -I/usr/src/gnu/usr.bin/cc/cc_tools -g
> -std=gnu89    -Qunused-arguments  -g0 -DCRT_END  -c -o crtend.o
> /usr/src/contrib/gcc/crtstuff.c
> --- lib/csu__L ---
> --- crtn.o ---
> /usr/local/libexec/ccache/world/cc -target x86_64-unknown-freebsd12.1
> --sysroot=/usr/obj/usr/src/amd64.amd64/tmp
> -B/usr/obj/usr/src/amd64.amd64/tmp/usr/bin -O2 -pipe "-mtune=core2"
> -I/usr/src/lib/csu/amd64 -I/usr/src/lib/csu/common
> -I/usr/src/lib/libc/include -fno-omit-frame-pointer -DCRT_IRELOC_RELA
> -march=core2  -g -MD  -MF.depend.crtn.o -MTcrtn.o -std=gnu99
> -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter
> -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type
> -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter
> -Wcast-align -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls
> -Wold-style-definition -Wno-pointer-sign -Wthread-safety -Wno-empty-body
> -Wno-string-plus-int -Wno-unused-const-variable  -Qunused-arguments    -c
> /usr/src/lib/csu/amd64/crtn.S -o crtn.o
> --- lib/libc__L ---
> make[4]: "/usr/src/lib/libc/Makefile" line 188: amd64 libc requires linker
> ifunc support
> *** [lib/libc__L] Error code 1
>
> make[3]: stopped in /usr/src
> --- gnu/lib/csu__L ---
> A failure has been detected in another branch of the parallel make
>
> make[4]: stopped in /usr/src/gnu/lib/csu
> *** [gnu/lib/csu__L] Error code 2
>
> make[3]: stopped in /usr/src
> --- lib/csu__L ---
> /usr/src/lib/csu/amd64/crtn.S:29:2: warning: DWARF2 only supports one
> section per compilation unit
>  .section .init,"ax", at progbits
>  ^
> /usr/src/lib/csu/amd64/crtn.S:33:2: warning: DWARF2 only supports one
> section per compilation unit
>  .section .fini,"ax", at progbits
>  ^
> /usr/src/lib/csu/amd64/crtn.S:37:2: warning: DWARF2 only supports one
> section per compilation unit
>  .section .note.GNU-stack,"",%progbits
>  ^
> ctfconvert -L VERSION -g crtn.o
> A failure has been detected in another branch of the parallel make
>
> make[5]: stopped in /usr/src/lib/csu/amd64
> *** [all_subdir_lib/csu/amd64] Error code 2
>
> make[4]: stopped in /usr/src/lib/csu
> 1 error
>
> make[4]: stopped in /usr/src/lib/csu
> *** [lib/csu__L] Error code 2
>
> make[3]: stopped in /usr/src
> 3 errors
>
> make[3]: stopped in /usr/src
> *** [libraries] Error code 2
>
> make[2]: stopped in /usr/src
> 1 error
>
> make[2]: stopped in /usr/src
> *** [_libraries] Error code 2
>
> make[1]: stopped in /usr/src
> 1 error
>
> make[1]: stopped in /usr/src
> *** [buildworld] Error code 2
>
> make: stopped in /usr/src
> 1 error
>
> make: stopped in /usr/src
> 541.085u 439.297s 33:49.49 48.3%        2806+219k 310342+310081io
> 21429pf+11w
> hellas# exit
> exit
>
> Script done on Tue Nov 26 23:41:24 2019
>
>      Does gpu-firmware-kmod differ between the version for 11.3 and the one
> for 12.1?  If not, then upgrading to 12.1 won't help much because of the
> bug that hangs the GPU.  It *might* help for the more general problem of
> the
> kernel memory management bugs, though, because 12-CURRENT branch happened
> long before 11.2 introduced the bugs, so they might never have existed in
> 12.
>
>                                         Scott Bennett
>


More information about the freebsd-x11 mailing list