InBetweenNames / gentooLTO

A Gentoo Portage configuration for building with -O3, Graphite, and LTO optimizations
GNU General Public License v2.0
570 stars 97 forks source link

media-libs/mesa-18.2.* doesn't compile with LTO #143

Open gcs-github opened 6 years ago

gcs-github commented 6 years ago

Toolchain

USE flags

USE="classic dri3 egl gallium gbm llvm pax_kernel -d3d9 -debug -gles1 -gles2 -lm_sensors% -opencl -osmesa -pic (-selinux) -test% -unwind -vaapi -valgrind -vdpau -vulkan -wayland -xa -xvmc (-bindist%) (-nptl%*) (-openmax%)" VIDEO_CARDS="intel nouveau radeon radeonsi (-freedreno) -i915 -i965 (-imx) -r100 -r200 -r300 -r600 (-vc4) -virgl (-vivante) -vmware"

Somewhat related upstream bug

https://bugs.gentoo.org/641808

A couple of important points

  1. mesa-18.1.6 compiles fine with LTO with the current workaround disabling -Wl,--as-needed. Only the 18.2.0 RCs show a problem with -flto itself
  2. mesa seems to have changed build systems between 18.1 and 18.2. It's unclear whether this is contributing to the problem

Compile errors:

/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: /var/tmp/portage/media-libs/mesa-18.2.0_rc3/temp/cc3nHKvf.ltrans0.ltrans.o: in function `driCopySubBuffer':
<artificial>:(.text+0x941): undefined reference to `glFlush'
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: /var/tmp/portage/media-libs/mesa-18.2.0_rc3/temp/cc3nHKvf.ltrans0.ltrans.o: in function `driSwapBuffers':
<artificial>:(.text+0x991): undefined reference to `glFlush'
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: /var/tmp/portage/media-libs/mesa-18.2.0_rc3/temp/cc3nHKvf.ltrans0.ltrans.o: in function `dri2Flush.constprop.11':
<artificial>:(.text+0x9f86): undefined reference to `glFlush'
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: /var/tmp/portage/media-libs/mesa-18.2.0_rc3/temp/cc3nHKvf.ltrans1.ltrans.o: in function `driswSwapBuffers':
<artificial>:(.text+0x4211): undefined reference to `glFlush'
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: /var/tmp/portage/media-libs/mesa-18.2.0_rc3/temp/cc3nHKvf.ltrans1.ltrans.o: in function `driswCopySubBuffer':
<artificial>:(.text+0x4261): undefined reference to `glFlush'
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: /var/tmp/portage/media-libs/mesa-18.2.0_rc3/temp/cc3nHKvf.ltrans1.ltrans.o: in function `DRI_glXUseXFont':
<artificial>:(.text+0x61b9): undefined reference to `glGetIntegerv'
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: <artificial>:(.text+0x61c8): undefined reference to `glGetIntegerv'
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: <artificial>:(.text+0x61d7): undefined reference to `glGetIntegerv'
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: <artificial>:(.text+0x61e6): undefined reference to `glGetIntegerv'
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: <artificial>:(.text+0x61f5): undefined reference to `glGetIntegerv'
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: /var/tmp/portage/media-libs/mesa-18.2.0_rc3/temp/cc3nHKvf.ltrans1.ltrans.o:<artificial>:(.text+0x6204): more undefined references to `glGetIntegerv' follow
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: /var/tmp/portage/media-libs/mesa-18.2.0_rc3/temp/cc3nHKvf.ltrans1.ltrans.o: in function `DRI_glXUseXFont':
<artificial>:(.text+0x6210): undefined reference to `glPixelStorei'
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: <artificial>:(.text+0x621c): undefined reference to `glPixelStorei'
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: <artificial>:(.text+0x6228): undefined reference to `glPixelStorei'
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: <artificial>:(.text+0x6234): undefined reference to `glPixelStorei'
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: <artificial>:(.text+0x6240): undefined reference to `glPixelStorei'
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: /var/tmp/portage/media-libs/mesa-18.2.0_rc3/temp/cc3nHKvf.ltrans1.ltrans.o:<artificial>:(.text+0x624f): more undefined references to `glPixelStorei' follow
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: /var/tmp/portage/media-libs/mesa-18.2.0_rc3/temp/cc3nHKvf.ltrans1.ltrans.o: in function `DRI_glXUseXFont':
<artificial>:(.text+0x6352): undefined reference to `glNewList'
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: <artificial>:(.text+0x6387): undefined reference to `glBitmap'
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: <artificial>:(.text+0x638c): undefined reference to `glEndList'
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: <artificial>:(.text+0x65cc): undefined reference to `glBitmap'
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: <artificial>:(.text+0x65d1): undefined reference to `glEndList'
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: <artificial>:(.text+0x6611): undefined reference to `glPixelStorei'
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: <artificial>:(.text+0x661f): undefined reference to `glPixelStorei'
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: <artificial>:(.text+0x662d): undefined reference to `glPixelStorei'
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: <artificial>:(.text+0x663b): undefined reference to `glPixelStorei'
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: <artificial>:(.text+0x6649): undefined reference to `glPixelStorei'
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: /var/tmp/portage/media-libs/mesa-18.2.0_rc3/temp/cc3nHKvf.ltrans1.ltrans.o:<artificial>:(.text+0x6657): more undefined references to `glPixelStorei' follow
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: /var/tmp/portage/media-libs/mesa-18.2.0_rc3/temp/cc3nHKvf.ltrans3.ltrans.o: in function `MakeContextCurrent':
<artificial>:(.text+0xe917): undefined reference to `glGetString'
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: <artificial>:(.text+0xe921): undefined reference to `glGetString'
wolfwood commented 6 years ago

I'm also experiencing this issue, with the gold linker, same GCC and binutils

Supded commented 6 years ago

https://dropmefiles.com/763285

pchome commented 6 years ago

Such errors usually caused by misplaced dependencies with meson build system. In this particular case src/glx/libglx.a included on the first place like -Wl,--whole-archive src/glx/libglx.a -Wl,--no-whole-archive.

If you'll look into portage temp, find last command and move src/glx/libglx.a from the beginning to the end of other src/**.a -- you'll see it will compile.

How to fix this? Look for meson.build in directory where failed binary builds ( src/glx/libGL.so.1.2.0) and correct failed dep placement.

In this particular case something like this can help (but I'm not completely sure):

--- a/src/glx/meson.build
+++ b/src/glx/meson.build
@@ -162,8 +162,7 @@
     gl_lib_name,
     [],
     include_directories : [inc_common, inc_glapi, inc_loader, inc_gl_internal],
-    link_with : [libglapi_static, libglapi],
-    link_whole : libglx,
+    link_with : [libglapi_static, libglapi, libglx],
     link_args : [ld_args_bsymbolic, ld_args_gc_sections, extra_ld_args_libgl],
     dependencies : [
       dep_libdrm, dep_dl, dep_m, dep_thread, dep_x11, dep_xcb_glx, dep_xcb,
dracwyrm commented 6 years ago

@pchome Would you be able to submit that patch upstream and to bugs.g.o?

pchome commented 6 years ago

@dracwyrm It's rather guess than patch. I'm not using libGL.so from mesa by myself, as well as recent mesa releases, so I cant tell if it'll work after patching in such way.

Maybe better way will be to keep link_whole param while adding libglx to link_with (if meson allow this) http://mesonbuild.com/Reference-manual.html#executable

Or declaring libglx as dependency and place it into dependencies list to keep --whole-archive

my_dep_libglx = declare_dependency( link_whole : [ libglx ] )

http://mesonbuild.com/Reference-manual.html#declare_dependency

I'm not sure, need to be tested by someone really using mesa.

InBetweenNames commented 6 years ago

Sorry for the delay in responding to this -- I should be able to take a thorough look next week.

ThGravo commented 6 years ago

Possibly related?

/bin/sh ../../libtool  --tag=CC   --mode=link x86_64-pc-linux-gnu-gcc -D_REENTRANT      -I/usr/include/pixman-1    -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/freetype2   -I/usr/include/libdrm -I/usr/include/libdrm -I/usr/include/libpng16       -Wall -Wextra -Wmissing-declarations -Werror-implicit-function-declaration -Wpointer-arith -Wwrite-strings -Wsign-compare -Wpacked -Wswitch-enum -Wmissing-format-attribute -Wvolatile-register-var -Wstrict-aliasing=2 -Winit-self -Wunsafe-loop-optimizations -Wno-missing-field-initializers -Wno-unused-parameter -Wno-attributes -Wno-long-long -Winline -fno-strict-aliasing -fno-common -Wp,-D_FORTIFY_SOURCE=2 -Wno-unused-but-set-variable                           -D_REENTRANT  -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -march=native -O3 -fgraphite-identity -floop-nest-optimize -flto=8 -fuse-linker-plugin -pipe -fomit-frame-pointer -fno-stack-protector -w -Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu  -Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu -Wl,-O1 -march=native -O3 -fgraphite-identity -floop-nest-optimize -flto=8 -fuse-linker-plugin -pipe -fomit-frame-pointer -fno-stack-protector -w -o cairo-sphinx cairo_sphinx-sphinx.o -lpthread ../../util/cairo-script/libcairo-script-interpreter.la ../../boilerplate/libcairoboilerplate.la ../../src/libcairo.la -lglib-2.0  -lrt -lrt  -lm
libtool: link: x86_64-pc-linux-gnu-gcc -D_REENTRANT -I/usr/include/pixman-1 -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/freetype2 -I/usr/include/libdrm -I/usr/include/libdrm -I/usr/include/libpng16 -Wall -Wextra -Wmissing-declarations -Werror-implicit-function-declaration -Wpointer-arith -Wwrite-strings -Wsign-compare -Wpacked -Wswitch-enum -Wmissing-format-attribute -Wvolatile-register-var -Wstrict-aliasing=2 -Winit-self -Wunsafe-loop-optimizations -Wno-missing-field-initializers -Wno-unused-parameter -Wno-attributes -Wno-long-long -Winline -fno-strict-aliasing -fno-common -Wp,-D_FORTIFY_SOURCE=2 -Wno-unused-but-set-variable -D_REENTRANT -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -march=native -O3 -fgraphite-identity -floop-nest-optimize -flto=8 -fuse-linker-plugin -pipe -fomit-frame-pointer -fno-stack-protector -w -Wl,-O1 -Wl,--hash-style=gnu -Wl,-O1 -Wl,--hash-style=gnu -Wl,-O1 -march=native -O3 -fgraphite-identity -floop-nest-optimize -flto=8 -fuse-linker-plugin -pipe -fomit-frame-pointer -fno-stack-protector -w -o .libs/cairo-sphinx cairo_sphinx-sphinx.o  -Wl,--as-needed -lpthread ../../util/cairo-script/.libs/libcairo-script-interpreter.so -llzo2 ../../boilerplate/.libs/libcairoboilerplate.a /var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so ../../src/.libs/libcairo.so -lpixman-1 -lfontconfig -lfreetype -lEGL -ldl -lpng16 -lxcb-shm -lxcb -lxcb-render -lXrender -lX11 -lXext -lz -lGL -lglib-2.0 -lrt -lm
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glTexParameteri'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glEnable'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glScissor'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glActiveTexture'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glBindTexture'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glDrawArrays'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glBlendFunc'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glBlendFuncSeparate'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glDrawElements'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glDepthMask'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glDisable'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glStencilFunc'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glStencilOp'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glColorMask'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glClear'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glClearStencil'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glGetError'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glClearColor'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glDrawBuffer'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glReadBuffer'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glIsEnabled'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glGetIntegerv'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glViewport'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glDeleteTextures'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glGenTextures'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glTexImage2D'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glPixelStorei'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glReadPixels'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glTexSubImage2D'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glXChooseFBConfig'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glXQueryContext'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glXGetCurrentContext'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glXGetCurrentDrawable'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glXQueryExtensionsString'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glXGetVisualFromFBConfig'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glXSwapBuffers'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glXMakeCurrent'
/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/src/.libs/libcairo.so: error: undefined reference to 'glXGetProcAddress'
/var/tmp/portage/x11-libs/cairo-1.15.12/temp/ccTNOIT2.ltrans0.ltrans.o:<artificial>:function _cairo_boilerplate_gl_cleanup: error: undefined reference to 'glXDestroyContext'
/var/tmp/portage/x11-libs/cairo-1.15.12/temp/ccTNOIT2.ltrans0.ltrans.o:<artificial>:function _cairo_boilerplate_gl_create_window_common.isra.1.constprop.0: error: undefined reference to 'glXChooseVisual'
/var/tmp/portage/x11-libs/cairo-1.15.12/temp/ccTNOIT2.ltrans0.ltrans.o:<artificial>:function _cairo_boilerplate_gl_create_window_common.isra.1.constprop.0: error: undefined reference to 'glXCreateContext'
/var/tmp/portage/x11-libs/cairo-1.15.12/temp/ccTNOIT2.ltrans0.ltrans.o:<artificial>:function _cairo_boilerplate_gl_create_window_common.isra.1.constprop.0: error: undefined reference to 'glXDestroyContext'
/var/tmp/portage/x11-libs/cairo-1.15.12/temp/ccTNOIT2.ltrans0.ltrans.o:<artificial>:function _cairo_boilerplate_gl_synchronize: error: undefined reference to 'glFinish'
/var/tmp/portage/x11-libs/cairo-1.15.12/temp/ccTNOIT2.ltrans0.ltrans.o:<artificial>:function _cairo_boilerplate_egl_synchronize: error: undefined reference to 'glFinish'
/var/tmp/portage/x11-libs/cairo-1.15.12/temp/ccTNOIT2.ltrans0.ltrans.o:<artificial>:function _cairo_boilerplate_gl_create_window_db: error: undefined reference to 'glXDestroyContext'
/var/tmp/portage/x11-libs/cairo-1.15.12/temp/ccTNOIT2.ltrans0.ltrans.o:<artificial>:function _cairo_boilerplate_gl_create_surface: error: undefined reference to 'glXChooseVisual'
/var/tmp/portage/x11-libs/cairo-1.15.12/temp/ccTNOIT2.ltrans0.ltrans.o:<artificial>:function _cairo_boilerplate_gl_create_surface: error: undefined reference to 'glXCreateContext'
/var/tmp/portage/x11-libs/cairo-1.15.12/temp/ccTNOIT2.ltrans0.ltrans.o:<artificial>:function _cairo_boilerplate_gl_create_surface: error: undefined reference to 'glXChooseVisual'
/var/tmp/portage/x11-libs/cairo-1.15.12/temp/ccTNOIT2.ltrans0.ltrans.o:<artificial>:function _cairo_boilerplate_gl_create_surface: error: undefined reference to 'glXDestroyContext'
/var/tmp/portage/x11-libs/cairo-1.15.12/temp/ccTNOIT2.ltrans0.ltrans.o:<artificial>:function _cairo_boilerplate_gl_describe: error: undefined reference to 'glGetString'
/var/tmp/portage/x11-libs/cairo-1.15.12/temp/ccTNOIT2.ltrans0.ltrans.o:<artificial>:function _cairo_boilerplate_gl_describe: error: undefined reference to 'glGetString'
/var/tmp/portage/x11-libs/cairo-1.15.12/temp/ccTNOIT2.ltrans0.ltrans.o:<artificial>:function _cairo_boilerplate_gl_describe: error: undefined reference to 'glGetString'
collect2: error: ld returned 1 exit status
make[4]: *** [Makefile:604: cairo-sphinx] Error 1
make[4]: Leaving directory '/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/util/cairo-sphinx'
make[3]: *** [Makefile:1002: all-recursive] Error 1
make[3]: Leaving directory '/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/util'
make[2]: *** [Makefile:779: all] Error 2
make[2]: Leaving directory '/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64/util'
make[1]: *** [Makefile:908: all-recursive] Error 1
make[1]: Leaving directory '/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64'
make: *** [Makefile:759: all] Error 2
 * ERROR: x11-libs/cairo-1.15.12::gnome-next failed (compile phase):
 *   emake failed
 * 
 * If you need support, post the output of `emerge --info '=x11-libs/cairo-1.15.12::gnome-next'`,
 * the complete build log and the output of `emerge -pqv '=x11-libs/cairo-1.15.12::gnome-next'`.
 * The complete build log is located at '/var/tmp/portage/x11-libs/cairo-1.15.12/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/x11-libs/cairo-1.15.12/temp/environment'.
 * Working directory: '/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12-abi_x86_64.amd64'
 * S: '/var/tmp/portage/x11-libs/cairo-1.15.12/work/cairo-1.15.12'
Althorion commented 5 years ago

Where are we standing on that issue? =media-libs/mesa-18.2.2 which just hit the ~amd64, fails to build with LTO-related errors: https://gist.github.com/Althorion/6d04683c0ce2769155e561b3f350581c

InBetweenNames commented 5 years ago

@Althorion I'm going to disable LTO on this package for now, but keep this issue open for further investigation.

barolo commented 5 years ago

@InBetweenNames Current git mesa compiles with LTO/GRAPHITE/INTEROP again. Which I'm assuming is going to end as 19.1? Tested for AMD and Intel

InBetweenNames commented 5 years ago

I'll test on my next boot!

InBetweenNames commented 5 years ago

That's great. Once an ebuild shows up I'll remove the override.

PaddyMac commented 5 years ago

Compiling is one thing. How does it work? In the past, I've successfully compiled Mesa with LTO, but then when I ran 3D applications there were severe graphical anomalies.

barolo commented 5 years ago

@PaddyMac running AMD's Vega I can't detect any so far, be it Vulkan, OpenGL, native or under wine. I have Intel box too, with tons of emus, they all work fine as far as I can tell

barolo commented 5 years ago

@InBetweenNames Spoke too early I guess, -flto breaks webrenderer enabled Firefox [ universally, be it -bin, upstream version or selfcompiled ], segfaults upon start with LTOed mesa

InBetweenNames commented 5 years ago

I'm on Nvidia and force-enabled webrender and hardware compositing just to see what would happen -- no crashes for me. Then again, it may be still "off" due to some other reason.

EDIT: I just realized, likely I'm not even using Mesa on Firefox because of the proprietary driver

barolo commented 5 years ago

@InBetweenNames Yup, I'm on AMD's VEGA open source stack

InBetweenNames commented 5 years ago

Perhaps we should conditionally disable LTO on mesa for AMD?

barolo commented 5 years ago

@InBetweenNames we could, I can confirm that at least for intel [ iris ] it does work.

Scratch this, it doesn't work on Intel too, seems to be broken for all mesa drivers

InBetweenNames commented 5 years ago

Will re-add the workaround. Thanks!

elsandosgrande commented 4 years ago

To quote the final reply to the RESOLVED Gentoo bug report above: "mesa-19.1.2 builds for me with CFLAGS="-O2 -march=native -pipe -flto" CXXFLAGS="$CFLAGS" on gcc-8.3.0-r1."

I shall now try to figure out how to override ltoworkarounds.conf and tripple check.

elsandosgrande commented 4 years ago

So, while it might be slightly too soon to speak and may need additional testing (I got some [-Wodr] output, which is concerning, but did not cause the compilation to fail, unlike with LibreOffice, #382), after two days of building, most of the time being spent in linking the package (both 32 and 64-bit versions together):

media-libs/mesa-19.2.1::gentoo was built with the following:
USE="X d3d9 dri3 egl gallium gbm gles1 gles2 llvm lm-sensors opencl osmesa unwind vaapi vdpau vulkan vulkan-overlay wayland -classic -debug (-libglvnd) -pax_kernel (-selinux) -test -valgrind -xa -xvmc" ABI_X86="32 (64) -x32" VIDEO_CARDS="radeon radeonsi (-freedreno) -i915 -i965 -intel -iris (-lima) -nouveau (-panfrost) -r100 -r200 -r300 -r600 (-vc4) -virgl (-vivante) -vmware"
CFLAGS="-O3 -march=bdver4 -pipe -pthread -fira-hoist-pressure -fira-loop-pressure -fbranch-target-load-optimize -fweb -fgraphite-identity -floop-nest-optimize -fdevirtualize-at-ltrans -fipa-pta -fno-semantic-interposition -fuse-linker-plugin -fuse-ld=bfd -Wall -Wextra -flto=2 -Wl,-O1 -Wl,--as-needed -Wl,-O3"
CXXFLAGS="-O3 -march=bdver4 -pipe -pthread -fira-hoist-pressure -fira-loop-pressure -fbranch-target-load-optimize -fweb -fgraphite-identity -floop-nest-optimize -fdevirtualize-at-ltrans -fipa-pta -fno-semantic-interposition -fuse-linker-plugin -fuse-ld=bfd -Wall -Wextra -flto=2 -Wl,-O1 -Wl,--as-needed -Wl,-O3"
FEATURES="sandbox ipc-sandbox strict fixlafiles binpkg-logs assume-digests usersync xattr binpkg-dostrip userpriv binpkg-docompress distlocks usersandbox pid-sandbox unmerge-orphans unknown-features-warn config-protect-if-modified protect-owned merge-sync preserve-libs multilib-strict sfperms network-sandbox news userfetch ebuild-locks parallel-fetch unmerge-logs"
LDFLAGS="-O3 -march=bdver4 -pipe -pthread -fira-hoist-pressure -fira-loop-pressure -fbranch-target-load-optimize -fweb -fgraphite-identity -floop-nest-optimize -fdevirtualize-at-ltrans -fipa-pta -fno-semantic-interposition -fuse-linker-plugin -fuse-ld=bfd -Wall -Wextra -Wl,-O1 -Wl,--as-needed -Wl,-O3 -flto=2"

Here is the build log.

The only thing that I have noticed is that you have to move something to get the page to actually show, at least with Nightly, like moving your cursor up to the top of the screen in fullscreen mode, or switching tabs. This might be different with WebRender in Stable, but Nightly has this quirk now.

Edit

I copied the build log out of /var/tmp/portage/media-libs/mesa-[version number]/temp/build.log before the compilation finished, so the log ends at what I presume to be the linking stage for the 64-bit version. It is currently gone from the original directory, so...

Edit two

Not all pages are affected by the invisibility glitch described above. ... ... !?

Edit three

Some of the misspelling underlines can flicker. All of these glitches seem to only be present when Firefox is fullscreen. Also, this is under X11 (XWayland; Firefox under Wayland, without XWayland, is quite glitchy on KDE Plasma, like how it completely freezes when one resizes its window, so I kind of don't want to check for Mesa glitches under bare Wayland, but still probably will do so).

elsandosgrande commented 4 years ago

So... This is kind of concerning:

[10月31 15:46] traps: Renderer[4508] general protection fault ip:7ff3caa05848 sp:7ff3cbe206a0 error:0 in radeonsi_dri.so[7ff3ca698000+b3b000]
[  +1,576073] traps: Renderer[5096] general protection fault ip:7f31fc005848 sp:7f31fd3e06a0 error:0 in radeonsi_dri.so[7f31fbc98000+b3b000]
[  +4,364244] traps: Renderer[5129] general protection fault ip:7f6d5c905848 sp:7f6d5dd606a0 error:0 in radeonsi_dri.so[7f6d5c598000+b3b000]

I will assume that this is related to the freezing of the Firefox UI that I experienced earlier. To note though, it did unfreeze after about fifteen seconds.

elsandosgrande commented 4 years ago

So...

This is what happens when Thunderbird Daily crashes:

...
11月 04 09:40:50 sandys-pavilion kernel: [drm] PCIE GART of 256M enabled (table at 0x000000F400000000).
11月 04 09:40:51 sandys-pavilion kernel: amdgpu 0000:01:00.0: [drm:amdgpu_ring_test_helper] *ERROR* ring sdma1 test failed (-110)
11月 04 09:40:51 sandys-pavilion kernel: [drm:amdgpu_device_ip_resume_phase2] *ERROR* resume of IP block <sdma_v2_4> failed -110
11月 04 09:40:51 sandys-pavilion kernel: [drm:amdgpu_device_resume] *ERROR* amdgpu_device_ip_resume failed (-110).
11月 04 09:40:51 sandys-pavilion kernel: [drm] schedsdma1 is not ready, skipping
11月 04 09:40:51 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 09:40:52 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 09:40:52 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 09:40:53 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 09:40:53 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 09:40:59 sandys-pavilion kernel: amdgpu: [powerplay] VI should always have 2 performance levels
11月 04 09:40:59 sandys-pavilion kernel: amdgpu: [powerplay] Trying to disable SCLK DPM when DPM is disabled
11月 04 09:40:59 sandys-pavilion kernel: amdgpu: [powerplay] Trying to disable voltage DPM when DPM is disabled
11月 04 09:40:59 sandys-pavilion kernel: amdgpu: [powerplay] Failed to force to switch arbf0!
11月 04 09:40:59 sandys-pavilion kernel: amdgpu: [powerplay] [disable_dpm_tasks] Failed to disable DPM!
11月 04 09:40:59 sandys-pavilion kernel: [drm:amdgpu_device_ip_suspend_phase2] *ERROR* suspend of IP block <powerplay> failed -22
11月 04 09:41:00 sandys-pavilion kernel: amdgpu 0000:01:00.0: GPU pci config reset
11月 04 09:41:37 sandys-pavilion kernel: [drm] PCIE GART of 256M enabled (table at 0x000000F400000000).
11月 04 09:41:37 sandys-pavilion kernel: amdgpu: [powerplay] can't get the mac of 5
11月 04 09:41:38 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring gfx
11月 04 09:41:38 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.0
11月 04 09:41:39 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.1
11月 04 09:41:39 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.2
11月 04 09:41:40 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.3
11月 04 09:41:41 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.4
11月 04 09:41:41 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.5
11月 04 09:41:42 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.6
11月 04 09:41:42 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.7
11月 04 09:41:43 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 09:41:43 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma1
11月 04 09:41:44 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 09:41:44 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 09:41:45 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 09:41:45 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 09:41:46 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 09:41:52 sandys-pavilion kernel: amdgpu: [powerplay] VI should always have 2 performance levels
11月 04 09:41:52 sandys-pavilion kernel: amdgpu 0000:01:00.0: GPU pci config reset
...

That was me saying "Relaunch Thunderbird", so there are two blocks of messages.

Now, my laptop already has PowerPlay issues, mostly with the dedicated GPU, which might play a small role here, but this is on another level entirely. I will now try to manually update Thunderbird and see if that helps at all.

Edit

One more thing. This is what I get with every subsequent attempt:

...
11月 04 10:50:01 sandys-pavilion kernel: [drm] PCIE GART of 256M enabled (table at 0x000000F400000000).
11月 04 10:50:01 sandys-pavilion kernel: amdgpu: [powerplay] can't get the mac of 5
11月 04 10:50:02 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring gfx
11月 04 10:50:02 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.0
11月 04 10:50:03 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.1
11月 04 10:50:03 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.2
11月 04 10:50:04 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.3
11月 04 10:50:04 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.4
11月 04 10:50:05 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.5
11月 04 10:50:05 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.6
11月 04 10:50:06 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.7
11月 04 10:50:06 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 10:50:07 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma1
11月 04 10:50:07 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 10:50:08 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 10:50:08 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 10:50:09 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 10:50:09 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 10:50:15 sandys-pavilion kernel: amdgpu: [powerplay] VI should always have 2 performance levels
11月 04 10:50:16 sandys-pavilion kernel: amdgpu 0000:01:00.0: GPU pci config reset
...

Now, since the updates are still being built, I don't know if any changes from 19.2.1 to 19.2.2 make a difference, but I will try updating Thunderbird manually, as stated above, and see what happens.

Edit two

So... Running DRI_PRIME=1 screenfetch gives me this:

...
11月 04 11:04:13 sandys-pavilion kernel: [drm] PCIE GART of 256M enabled (table at 0x000000F400000000).
11月 04 11:04:13 sandys-pavilion kernel: amdgpu: [powerplay] can't get the mac of 5
11月 04 11:04:14 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring gfx
11月 04 11:04:14 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.0
11月 04 11:04:15 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.1
11月 04 11:04:15 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.2
11月 04 11:04:16 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.3
11月 04 11:04:16 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.4
11月 04 11:04:17 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.5
11月 04 11:04:17 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.6
11月 04 11:04:18 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.7
11月 04 11:04:18 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:19 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma1
11月 04 11:04:19 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:20 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:20 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:21 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:21 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:22 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:22 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:23 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:23 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:24 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:24 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:25 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:25 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma1
11月 04 11:04:25 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:26 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:26 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring gfx
11月 04 11:04:26 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:27 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:27 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:28 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:28 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma1
11月 04 11:04:29 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring gfx
11月 04 11:04:29 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:30 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:30 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma1
11月 04 11:04:31 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring gfx
11月 04 11:04:31 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:32 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:32 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:33 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:33 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:34 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:34 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:35 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:35 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:36 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:36 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:04:36 sandys-pavilion kernel: amdgpu: [powerplay] VI should always have 2 performance levels
11月 04 11:04:36 sandys-pavilion kernel: amdgpu 0000:01:00.0: GPU pci config reset
11月 04 11:04:37 sandys-pavilion kernel: [drm] PCIE GART of 256M enabled (table at 0x000000F400000000).
11月 04 11:04:37 sandys-pavilion kernel: amdgpu 0000:01:00.0: [drm:amdgpu_ring_test_helper] *ERROR* ring sdma0 test failed (-110)
11月 04 11:04:37 sandys-pavilion kernel: [drm:amdgpu_device_ip_resume_phase2] *ERROR* resume of IP block <sdma_v2_4> failed -110
11月 04 11:04:37 sandys-pavilion kernel: [drm:amdgpu_device_resume] *ERROR* amdgpu_device_ip_resume failed (-110).
...

To note, I did NOT run Thunderbird Daily with DRI_PRIME=1 set and screenfetch actually does return the expected output, it's just that it takes almost a literal minute.

On subsequent runs, this is the relevant journalctl output:


...
11月 04 11:05:09 sandys-pavilion kernel: [drm] PCIE GART of 256M enabled (table at 0x000000F400000000).
11月 04 11:05:09 sandys-pavilion kernel: amdgpu: [powerplay] can't get the mac of 5
11月 04 11:05:10 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring gfx
11月 04 11:05:10 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.0
11月 04 11:05:11 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.1
11月 04 11:05:11 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.2
11月 04 11:05:12 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.3
11月 04 11:05:12 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.4
11月 04 11:05:13 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.5
11月 04 11:05:13 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.6
11月 04 11:05:14 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.7
11月 04 11:05:14 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:15 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma1
11月 04 11:05:15 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:16 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:16 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:17 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:17 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:18 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:18 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:19 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:19 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:20 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:20 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:21 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:21 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma1
11月 04 11:05:21 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:22 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:22 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring gfx
11月 04 11:05:22 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:23 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:23 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:24 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma1
11月 04 11:05:24 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:24 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring gfx
11月 04 11:05:25 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:25 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:26 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma1
11月 04 11:05:26 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring gfx
11月 04 11:05:27 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:27 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:28 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:28 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:29 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:29 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:30 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:30 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:31 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:31 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:32 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:32 sandys-pavilion kernel: amdgpu: [powerplay] VI should always have 2 performance levels
11月 04 11:05:32 sandys-pavilion kernel: amdgpu 0000:01:00.0: GPU pci config reset
11月 04 11:05:32 sandys-pavilion kernel: [drm] PCIE GART of 256M enabled (table at 0x000000F400000000).
11月 04 11:05:32 sandys-pavilion kernel: amdgpu: [powerplay] can't get the mac of 5
11月 04 11:05:33 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring gfx
11月 04 11:05:33 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.0
11月 04 11:05:34 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.1
11月 04 11:05:34 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.2
11月 04 11:05:35 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.3
11月 04 11:05:35 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.4
11月 04 11:05:36 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.5
11月 04 11:05:36 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.6
11月 04 11:05:37 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring comp_1.0.7
11月 04 11:05:37 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma0
11月 04 11:05:38 sandys-pavilion kernel: [drm] Fence fallback timer expired on ring sdma1
11月 04 11:05:44 sandys-pavilion kernel: amdgpu: [powerplay] VI should always have 2 performance levels
11月 04 11:05:44 sandys-pavilion kernel: amdgpu 0000:01:00.0: GPU pci config reset
...
barolo commented 4 years ago

Does it go away when built without LTO?

elsandosgrande commented 4 years ago

My guess is yes, but I really don't have the time to be rebuilding Mesa. To note, I have not updated (read: opened) Thunderbird Daily since before LTO-izing Mesa.

elsandosgrande commented 4 years ago

Mesa 19.2.2, Thunderbird Daily, journalctl output.

thunderbird-daily:

...
11月 05 13:03:45 sandys-pavilion systemd-coredump[4340]: Process 3220 (kded5) of user 1000 dumped core.

                                                          Stack trace of thread 3220:
                                                          #0  0x00007f1a7e168131 raise (libc.so.6)
                                                          #1  0x00007f1a7e124f3f _ZN6KCrash19defaultCrashHandlerEi (libKF5Crash.so.5)
                                                          #2  0x00007f1a7e1681f0 n/a (libc.so.6)
                                                          #3  0x00007f1a6a9540da _ZN8KWayland6Client16OutputManagement19createConfigurationEP7QObject (libKF5WaylandClient.so.5)
                                                          #4  0x00007f1a6819763a n/a (KSC_KWayland.so)
                                                          #5  0x00007f1a682ddf91 _ZN7KScreen18SetConfigOperation5startEv (libKF5Screen.so.7)
                                                          #6  0x00007f1a682eceee n/a (libKF5Screen.so.7)
                                                          #7  0x00007f1a7d591c1e _ZN7QObject5eventEP6QEvent (libQt5Core.so.5)
                                                          #8  0x00007f1a7cf25364 _ZN19QApplicationPrivate13notify_helperEP7QObjectP6QEvent (libQt5Widgets.so.5)
                                                          #9  0x00007f1a7cf197a8 _ZN12QApplication6notifyEP7QObjectP6QEvent (libQt5Widgets.so.5)
                                                          #10 0x00007f1a7d5ba630 _ZN16QCoreApplication15notifyInternal2EP7QObjectP6QEvent (libQt5Core.so.5)
                                                          #11 0x00007f1a7d5bd0d8 _ZN23QCoreApplicationPrivate16sendPostedEventsEP7QObjectiP11QThreadData (libQt5Core.so.5)
                                                          #12 0x00007f1a7d575ca0 n/a (libQt5Core.so.5)
                                                          #13 0x00007f1a7be8d586 g_main_context_dispatch (libglib-2.0.so.0)
                                                          #14 0x00007f1a7be8e1f3 n/a (libglib-2.0.so.0)
                                                          #15 0x00007f1a7be918c1 g_main_context_iteration (libglib-2.0.so.0)
                                                          #16 0x00007f1a7d571a67 _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt5Core.so.5)
                                                          #17 0x00007f1a7d4f662e _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt5Core.so.5)
                                                          #18 0x00007f1a7d5be546 _ZN16QCoreApplication4execEv (libQt5Core.so.5)
                                                          #19 0x00007f1a6c39b935 kdemain (libkdeinit5_kded5.so)
                                                          #20 0x00005641ad30891b n/a (kdeinit5)
                                                          #21 0x00005641ad304d30 n/a (kdeinit5)
                                                          #22 0x00007f1a7e152f0e __libc_start_main (libc.so.6)
                                                          #23 0x00005641ad3052ea n/a (kdeinit5)

                                                          Stack trace of thread 3222:
                                                          #0  0x00007f1a7be31df4 g_mutex_unlock (libglib-2.0.so.0)
                                                          #1  0x00007f1a7be8dd83 g_main_context_check (libglib-2.0.so.0)
                                                          #2  0x00007f1a7be8e112 n/a (libglib-2.0.so.0)
                                                          #3  0x00007f1a7be918c1 g_main_context_iteration (libglib-2.0.so.0)
                                                          #4  0x00007f1a7d571a83 _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt5Core.so.5)
                                                          #5  0x00007f1a7d4f662e _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt5Core.so.5)
                                                          #6  0x00007f1a7d7345a9 _ZN7QThread4execEv (libQt5Core.so.5)
                                                          #7  0x00007f1a6c866a9c n/a (libQt5DBus.so.5)
                                                          #8  0x00007f1a7d7318d8 n/a (libQt5Core.so.5)
                                                          #9  0x00007f1a7d0d73aa start_thread (libpthread.so.0)
                                                          #10 0x00007f1a7e23488f __clone (libc.so.6)

                                                          Stack trace of thread 3429:
                                                          #0  0x00007f1a7d4d729c _ZN6QMutex4lockEv (libQt5Core.so.5)
                                                          #1  0x00007f1a7d575d07 n/a (libQt5Core.so.5)
                                                          #2  0x00007f1a7be8d8e4 g_main_context_prepare (libglib-2.0.so.0)
                                                          #3  0x00007f1a7be8e06e n/a (libglib-2.0.so.0)
                                                          #4  0x00007f1a7be918c1 g_main_context_iteration (libglib-2.0.so.0)
                                                          #5  0x00007f1a7d571a83 _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt5Core.so.5)
                                                          #6  0x00007f1a7d4f662e _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt5Core.so.5)
                                                          #7  0x00007f1a7d731a9f _ZN7QThread3runEv (libQt5Core.so.5)
                                                          #8  0x00007f1a7d7318d8 n/a (libQt5Core.so.5)
                                                          #9  0x00007f1a7d0d73aa start_thread (libpthread.so.0)
                                                          #10 0x00007f1a7e23488f __clone (libc.so.6)

                                                          Stack trace of thread 3248:
                                                          #0  0x00007f1a7be8de29 g_main_context_check (libglib-2.0.so.0)
                                                          #1  0x00007f1a7be8e112 n/a (libglib-2.0.so.0)
                                                          #2  0x00007f1a7be2c933 g_main_loop_run (libglib-2.0.so.0)
                                                          #3  0x00007f1a691d91fe n/a (libgio-2.0.so.0)
                                                          #4  0x00007f1a7be59d2d n/a (libglib-2.0.so.0)
                                                          #5  0x00007f1a7d0d73aa start_thread (libpthread.so.0)
                                                          #6  0x00007f1a7e23488f __clone (libc.so.6)

                                                          Stack trace of thread 3247:
                                                          #0  0x00007f1a7e224120 __read (libc.so.6)
                                                          #1  0x00007f1a7be8df74 g_main_context_check (libglib-2.0.so.0)
                                                          #2  0x00007f1a7be8e112 n/a (libglib-2.0.so.0)
                                                          #3  0x00007f1a7be8e2e7 n/a (libglib-2.0.so.0)
                                                          #4  0x00007f1a7be59d2d n/a (libglib-2.0.so.0)
                                                          #5  0x00007f1a7d0d73aa start_thread (libpthread.so.0)
                                                          #6  0x00007f1a7e23488f __clone (libc.so.6)
...

GDK_BACKEND=wayland thunderbird-daily:

...
11月 05 13:05:09 sandys-pavilion systemd-coredump[4714]: Process 4607 (GPU Process) of user 1000 dumped core.

                                                          Stack trace of thread 4630:
                                                          #0  0x00007fe4a6608a98 n/a (radeonsi_dri.so)
                                                          #1  0x00007fe4a6615ccd n/a (radeonsi_dri.so)
                                                          #2  0x00007fe4a6615b76 n/a (radeonsi_dri.so)
                                                          #3  0x00007fe4a62f079d n/a (radeonsi_dri.so)
                                                          #4  0x00007fe4a62f4e63 n/a (radeonsi_dri.so)
                                                          #5  0x00007fe4a6612913 n/a (radeonsi_dri.so)
                                                          #6  0x00007fe4a66db664 n/a (radeonsi_dri.so)
                                                          #7  0x00007fe4a682bf7c n/a (radeonsi_dri.so)
                                                          #8  0x00007fe4bedd7d72 _ZN9webrender6device2gl6Device12link_program17h4b6152d6b4bea4acE (libxul.so)
                                                          #9  0x00007fe4bf0352c2 _ZN9webrender5shade20LazilyCompiledShader12get_internal17h8e25b2c6f4069e38E (libxul.so)
                                                          #10 0x00007fe4bf05e4c1 _ZN9webrender5shade20LazilyCompiledShader4bind17ha3901c50c2efa007E (libxul.so)
                                                          #11 0x00007fe4bf061646 _ZN9webrender8renderer8Renderer26draw_alpha_batch_container17h19ee1b50f92a6e91E (libxul.so)
                                                          #12 0x00007fe4bf0542a1 _ZN9webrender8renderer8Renderer10draw_frame17h499cea4e735ffed7E (libxul.so)
                                                          #13 0x00007fe4bf03807e _ZN9webrender8renderer8Renderer11render_impl17h991902157846a7bcE (libxul.so)
                                                          #14 0x00007fe4bce7fb64 wr_renderer_render (libxul.so)
                                                          #15 0x00007fe4ba619a69 _ZN7mozilla2wr11RendererOGL15UpdateAndRenderERKNS_5MaybeINS_3gfx12IntSizeTypedINS3_12UnknownUnitsEEEEERKNS2_INS0_11ImageFormatEEERKNS2_INS_5RangeIhEEEEbPNS0_13RendererStatsE (libxul.so)
                                                          #16 0x00007fe4ba6193ad _ZN7mozilla2wr12RenderThread15UpdateAndRenderENS0_10WrWindowIdERKNS_6layers17BaseTransactionIdINS_11VsyncIdTypeEEERKNS_9TimeStampEbRKNS_5MaybeINS_3gfx12IntSizeTypedINSD_12UnknownUnitsEEEEE>
                                                          #17 0x00007fe4ba618f4b _ZN7mozilla2wr12RenderThread17HandleFrameOneDocENS0_10WrWindowIdEb (libxul.so)
                                                          #18 0x00007fe4ba6221bf _ZN7mozilla6detail18RunnableMethodImplIPNS_2wr12RenderThreadEMS3_FvNS2_10WrWindowIdEbELb1ELNS_12RunnableKindE0EJS5_bEE3RunEv (libxul.so)
                                                          #19 0x00007fe4bcf55eb6 _ZN11MessageLoop6DoWorkEv (libxul.so)
                                                          #20 0x00007fe4bcf56513 _ZN4base18MessagePumpDefault3RunEPNS_11MessagePump8DelegateE (libxul.so)
                                                          #21 0x00007fe4bd7fe08f _ZN11MessageLoop3RunEv (libxul.so)
                                                          #22 0x00007fe4bd8035f0 _ZN4base6Thread10ThreadMainEv (libxul.so)
                                                          #23 0x00007fe4bd800fea _ZL10ThreadFuncPv.llvm.1585853250247018381 (libxul.so)
                                                          #24 0x00007fe4c46273aa start_thread (libpthread.so.0)
                                                          #25 0x00007fe4c415c88f __clone (libc.so.6)

                                                          Stack trace of thread 4607:
                                                          #0  0x00007fe4c4150803 __poll (libc.so.6)
                                                          #1  0x00007fe4bd0dc19a _ZL11PollWrapperP8_GPollFDji (libxul.so)
                                                          #2  0x00007fe4c20561aa n/a (libglib-2.0.so.0)
                                                          #3  0x00007fe4c20598c1 g_main_context_iteration (libglib-2.0.so.0)
                                                          #4  0x00007fe4bd0db9cf _ZN14nsBaseAppShell18OnProcessNextEventEP17nsIThreadInternalb (libxul.so)
                                                          #5  0x00007fe4bcf21613 _ZN8nsThread16ProcessNextEventEbPb (libxul.so)
                                                          #6  0x00007fe4bcf23f86 _Z19NS_ProcessNextEventP9nsIThreadb (libxul.so)
                                                          #7  0x00007fe4bcf61bc7 _ZN7mozilla3ipc11MessagePump3RunEPN4base11MessagePump8DelegateE (libxul.so)
                                                          #8  0x00007fe4bd7fe08f _ZN11MessageLoop3RunEv (libxul.so)
                                                          #9  0x00007fe4be14e9e4 _ZN14nsBaseAppShell3RunEv (libxul.so)
                                                          #10 0x00007fe4be6e1ecc _Z15XRE_RunAppShellv (libxul.so)
                                                          #11 0x00007fe4bd7fe08f _ZN11MessageLoop3RunEv (libxul.so)
                                                          #12 0x00007fe4be6e1b8e _Z20XRE_InitChildProcessiPPcPK12XREChildData (libxul.so)
                                                          #13 0x00005619c1341292 main (firefox-bin)
                                                          #14 0x00007fe4c407af0e __libc_start_main (libc.so.6)
                                                          #15 0x00005619c1341019 _start (firefox-bin)
-- Subject: Process 4607 (GPU Process) dumped core
-- Defined-By: systemd
-- Support: https://gentoo.org/support/
-- Documentation: man:core(5)
-- 
-- Process 4607 (GPU Process) crashed and dumped core.
-- 
-- This usually indicates a programming error in the crashing program and
-- should be reported to its vendor as a bug.
11月 05 13:05:09 sandys-pavilion systemd[1]: systemd-coredump@1-4713-0.service: Succeeded.
-- Subject: Unit succeeded
-- Defined-By: systemd
-- Support: https://gentoo.org/support/
-- 
-- The unit systemd-coredump@1-4713-0.service has successfully entered the 'dead' state.
11月 05 13:05:09 sandys-pavilion systemd-coredump[4750]: Process 4727 (GPU Process) of user 1000 dumped core.

                                                          Stack trace of thread 4733:
                                                          #0  0x00007fdca7508a98 n/a (radeonsi_dri.so)
                                                          #1  0x00007fdca7515ccd n/a (radeonsi_dri.so)
                                                          #2  0x00007fdca7515b76 n/a (radeonsi_dri.so)
                                                          #3  0x00007fdca71f079d n/a (radeonsi_dri.so)
                                                          #4  0x00007fdca71f4e63 n/a (radeonsi_dri.so)
                                                          #5  0x00007fdca7512913 n/a (radeonsi_dri.so)
                                                          #6  0x00007fdca75db664 n/a (radeonsi_dri.so)
                                                          #7  0x00007fdca772bf7c n/a (radeonsi_dri.so)
                                                          #8  0x00007fdcbfd17d72 _ZN9webrender6device2gl6Device12link_program17h4b6152d6b4bea4acE (libxul.so)
                                                          #9  0x00007fdcbff752c2 _ZN9webrender5shade20LazilyCompiledShader12get_internal17h8e25b2c6f4069e38E (libxul.so)
                                                          #10 0x00007fdcbff9e4c1 _ZN9webrender5shade20LazilyCompiledShader4bind17ha3901c50c2efa007E (libxul.so)
                                                          #11 0x00007fdcbffa1646 _ZN9webrender8renderer8Renderer26draw_alpha_batch_container17h19ee1b50f92a6e91E (libxul.so)
                                                          #12 0x00007fdcbff942a1 _ZN9webrender8renderer8Renderer10draw_frame17h499cea4e735ffed7E (libxul.so)
                                                          #13 0x00007fdcbff7807e _ZN9webrender8renderer8Renderer11render_impl17h991902157846a7bcE (libxul.so)
                                                          #14 0x00007fdcbddbfb64 wr_renderer_render (libxul.so)
                                                          #15 0x00007fdcbb559a69 _ZN7mozilla2wr11RendererOGL15UpdateAndRenderERKNS_5MaybeINS_3gfx12IntSizeTypedINS3_12UnknownUnitsEEEEERKNS2_INS0_11ImageFormatEEERKNS2_INS_5RangeIhEEEEbPNS0_13RendererStatsE (libxul.so)
                                                          #16 0x00007fdcbb5593ad _ZN7mozilla2wr12RenderThread15UpdateAndRenderENS0_10WrWindowIdERKNS_6layers17BaseTransactionIdINS_11VsyncIdTypeEEERKNS_9TimeStampEbRKNS_5MaybeINS_3gfx12IntSizeTypedINSD_12UnknownUnitsEEEEE>
                                                          #17 0x00007fdcbb558f4b _ZN7mozilla2wr12RenderThread17HandleFrameOneDocENS0_10WrWindowIdEb (libxul.so)
                                                          #18 0x00007fdcbb5621bf _ZN7mozilla6detail18RunnableMethodImplIPNS_2wr12RenderThreadEMS3_FvNS2_10WrWindowIdEbELb1ELNS_12RunnableKindE0EJS5_bEE3RunEv (libxul.so)
                                                          #19 0x00007fdcbde95eb6 _ZN11MessageLoop6DoWorkEv (libxul.so)
                                                          #20 0x00007fdcbde96513 _ZN4base18MessagePumpDefault3RunEPNS_11MessagePump8DelegateE (libxul.so)
                                                          #21 0x00007fdcbe73e08f _ZN11MessageLoop3RunEv (libxul.so)
                                                          #22 0x00007fdcbe7435f0 _ZN4base6Thread10ThreadMainEv (libxul.so)
                                                          #23 0x00007fdcbe740fea _ZL10ThreadFuncPv.llvm.1585853250247018381 (libxul.so)
                                                          #24 0x00007fdcc55673aa start_thread (libpthread.so.0)
                                                          #25 0x00007fdcc509c88f __clone (libc.so.6)

                                                          Stack trace of thread 4727:
                                                          #0  0x00007fdcc5090803 __poll (libc.so.6)
                                                          #1  0x00007fdcbe01c19a _ZL11PollWrapperP8_GPollFDji (libxul.so)
                                                          #2  0x00007fdcc2f961aa n/a (libglib-2.0.so.0)
                                                          #3  0x00007fdcc2f998c1 g_main_context_iteration (libglib-2.0.so.0)
                                                          #4  0x00007fdcbe01b9cf _ZN14nsBaseAppShell18OnProcessNextEventEP17nsIThreadInternalb (libxul.so)
                                                          #5  0x00007fdcbde61613 _ZN8nsThread16ProcessNextEventEbPb (libxul.so)
                                                          #6  0x00007fdcbde63f86 _Z19NS_ProcessNextEventP9nsIThreadb (libxul.so)
                                                          #7  0x00007fdcbdea1bc7 _ZN7mozilla3ipc11MessagePump3RunEPN4base11MessagePump8DelegateE (libxul.so)
                                                          #8  0x00007fdcbe73e08f _ZN11MessageLoop3RunEv (libxul.so)
                                                          #9  0x00007fdcbf08e9e4 _ZN14nsBaseAppShell3RunEv (libxul.so)
                                                          #10 0x00007fdcbf621ecc _Z15XRE_RunAppShellv (libxul.so)
                                                          #11 0x00007fdcbe73e08f _ZN11MessageLoop3RunEv (libxul.so)
                                                          #12 0x00007fdcbf621b8e _Z20XRE_InitChildProcessiPPcPK12XREChildData (libxul.so)
                                                          #13 0x00005612c7885292 main (firefox-bin)
                                                          #14 0x00007fdcc4fbaf0e __libc_start_main (libc.so.6)
                                                          #15 0x00005612c7885019 _start (firefox-bin)
-- Subject: Process 4727 (GPU Process) dumped core
-- Defined-By: systemd
-- Support: https://gentoo.org/support/
-- Documentation: man:core(5)
-- 
-- Process 4727 (GPU Process) crashed and dumped core.
-- 
-- This usually indicates a programming error in the crashing program and
-- should be reported to its vendor as a bug.
11月 05 13:05:09 sandys-pavilion systemd[1]: systemd-coredump@2-4749-0.service: Succeeded.
-- Subject: Unit succeeded
-- Defined-By: systemd
-- Support: https://gentoo.org/support/
-- 
-- The unit systemd-coredump@2-4749-0.service has successfully entered the 'dead' state.
11月 05 13:05:11 sandys-pavilion systemd-coredump[4803]: Process 4760 (GPU Process) of user 1000 dumped core.

                                                          Stack trace of thread 4766:
                                                          #0  0x00007fa798008a98 n/a (radeonsi_dri.so)
                                                          #1  0x00007fa798015ccd n/a (radeonsi_dri.so)
                                                          #2  0x00007fa798015b76 n/a (radeonsi_dri.so)
                                                          #3  0x00007fa797cf079d n/a (radeonsi_dri.so)
                                                          #4  0x00007fa797cf4e63 n/a (radeonsi_dri.so)
                                                          #5  0x00007fa798012913 n/a (radeonsi_dri.so)
                                                          #6  0x00007fa7980db664 n/a (radeonsi_dri.so)
                                                          #7  0x00007fa79822bf7c n/a (radeonsi_dri.so)
                                                          #8  0x00007fa7b07dfd72 _ZN9webrender6device2gl6Device12link_program17h4b6152d6b4bea4acE (libxul.so)
                                                          #9  0x00007fa7b0a3d2c2 _ZN9webrender5shade20LazilyCompiledShader12get_internal17h8e25b2c6f4069e38E (libxul.so)
                                                          #10 0x00007fa7b0a664c1 _ZN9webrender5shade20LazilyCompiledShader4bind17ha3901c50c2efa007E (libxul.so)
                                                          #11 0x00007fa7b0a69646 _ZN9webrender8renderer8Renderer26draw_alpha_batch_container17h19ee1b50f92a6e91E (libxul.so)
                                                          #12 0x00007fa7b0a5c2a1 _ZN9webrender8renderer8Renderer10draw_frame17h499cea4e735ffed7E (libxul.so)
                                                          #13 0x00007fa7b0a4007e _ZN9webrender8renderer8Renderer11render_impl17h991902157846a7bcE (libxul.so)
                                                          #14 0x00007fa7ae887b64 wr_renderer_render (libxul.so)
                                                          #15 0x00007fa7ac021a69 _ZN7mozilla2wr11RendererOGL15UpdateAndRenderERKNS_5MaybeINS_3gfx12IntSizeTypedINS3_12UnknownUnitsEEEEERKNS2_INS0_11ImageFormatEEERKNS2_INS_5RangeIhEEEEbPNS0_13RendererStatsE (libxul.so)
                                                          #16 0x00007fa7ac0213ad _ZN7mozilla2wr12RenderThread15UpdateAndRenderENS0_10WrWindowIdERKNS_6layers17BaseTransactionIdINS_11VsyncIdTypeEEERKNS_9TimeStampEbRKNS_5MaybeINS_3gfx12IntSizeTypedINSD_12UnknownUnitsEEEEE>
                                                          #17 0x00007fa7ac020f4b _ZN7mozilla2wr12RenderThread17HandleFrameOneDocENS0_10WrWindowIdEb (libxul.so)
                                                          #18 0x00007fa7ac02a1bf _ZN7mozilla6detail18RunnableMethodImplIPNS_2wr12RenderThreadEMS3_FvNS2_10WrWindowIdEbELb1ELNS_12RunnableKindE0EJS5_bEE3RunEv (libxul.so)
                                                          #19 0x00007fa7ae95deb6 _ZN11MessageLoop6DoWorkEv (libxul.so)
                                                          #20 0x00007fa7ae95e513 _ZN4base18MessagePumpDefault3RunEPNS_11MessagePump8DelegateE (libxul.so)
                                                          #21 0x00007fa7af20608f _ZN11MessageLoop3RunEv (libxul.so)
                                                          #22 0x00007fa7af20b5f0 _ZN4base6Thread10ThreadMainEv (libxul.so)
                                                          #23 0x00007fa7af208fea _ZL10ThreadFuncPv.llvm.1585853250247018381 (libxul.so)
                                                          #24 0x00007fa7b60373aa start_thread (libpthread.so.0)
                                                          #25 0x00007fa7b5b6c88f __clone (libc.so.6)

                                                          Stack trace of thread 4760:
                                                          #0  0x00007fa7b5b60803 __poll (libc.so.6)
                                                          #1  0x00007fa7aeae419a _ZL11PollWrapperP8_GPollFDji (libxul.so)
                                                          #2  0x00007fa7b3a561aa n/a (libglib-2.0.so.0)
                                                          #3  0x00007fa7b3a598c1 g_main_context_iteration (libglib-2.0.so.0)
                                                          #4  0x00007fa7aeae39cf _ZN14nsBaseAppShell18OnProcessNextEventEP17nsIThreadInternalb (libxul.so)
                                                          #5  0x00007fa7ae929613 _ZN8nsThread16ProcessNextEventEbPb (libxul.so)
                                                          #6  0x00007fa7ae92bf86 _Z19NS_ProcessNextEventP9nsIThreadb (libxul.so)
                                                          #7  0x00007fa7ae969bc7 _ZN7mozilla3ipc11MessagePump3RunEPN4base11MessagePump8DelegateE (libxul.so)
                                                          #8  0x00007fa7af20608f _ZN11MessageLoop3RunEv (libxul.so)
                                                          #9  0x00007fa7afb569e4 _ZN14nsBaseAppShell3RunEv (libxul.so)
                                                          #10 0x00007fa7b00e9ecc _Z15XRE_RunAppShellv (libxul.so)
                                                          #11 0x00007fa7af20608f _ZN11MessageLoop3RunEv (libxul.so)
                                                          #12 0x00007fa7b00e9b8e _Z20XRE_InitChildProcessiPPcPK12XREChildData (libxul.so)
                                                          #13 0x000055a4080f9292 main (firefox-bin)
                                                          #14 0x00007fa7b5a8af0e __libc_start_main (libc.so.6)
                                                          #15 0x000055a4080f9019 _start (firefox-bin)
-- Subject: Process 4760 (GPU Process) dumped core
-- Defined-By: systemd
-- Support: https://gentoo.org/support/
-- Documentation: man:core(5)
-- 
-- Process 4760 (GPU Process) crashed and dumped core.
-- 
-- This usually indicates a programming error in the crashing program and
-- should be reported to its vendor as a bug.
11月 05 13:05:11 sandys-pavilion systemd[1]: systemd-coredump@3-4802-0.service: Succeeded.
-- Subject: Unit succeeded
-- Defined-By: systemd
-- Support: https://gentoo.org/support/
-- 
-- The unit systemd-coredump@3-4802-0.service has successfully entered the 'dead' state.
11月 05 13:05:15 sandys-pavilion systemd-coredump[4848]: Process 4816 (GPU Process) of user 1000 dumped core.

                                                          Stack trace of thread 4825:
                                                          #0  0x00007f69e6008a98 n/a (radeonsi_dri.so)
                                                          #1  0x00007f69e6015ccd n/a (radeonsi_dri.so)
                                                          #2  0x00007f69e6015b76 n/a (radeonsi_dri.so)
                                                          #3  0x00007f69e5cf079d n/a (radeonsi_dri.so)
                                                          #4  0x00007f69e5cf4e63 n/a (radeonsi_dri.so)
                                                          #5  0x00007f69e6012913 n/a (radeonsi_dri.so)
                                                          #6  0x00007f69e60db664 n/a (radeonsi_dri.so)
                                                          #7  0x00007f69e622bf7c n/a (radeonsi_dri.so)
                                                          #8  0x00007f69fe7e7d72 _ZN9webrender6device2gl6Device12link_program17h4b6152d6b4bea4acE (libxul.so)
                                                          #9  0x00007f69fea452c2 _ZN9webrender5shade20LazilyCompiledShader12get_internal17h8e25b2c6f4069e38E (libxul.so)
                                                          #10 0x00007f69fea6e4c1 _ZN9webrender5shade20LazilyCompiledShader4bind17ha3901c50c2efa007E (libxul.so)
                                                          #11 0x00007f69fea71ca9 _ZN9webrender8renderer8Renderer26draw_alpha_batch_container17h19ee1b50f92a6e91E (libxul.so)
                                                          #12 0x00007f69fea642a1 _ZN9webrender8renderer8Renderer10draw_frame17h499cea4e735ffed7E (libxul.so)
                                                          #13 0x00007f69fea4807e _ZN9webrender8renderer8Renderer11render_impl17h991902157846a7bcE (libxul.so)
                                                          #14 0x00007f69fc88fb64 wr_renderer_render (libxul.so)
                                                          #15 0x00007f69fa029a69 _ZN7mozilla2wr11RendererOGL15UpdateAndRenderERKNS_5MaybeINS_3gfx12IntSizeTypedINS3_12UnknownUnitsEEEEERKNS2_INS0_11ImageFormatEEERKNS2_INS_5RangeIhEEEEbPNS0_13RendererStatsE (libxul.so)
                                                          #16 0x00007f69fa0293ad _ZN7mozilla2wr12RenderThread15UpdateAndRenderENS0_10WrWindowIdERKNS_6layers17BaseTransactionIdINS_11VsyncIdTypeEEERKNS_9TimeStampEbRKNS_5MaybeINS_3gfx12IntSizeTypedINSD_12UnknownUnitsEEEEE>
                                                          #17 0x00007f69fa028f4b _ZN7mozilla2wr12RenderThread17HandleFrameOneDocENS0_10WrWindowIdEb (libxul.so)
                                                          #18 0x00007f69fa0321bf _ZN7mozilla6detail18RunnableMethodImplIPNS_2wr12RenderThreadEMS3_FvNS2_10WrWindowIdEbELb1ELNS_12RunnableKindE0EJS5_bEE3RunEv (libxul.so)
                                                          #19 0x00007f69fc965eb6 _ZN11MessageLoop6DoWorkEv (libxul.so)
                                                          #20 0x00007f69fc966513 _ZN4base18MessagePumpDefault3RunEPNS_11MessagePump8DelegateE (libxul.so)
                                                          #21 0x00007f69fd20e08f _ZN11MessageLoop3RunEv (libxul.so)
                                                          #22 0x00007f69fd2135f0 _ZN4base6Thread10ThreadMainEv (libxul.so)
                                                          #23 0x00007f69fd210fea _ZL10ThreadFuncPv.llvm.1585853250247018381 (libxul.so)
                                                          #24 0x00007f6a040373aa start_thread (libpthread.so.0)
                                                          #25 0x00007f6a03b6c88f __clone (libc.so.6)

                                                          Stack trace of thread 4835:
                                                          #0  0x00007f69e36a0866 n/a (libLLVMCodeGen.so.9)
                                                          #1  0x00007f69e382998b n/a (libLLVMCodeGen.so.9)
                                                          #2  0x00007f69e3e294a1 _ZN4llvm13FPPassManager13runOnFunctionERNS_8FunctionE (libLLVMCore.so.9)
                                                          #3  0x00007f69e43bf1f1 n/a (libLLVMAnalysis.so.9)
                                                          #4  0x00007f69e3e2b3ba _ZN4llvm6legacy15PassManagerImpl3runERNS_6ModuleE (libLLVMCore.so.9)
                                                          #5  0x00007f69e644d5ed n/a (radeonsi_dri.so)
                                                          #6  0x00007f69e645d732 n/a (radeonsi_dri.so)
                                                          #7  0x00007f69e649d99a n/a (radeonsi_dri.so)
                                                          #8  0x00007f69e5f3ecfd n/a (radeonsi_dri.so)
                                                          #9  0x00007f69e5f3e827 n/a (radeonsi_dri.so)
                                                          #10 0x00007f6a040373aa start_thread (libpthread.so.0)
                                                          #11 0x00007f6a03b6c88f __clone (libc.so.6)

                                                          Stack trace of thread 4823:
                                                          #0  0x00007f6a0403dddd pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0)
                                                          #1  0x0000563f0d006889 _ZN7mozilla6detail21ConditionVariableImpl4waitERNS0_9MutexImplE (firefox-bin)
                                                          #2  0x00007f69fc92e620 _ZN7mozilla16ThreadEventQueueINS_10EventQueueEE8GetEventEbPNS_18EventQueuePriorityE (libxul.so)
                                                          #3  0x00007f69fc931805 _ZN8nsThread16ProcessNextEventEbPb (libxul.so)
                                                          #4  0x00007f69fc933f86 _Z19NS_ProcessNextEventP9nsIThreadb (libxul.so)
                                                          #5  0x00007f69fc971fc0 _ZN7mozilla3ipc28MessagePumpForNonMainThreads3RunEPN4base11MessagePump8DelegateE (libxul.so)
                                                          #6  0x00007f69fd20e08f _ZN11MessageLoop3RunEv (libxul.so)
                                                          #7  0x00007f69fcffbc91 _ZN8nsThread10ThreadFuncEPv (libxul.so)
                                                          #8  0x00007f6a03a40dde _pt_root (libnspr4.so)
                                                          #9  0x00007f6a040373aa start_thread (libpthread.so.0)
                                                          #10 0x00007f6a03b6c88f __clone (libc.so.6)

                                                          Stack trace of thread 4830:
                                                          #0  0x00007f6a0403dddd pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0)
                                                          #1  0x00007f69e5f3ec63 n/a (radeonsi_dri.so)
                                                          #2  0x00007f69e5f3e827 n/a (radeonsi_dri.so)
                                                          #3  0x00007f6a040373aa start_thread (libpthread.so.0)
                                                          #4  0x00007f6a03b6c88f __clone (libc.so.6)

                                                          Stack trace of thread 4828:
                                                          #0  0x00007f6a0403e134 pthread_cond_timedwait@@GLIBC_2.3.2 (libpthread.so.0)
                                                          #1  0x0000563f0d0069f9 _ZN7mozilla6detail21ConditionVariableImpl8wait_forERNS0_9MutexImplERKNS_16BaseTimeDurationINS_27TimeDurationValueCalculatorEEE (firefox-bin)
                                                          #2  0x00007f69fc930196 _ZN11TimerThread3RunEv (libxul.so)
                                                          #3  0x00007f69fc9321ff _ZN8nsThread16ProcessNextEventEbPb (libxul.so)
                                                          #4  0x00007f69fc933f86 _Z19NS_ProcessNextEventP9nsIThreadb (libxul.so)
                                                          #5  0x00007f69fc971eb4 _ZN7mozilla3ipc28MessagePumpForNonMainThreads3RunEPN4base11MessagePump8DelegateE (libxul.so)
                                                          #6  0x00007f69fd20e08f _ZN11MessageLoop3RunEv (libxul.so)
                                                          #7  0x00007f69fcffbc91 _ZN8nsThread10ThreadFuncEPv (libxul.so)
                                                          #8  0x00007f6a03a40dde _pt_root (libnspr4.so)
                                                          #9  0x00007f6a040373aa start_thread (libpthread.so.0)
                                                          #10 0x00007f6a03b6c88f __clone (libc.so.6)

                                                          Stack trace of thread 4827:
                                                          #0  0x00007f6a0403dddd pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0)
                                                          #1  0x00007f69feeb0daf _ZN10rayon_core5sleep5Sleep5sleep17h4b0bfe078485c8c6E (libxul.so)
                                                          #2  0x00007f69feeb1b8d _ZN10rayon_core8registry12WorkerThread15wait_until_cold17haa6f922bce9e67feE (libxul.so)
                                                          #3  0x00007f69feeb27e2 _ZN3std10sys_common9backtrace28__rust_begin_short_backtrace17h0e1dcbfaacdd25a8E (libxul.so)
                                                          #4  0x00007f69feeb20ce _ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h9f60150a892769d7E (libxul.so)
                                                          #5  0x00007f69feef806e _ZN83_$LT$alloc..boxed..Box$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$A$GT$$GT$9call_once17h2877b2aefb0fd627E (libxul.so)
                                                          #6  0x00007f69feefa368 _ZN3std3sys4unix6thread6Thread3new12thread_start17h382c6ae14181d163E (libxul.so)
                                                          #7  0x00007f6a040373aa start_thread (libpthread.so.0)
                                                          #8  0x00007f6a03b6c88f __clone (libc.so.6)

                                                          Stack trace of thread 4829:
                                                          #0  0x00007f6a0403dddd pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0)
                                                          #1  0x0000563f0d006889 _ZN7mozilla6detail21ConditionVariableImpl4waitERNS0_9MutexImplE (firefox-bin)
                                                          #2  0x00007f69fc92e620 _ZN7mozilla16ThreadEventQueueINS_10EventQueueEE8GetEventEbPNS_18EventQueuePriorityE (libxul.so)
                                                          #3  0x00007f69fc931805 _ZN8nsThread16ProcessNextEventEbPb (libxul.so)
                                                          #4  0x00007f69fc933f86 _Z19NS_ProcessNextEventP9nsIThreadb (libxul.so)
                                                          #5  0x00007f69fc971fc0 _ZN7mozilla3ipc28MessagePumpForNonMainThreads3RunEPN4base11MessagePump8DelegateE (libxul.so)
                                                          #6  0x00007f69fd20e08f _ZN11MessageLoop3RunEv (libxul.so)
                                                          #7  0x00007f69fcffbc91 _ZN8nsThread10ThreadFuncEPv (libxul.so)
                                                          #8  0x00007f6a03a40dde _pt_root (libnspr4.so)
                                                          #9  0x00007f6a040373aa start_thread (libpthread.so.0)
                                                          #10 0x00007f6a03b6c88f __clone (libc.so.6)

                                                          Stack trace of thread 4832:
                                                          #0  0x00007f6a0403dddd pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0)
                                                          #1  0x00007f69e5f3ec63 n/a (radeonsi_dri.so)
                                                          #2  0x00007f69e5f3e827 n/a (radeonsi_dri.so)
                                                          #3  0x00007f6a040373aa start_thread (libpthread.so.0)
                                                          #4  0x00007f6a03b6c88f __clone (libc.so.6)

                                                          Stack trace of thread 4837:
                                                          #0  0x00007f6a03b66ed9 syscall (libc.so.6)
                                                          #1  0x00007f69e5f3fcf5 n/a (radeonsi_dri.so)
                                                          #2  0x00007f69e5cdd141 n/a (radeonsi_dri.so)
                                                          #3  0x00007f69e64a7f59 n/a (radeonsi_dri.so)
                                                          #4  0x00007f69e64a9737 n/a (radeonsi_dri.so)
                                                          #5  0x00007f69e64b6bd2 n/a (radeonsi_dri.so)
                                                          #6  0x00007f69e64b92cb n/a (radeonsi_dri.so)
                                                          #7  0x00007f69e5ccc4c8 n/a (radeonsi_dri.so)
                                                          #8  0x00007f69e647c543 n/a (radeonsi_dri.so)
                                                          #9  0x00007f69e5dc3670 n/a (radeonsi_dri.so)
                                                          #10 0x00007f69e5f3ecfd n/a (radeonsi_dri.so)
                                                          #11 0x00007f69e5f3e827 n/a (radeonsi_dri.so)
                                                          #12 0x00007f6a040373aa start_thread (libpthread.so.0)
                                                          #13 0x00007f6a03b6c88f __clone (libc.so.6)

                                                          Stack trace of thread 4826:
                                                          #0  0x00007f6a0403dddd pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0)
                                                          #1  0x00007f69feeb0daf _ZN10rayon_core5sleep5Sleep5sleep17h4b0bfe078485c8c6E (libxul.so)
                                                          #2  0x00007f69feeb1b8d _ZN10rayon_core8registry12WorkerThread15wait_until_cold17haa6f922bce9e67feE (libxul.so)
                                                          #3  0x00007f69feeb27e2 _ZN3std10sys_common9backtrace28__rust_begin_short_backtrace17h0e1dcbfaacdd25a8E (libxul.so)
                                                          #4  0x00007f69feeb20ce _ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h9f60150a892769d7E (libxul.so)
                                                          #5  0x00007f69feef806e _ZN83_$LT$alloc..boxed..Box$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$A$GT$$GT$9call_once17h2877b2aefb0fd627E (libxul.so)
                                                          #6  0x00007f69feefa368 _ZN3std3sys4unix6thread6Thread3new12thread_start17h382c6ae14181d163E (libxul.so)
                                                          #7  0x00007f6a040373aa start_thread (libpthread.so.0)
                                                          #8  0x00007f6a03b6c88f __clone (libc.so.6)

                                                          Stack trace of thread 4838:
                                                          #0  0x00007f6a0403dddd pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0)
                                                          #1  0x00007f69feef05d2 _ZN3std6thread4park17haf6d974156f5d62cE.llvm.9034712437990220667 (libxul.so)
                                                          #2  0x00007f69fe85e505 _ZN3std4sync4mpsc17Receiver$LT$T$GT$4recv17h1356f756cb46c3ecE (libxul.so)
                                                          #3  0x00007f69fe851099 _ZN9webrender20scene_builder_thread18SceneBuilderThread3run17h3d6e207cab79652aE (libxul.so)
                                                          #4  0x00007f69fe850e16 _ZN3std10sys_common9backtrace28__rust_begin_short_backtrace17h824fba04d6ad60c9E (libxul.so)
                                                          #5  0x00007f69fe850d1e _ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h798352010a0a72c3E (libxul.so)
                                                          #6  0x00007f69feef806e _ZN83_$LT$alloc..boxed..Box$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$A$GT$$GT$9call_once17h2877b2aefb0fd627E (libxul.so)
                                                          #7  0x00007f69feefa368 _ZN3std3sys4unix6thread6Thread3new12thread_start17h382c6ae14181d163E (libxul.so)
                                                          #8  0x00007f6a040373aa start_thread (libpthread.so.0)
                                                          #9  0x00007f6a03b6c88f __clone (libc.so.6)

                                                          Stack trace of thread 4822:
                                                          #0  0x00007f6a0403dddd pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0)
                                                          #1  0x0000563f0d0068ef _ZN7mozilla6detail21ConditionVariableImpl8wait_forERNS0_9MutexImplERKNS_16BaseTimeDurationINS_27TimeDurationValueCalculatorEEE (firefox-bin)
                                                          #2  0x00007f69fe046dc7 _ZN7mozilla21BackgroundHangManager16RunMonitorThreadEv (libxul.so)
                                                          #3  0x00007f69fe046b3a _ZN7mozilla21BackgroundHangManager13MonitorThreadEPv (libxul.so)
                                                          #4  0x00007f6a03a40dde _pt_root (libnspr4.so)
                                                          #5  0x00007f6a040373aa start_thread (libpthread.so.0)
                                                          #6  0x00007f6a03b6c88f __clone (libc.so.6)

                                                          Stack trace of thread 4839:
                                                          #0  0x00007f6a0403dddd pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0)
                                                          #1  0x00007f69feef05d2 _ZN3std6thread4park17haf6d974156f5d62cE.llvm.9034712437990220667 (libxul.so)
                                                          #2  0x00007f69fe85d0d5 _ZN3std4sync4mpsc17Receiver$LT$T$GT$4recv17h1356f756cb46c3ecE (libxul.so)
                                                          #3  0x00007f69fea417df _ZN3std10sys_common9backtrace28__rust_begin_short_backtrace17h8cd9a93eab8ce1e7E (libxul.so)
                                                          #4  0x00007f69fea416c6 _ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h90c9b6cb5728f22cE (libxul.so)
                                                          #5  0x00007f69feef806e _ZN83_$LT$alloc..boxed..Box$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$A$GT$$GT$9call_once17h2877b2aefb0fd627E (libxul.so)
                                                          #6  0x00007f69feefa368 _ZN3std3sys4unix6thread6Thread3new12thread_start17h382c6ae14181d163E (libxul.so)
                                                          #7  0x00007f6a040373aa start_thread (libpthread.so.0)
                                                          #8  0x00007f6a03b6c88f __clone (libc.so.6)

                                                          Stack trace of thread 4840:
                                                          #0  0x00007f6a0403dddd pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0)
                                                          #1  0x00007f69feef05d2 _ZN3std6thread4park17haf6d974156f5d62cE.llvm.9034712437990220667 (libxul.so)
                                                          #2  0x00007f69fe8eb735 _ZN9webrender14render_backend13RenderBackend3run17hd0bcb2cfb2a85856E (libxul.so)
                                                          #3  0x00007f69fe8e23ae _ZN3std10sys_common9backtrace28__rust_begin_short_backtrace17ha8eabf19ddb40422E (libxul.so)
                                                          #4  0x00007f69fe8e0cee _ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h3b456ab08f19cbebE (libxul.so)
                                                          #5  0x00007f69feef806e _ZN83_$LT$alloc..boxed..Box$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$A$GT$$GT$9call_once17h2877b2aefb0fd627E (libxul.so)
                                                          #6  0x00007f69feefa368 _ZN3std3sys4unix6thread6Thread3new12thread_start17h382c6ae14181d163E (libxul.so)
                                                          #7  0x00007f6a040373aa start_thread (libpthread.so.0)
                                                          #8  0x00007f6a03b6c88f __clone (libc.so.6)

                                                          Stack trace of thread 4836:
                                                          #0  0x00007f6a0403dddd pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0)
                                                          #1  0x00007f69e5f3ec63 n/a (radeonsi_dri.so)
                                                          #2  0x00007f69e5f3e827 n/a (radeonsi_dri.so)
                                                          #3  0x00007f6a040373aa start_thread (libpthread.so.0)
                                                          #4  0x00007f6a03b6c88f __clone (libc.so.6)

                                                          Stack trace of thread 4816:
                                                          #0  0x00007f6a03b60803 __poll (libc.so.6)
                                                          #1  0x00007f69fcaec19a _ZL11PollWrapperP8_GPollFDji (libxul.so)
                                                          #2  0x00007f6a01a661aa n/a (libglib-2.0.so.0)
                                                          #3  0x00007f6a01a698c1 g_main_context_iteration (libglib-2.0.so.0)
                                                          #4  0x00007f69fcaeb9cf _ZN14nsBaseAppShell18OnProcessNextEventEP17nsIThreadInternalb (libxul.so)
                                                          #5  0x00007f69fc931613 _ZN8nsThread16ProcessNextEventEbPb (libxul.so)
                                                          #6  0x00007f69fc933f86 _Z19NS_ProcessNextEventP9nsIThreadb (libxul.so)
                                                          #7  0x00007f69fc971bc7 _ZN7mozilla3ipc11MessagePump3RunEPN4base11MessagePump8DelegateE (libxul.so)
                                                          #8  0x00007f69fd20e08f _ZN11MessageLoop3RunEv (libxul.so)
                                                          #9  0x00007f69fdb5e9e4 _ZN14nsBaseAppShell3RunEv (libxul.so)
                                                          #10 0x00007f69fe0f1ecc _Z15XRE_RunAppShellv (libxul.so)
                                                          #11 0x00007f69fd20e08f _ZN11MessageLoop3RunEv (libxul.so)
                                                          #12 0x00007f69fe0f1b8e _Z20XRE_InitChildProcessiPPcPK12XREChildData (libxul.so)
                                                          #13 0x0000563f0d012292 main (firefox-bin)
                                                          #14 0x00007f6a03a8af0e __libc_start_main (libc.so.6)
                                                          #15 0x0000563f0d012019 _start (firefox-bin)
...

I see firefox-bin there, even though I have not opened Firefox at all before crashing Thunderbird for a second time. That is strange.

Edit

After manually disabling WebRender in prefs.js, it opens without any issues. I will now try after updating.

Edit two

These particular errors seem to be related to Firefox Nightly, not Thunderbird Daily. I definitely need to get better at reading the journalctl log.

elsandosgrande commented 4 years ago

So... The Deskto Cube family of desktop effects in KDE are much less laggy on my laptop now. That was kind of unexpected after all of this.

barolo commented 4 years ago

So... The Deskto Cube family of desktop effects in KDE are much less laggy on my laptop now. That was kind of unexpected after all of this.

I was compiling mesa with both PGO and LTO on my low-end lappy, when it worked, and I could tell without benchmarking that it had significant effect, e.g. I could play smoothly hdr/hevc movies in mpv. While it wasn't possible otherwise

elsandosgrande commented 4 years ago

@barolo Hmm... I wonder what the result would be on a Raspberry Pi.

jiblime commented 4 years ago

Is the testing going to continue on 19.2.x or will this move onto 19.3.x? The latter is currently not officially released but the commits look to be all bug fixes.

elsandosgrande commented 4 years ago

It will move at the same rate as the Gentoo repository tree. Also, since Mesa got a revision bump, I am now building it with -ftracer and -fsched2-use-superblocks.


I removed -ftracer a while back because I thought that it was only really useful with PGO, but after you mentioned -fsched2-use-superblocks on Gitter, I went digging again and I found https://andrei600.wordpress.com/2016/03/15/gcc-compiler-options-funsafe-math-optimizations-and-ftracer/, which prompted me to reintroduce -ftracer into my COMMON_FLAGS.

barolo commented 4 years ago

19.3.0_rc3 works with LTO, checked with intel and mesa drivers, firefox with webrenderer works fine

elsandosgrande commented 4 years ago

@barolo From emerge --info mesa:

=================================================================
                        Package Settings
=================================================================

media-libs/mesa-19.3.0_rc2::gentoo was built with the following:
USE="X d3d9 dri3 egl gallium gbm gles1 gles2 llvm lm-sensors opencl osmesa unwind vaapi vdpau vulkan vulkan-overlay wayland -classic -debug (-libglvnd) -pax_kernel (-selinux) -test -valgrind -xa -xvmc" ABI_X86="32 (64) -x32" VIDEO_CARDS="radeon radeonsi (-freedreno) -i915 -i965 -intel -iris (-lima) -nouveau (-panfrost) -r100 -r200 -r300 -r600 (-vc4) -virgl (-vivante) -vmware"
CFLAGS="-O3 -march=bdver4 -pipe -pthread -fira-hoist-pressure -fira-loop-pressure -fbranch-target-load-optimize -fweb -ftracer -fsched2-use-superblocks -fgraphite-identity -floop-nest-optimize -fdevirtualize-at-ltrans -fipa-pta -fno-semantic-interposition -fuse-linker-plugin -fuse-ld=bfd -Wall -Wextra -flto=2 -Wl,-O1 -Wl,--as-needed -Wl,-O3"
CXXFLAGS="-O3 -march=bdver4 -pipe -pthread -fira-hoist-pressure -fira-loop-pressure -fbranch-target-load-optimize -fweb -ftracer -fsched2-use-superblocks -fgraphite-identity -floop-nest-optimize -fdevirtualize-at-ltrans -fipa-pta -fno-semantic-interposition -fuse-linker-plugin -fuse-ld=bfd -Wall -Wextra -flto=2 -Wl,-O1 -Wl,--as-needed -Wl,-O3"
FEATURES="multilib-strict distlocks userfetch config-protect-if-modified news sfperms ebuild-locks unmerge-orphans merge-sync pid-sandbox binpkg-logs binpkg-dostrip sandbox ipc-sandbox parallel-fetch userpriv assume-digests preserve-libs xattr strict protect-owned network-sandbox usersync binpkg-docompress unknown-features-warn usersandbox unmerge-logs fixlafiles"
LDFLAGS="-O3 -march=bdver4 -pipe -pthread -fira-hoist-pressure -fira-loop-pressure -fbranch-target-load-optimize -fweb -ftracer -fsched2-use-superblocks -fgraphite-identity -floop-nest-optimize -fdevirtualize-at-ltrans -fipa-pta -fno-semantic-interposition -fuse-linker-plugin -fuse-ld=bfd -Wall -Wextra -Wl,-O1 -Wl,--as-needed -Wl,-O3 -flto=2"

I am still building the updates (LibreOffice at the moment), so I have yet to see how it all goes (I have not restarted yet).

Side note

Great, another two days down the drain on the next update pass (19.3.0_rc3 is the latest, while I have rc2)...

jiblime commented 4 years ago

19.3.0_rc3 works with LTO, checked with intel and mesa drivers, firefox with webrenderer works fine

@barolo

Do you have KDE? Can you try testing kfind and kinfocenter for runtime errors?

barolo commented 4 years ago

@jiblime Yup, I'm using Plasma/KDE. No runtime errors in any place in kinfocenter, do you have specific place in mind? Kfind is fine. Tested with both 19.3.0_rc3 and git-master. Amdgpu for now, intel later [iris]

elsandosgrande commented 4 years ago

@jiblime I have no runtime issues with KDE Plasma. Also, with 19.3.0-rc[2 or 3], Firefox WebRender has no artifacts anymore and Thunderbird Daily no longer crashes with WebRender. Yay!

barolo commented 4 years ago

I've been using LTOed mesa 19.3.0+ on intel iris and amdgpu without any bugs, webrender is fine. Seems like it's safe to remove the workaround for this branch

elsandosgrande commented 4 years ago

Well, here's hoping that I can figure out how to properly use git stash.

Jannik2099 commented 4 years ago

mesa 19.3.1 does not build with lto on arm64, even without --as-needed and seminterpos. mesa.build.log

Edit: it fails at the panfrost driver to be specific.

barolo commented 4 years ago

@Jannik2099 Does it build without LTO?

Jannik2099 commented 4 years ago

@barolo yes, builds and runs fine without lto.

elsandosgrande commented 4 years ago

So... Maybe the workaround should only be enabled for ARM computers?

barolo commented 4 years ago

@elsandosgrande Possibly, I'm running both 19.3+ and git master with amdpgpu, intel iris and they're fine being LTOed

elsandosgrande commented 4 years ago

Same here. @InBetweenNames, what's your take?

Edit

  1. Well, I only have AMD stuff and have never tried building Mesa outside of the Portage package (technically I have, but that was on Antergos way back when and it ate up my RAM and my swap space for whatever reason; rest in peace Antergos), so not quite the same, but still...
  2. @gcs-github, as this is way past Mesa 18.2.x, could you please update the title?
Jannik2099 commented 4 years ago

To be specific, lto fails at the panfrost parts, so it should disable lto when using the VIDEO_CARDS_panfrost useflag.

elsandosgrande commented 4 years ago

<tangent> As you may be able to tell, sleep deprivation and a bunch of exams (I hate to imagine what it will be like in college/university a year and a half from now) have made me less adept at finding adequate and highly specific workarounds @Jannik2099. Here's hoping that I can study in advance during January so that I may have a chance of retaining my sanity during the second semester. </tangent>

Apparently, Sandy has moved into the territory of XML

elsandosgrande commented 4 years ago

Still going strong here.

=================================================================
                        Package Settings
=================================================================

media-libs/mesa-19.3.1::gentoo was built with the following:
USE="X d3d9 dri3 egl gallium gbm gles1 gles2 llvm lm-sensors opencl osmesa unwind vaapi vdpau vulkan vulkan-overlay wayland -classic -debug -libglvnd -pax_kernel (-selinux) -test -valgrind -xa -xvmc" ABI_X86="32 (64) -x32" VIDEO_CARDS="radeon radeonsi (-freedreno) -i915 -i965 -intel -iris (-lima) -nouveau (-panfrost) -r100 -r200 -r300 -r600 (-vc4) -virgl (-vivante) -vmware"
CFLAGS="-O3 -march=bdver4 -falign-functions=32 -falign-jumps=32:8:8 -falign-loops=32:25:8 -pipe -pthread -fira-hoist-pressure -fira-loop-pressure -fbranch-target-load-optimize -fweb -ftracer -fsched2-use-superblocks -fgraphite-identity -floop-nest-optimize -fdevirtualize-at-ltrans -fipa-pta -fno-semantic-interposition -fno-plt -fuse-linker-plugin -fuse-ld=bfd -fstack-protector-all -fstack-clash-protection -Wall -Wextra -flto=2 -Wl,-O1 -Wl,--as-needed -Wl,-O3 -Wl,-z,relro -Wl,-z,now"
CXXFLAGS="-O3 -march=bdver4 -falign-functions=32 -falign-jumps=32:8:8 -falign-loops=32:25:8 -pipe -pthread -fira-hoist-pressure -fira-loop-pressure -fbranch-target-load-optimize -fweb -ftracer -fsched2-use-superblocks -fgraphite-identity -floop-nest-optimize -fdevirtualize-at-ltrans -fipa-pta -fno-semantic-interposition -fno-plt -fuse-linker-plugin -fuse-ld=bfd -fstack-protector-all -fstack-clash-protection -Wall -Wextra -flto=2 -Wl,-O1 -Wl,--as-needed -Wl,-O3 -Wl,-z,relro -Wl,-z,now"
FEATURES="config-protect-if-modified binpkg-dostrip parallel-fetch sfperms ebuild-locks usersandbox pid-sandbox userpriv assume-digests xattr binpkg-docompress strict merge-sync network-sandbox unmerge-logs binpkg-logs multilib-strict news preserve-libs unmerge-orphans fixlafiles distlocks unknown-features-warn userfetch protect-owned ipc-sandbox sandbox usersync"
LDFLAGS="-O3 -march=bdver4 -falign-functions=32 -falign-jumps=32:8:8 -falign-loops=32:25:8 -pipe -pthread -fira-hoist-pressure -fira-loop-pressure -fbranch-target-load-optimize -fweb -ftracer -fsched2-use-superblocks -fgraphite-identity -floop-nest-optimize -fdevirtualize-at-ltrans -fipa-pta -fno-semantic-interposition -fno-plt -fuse-linker-plugin -fuse-ld=bfd -fstack-protector-all -fstack-clash-protection -Wall -Wextra -Wl,-O1 -Wl,--as-needed -Wl,-O3 -Wl,-z,relro -Wl,-z,now -flto=2"
elsandosgrande commented 4 years ago

So... Given that Mesa seems to be working just fine under link-time optimization, what do you think of removing the workaround @InBetweenNames?

Jannik2099 commented 4 years ago

Update: Mesa lto with the panfrost driver on arm64 compiles fine with binutils 2.33