Summary: | RadeonSI : xserver crashes with Segmentation Fault | ||
---|---|---|---|
Product: | Mesa | Reporter: | samit vats <hysvats> |
Component: | Drivers/Gallium/radeonsi | Assignee: | Default DRI bug account <dri-devel> |
Status: | RESOLVED FIXED | QA Contact: | |
Severity: | critical | ||
Priority: | medium | ||
Version: | git | ||
Hardware: | Other | ||
OS: | All | ||
Whiteboard: | |||
i915 platform: | i915 features: | ||
Attachments: |
Xorg.log
dmesg Xorg.log-updated |
Created attachment 85971 [details]
dmesg
(In reply to comment #2) > 3: /usr/lib/x86_64-linux-gnu/libX11-xcb.so.1 (XGetXCBConnection+0x7) > [0x7f4c1c70d6c7] > 4: /home/atitest/install/lib/libEGL.so.1 (0x7f4c1cd51000+0x14441) > [0x7f4c1cd65441] Looks like it's trying to use the X11 EGL backend, which can't work in the X server. Was 'drm' included in the --with-egl-platforms= parameter to Mesa's configure? yes, mesa is configured with "--with-egl-platforms=x11,drm" How are you starting the X server? Does the shell which starts the X server contatin the environment variable EGL_PLATFORM=x11, or does it help if you set EGL_PLATFORM=drm? Either way, please set the environment variable EGL_LOG_LEVEL=debug for starting the X server and attach its stderr output. The Debug output is : (II) [KMS] Kernel modesetting enabled. libEGL debug: Native platform type: drm (environment overwrite) libEGL debug: ignore EGL_DRIVERS_PATH for setuid/setgid binaries libEGL debug: EGL search path is /home/atitest/install/lib/egl libEGL debug: added /home/atitest/install/lib/egl/egl_gallium.so to module array libEGL debug: added egl_dri2 to module array libEGL debug: added egl_glx to module array libEGL debug: dlopen(/home/atitest/install/lib/egl/egl_gallium.so) libEGL info: use DRM for display 0x1b741d0 libEGL debug: EGL user error 0x3001 (EGL_NOT_INITIALIZED) in eglInitialize(no usable display) libEGL info: use DRM for display 0x1b741d0 libEGL debug: EGL user error 0x3001 (EGL_NOT_INITIALIZED) in eglInitialize(no usable display) libEGL debug: EGL user error 0x3001 (EGL_NOT_INITIALIZED) in eglInitialize (EE) RADEON(0): eglInitialize() failed (EE) RADEON(0): glamor detected, failed to initialize EGL. X: /home/atitest/work/llvm/include/llvm/Support/CommandLine.h:674: void llvm::cl::parser<llvm::ScheduleDAGInstrs *(*)(llvm::MachineSchedContext *)>::addLiteralOption(const char *, const DT &, const char *) [DataType = llvm::ScheduleDAGInstrs *(*)(llvm::MachineSchedContext *), DT = llvm::ScheduleDAGInstrs *(*)(llvm::MachineSchedContext *)]: Assertion `findOption(Name) == Values.size() && "Option already exists!"' failed. xinit: giving up xinit: unable to connect to X server: Connection refused xinit: server error (In reply to comment #5) > libEGL debug: Native platform type: drm (environment overwrite) So you set EGL_PLATFORM=drm? Would be interesting to see the debugging output without that as well. > libEGL debug: dlopen(/home/atitest/install/lib/egl/egl_gallium.so) > libEGL info: use DRM for display 0x1b741d0 > libEGL debug: EGL user error 0x3001 (EGL_NOT_INITIALIZED) in > eglInitialize(no usable display) > libEGL info: use DRM for display 0x1b741d0 > libEGL debug: EGL user error 0x3001 (EGL_NOT_INITIALIZED) in > eglInitialize(no usable display) > libEGL debug: EGL user error 0x3001 (EGL_NOT_INITIALIZED) in eglInitialize > (EE) RADEON(0): eglInitialize() failed > (EE) RADEON(0): glamor detected, failed to initialize EGL. That's not the same crash anymore, but 'just' an EGL initialization failure. Does it get further if you set EGL_DRIVER=egl_dri2 as well? The Debug output with EGL_DRIVER=egl_dri2 II) [KMS] Kernel modesetting enabled. libEGL debug: Native platform type: drm (environment overwrite) libEGL debug: ignore EGL_DRIVERS_PATH for setuid/setgid binaries libEGL debug: EGL search path is /home/atitest/install/lib/egl libEGL debug: added egl_dri2 to module array libEGL debug: the best driver is DRI2 Backtrace: 0: /usr/bin/X (xorg_backtrace+0x28) [0x55f4f8] 1: /usr/bin/X (0x400000+0x1631b9) [0x5631b9] 2: /lib/x86_64-linux-gnu/libpthread.so.0 (0x7f41be508000+0xfbd0) [0x7f41be517bd0] 3: /home/atitest/install/lib/dri/radeonsi_dri.so (radeon_llvm_compile+0xa5) [0x7f41b8d482d5] 4: /home/atitest/install/lib/dri/radeonsi_dri.so (si_compile_llvm+0x70) [0x7f41b8d3a7d0] 5: /home/atitest/install/lib/dri/radeonsi_dri.so (si_pipe_shader_create+0x50c) [0x7f41b8d3af7c] 6: /home/atitest/install/lib/dri/radeonsi_dri.so (si_shader_select+0x195) [0x7f41b8d43685] 7: /home/atitest/install/lib/dri/radeonsi_dri.so (0x7f41b8a08000+0x33b878) [0x7f41b8d43878] 8: /home/atitest/install/lib/dri/radeonsi_dri.so (0x7f41b8a08000+0x17cf7e) [0x7f41b8b84f7e] 9: /home/atitest/install/lib/dri/radeonsi_dri.so (0x7f41b8a08000+0x17da8e) [0x7f41b8b85a8e] 10: /home/atitest/install/lib/dri/radeonsi_dri.so (0x7f41b8a08000+0x14b807) [0x7f41b8b53807] 11: /home/atitest/install/lib/dri/radeonsi_dri.so (0x7f41b8a08000+0x148687) [0x7f41b8b50687] 12: /home/atitest/install/lib/dri/radeonsi_dri.so (0x7f41b8a08000+0x15befd) [0x7f41b8b63efd] 13: /home/atitest/install/lib/dri/radeonsi_dri.so (0x7f41b8a08000+0x135024) [0x7f41b8b3d024] 14: /home/atitest/install/lib/libglamor.so.0 (0x7f41bbbfc000+0x7a2f) [0x7f41bbc03a2f] 15: /home/atitest/install/lib/libglamor.so.0 (0x7f41bbbfc000+0x7f75) [0x7f41bbc03f75] 16: /home/atitest/install/lib/libglamor.so.0 (0x7f41bbbfc000+0x8513) [0x7f41bbc04513] 17: /home/atitest/install/lib/libglamor.so.0 (glamor_glyphs_init+0x26e) [0x7f41bbc0821e] 18: /home/atitest/install/lib/xorg/modules/drivers/radeon_drv.so (0x7f41b94dd000+0x4bb85) [0x7f41b9528b85] 19: /home/atitest/install/lib/xorg/modules/drivers/radeon_drv.so (0x7f41b94dd000+0x44df6) [0x7f41b9521df6] 20: /usr/bin/X (0x400000+0x9d867) [0x49d867] 21: /usr/bin/X (0x400000+0x22fbc) [0x422fbc] 22: /lib/x86_64-linux-gnu/libc.so.6 (__libc_start_main+0xf5) [0x7f41bd57eea5] 23: /usr/bin/X (0x400000+0x233dd) [0x4233dd] Segmentation fault at address (nil) Fatal server error: Caught signal 11 (Segmentation fault). Server aborting (In reply to comment #7) > The Debug output with EGL_DRIVER=egl_dri2 Yet another crash... Can you get a backtrace for this one with gdb? You'll need to do that from a remote shell, e.g. via ssh. I think it is a regression issue. The issue is resolved with upgrading mesa to latest 9.3.0-devel(git-59157d1) and with glamor-0.5.0 (In reply to comment #9) > The issue is resolved with upgrading mesa to latest 9.3.0-devel(git-59157d1) > and with glamor-0.5.0 Looks like you were hitting this crash again in bug 69961. Was it upgrading Mesa or downgrading glamor which resolved it before? Sorry for the delay. I was under the impression that bug is closed. I think downgarding glamor resolved the issue that time but again segmentation fault is observed on startx when building glamor with git master with xv enabled by default. Xserver version is 1.12.99.905 and this is the backtrace: Initializing built-in extension DRI2 LoaderOpen(/home/atitest/install/lib/xorg/modules/libglamoregl.so) LoaderOpen(/home/atitest/install/lib/xorg/modules/extensions/libglx.so) Loading extension GLX LoaderOpen(/home/atitest/install/lib/xorg/modules/drivers/radeon_drv.so) (II) [KMS] Kernel modesetting enabled. LoaderOpen(/home/atitest/install/lib/xorg/modules/libglamoregl.so) LoaderOpen(/home/atitest/install/lib/xorg/modules/libfb.so) xf86RegisterRootWindowProperty(0, 70, 19, 32, 1, 0x141f4a0) new property filled creating xf86RegisteredPropertiesTable[] size 1 xf86RegisteredPropertiesTable 0x1423a80 xf86RegisteredPropertiesTable[0] (nil) xf86RegisterRootWindowProperty succeeded InitOutput - xf86Screens[0]->pScreen = 0x1423ab0 xf86Screens[0]->pScreen->CreateWindow = 0x7f15cfb37380 Sync Extension 3.1 XFree86VidModeExtensionInit Error: nConfigOptions (11) does not match the actual number of options in __driConfigOptions (13). (EE) (EE) Backtrace: (EE) 0: /usr/bin/X (xorg_backtrace+0x36) [0x58a276] (EE) 1: /usr/bin/X (0x400000+0x18e0d9) [0x58e0d9] (EE) 2: /lib/x86_64-linux-gnu/libpthread.so.0 (0x7f15d876f000+0xfbd0) [0x7f15d877ebd0] (EE) 3: /home/atitest/install/lib/dri/radeonsi_dri.so (0x7f15d2907000+0x51b4a5) [0x7f15d2e224a5] (EE) 4: /home/atitest/install/lib/dri/radeonsi_dri.so (0x7f15d2907000+0x50c15a) [0x7f15d2e1315a] (EE) 5: /home/atitest/install/lib/dri/radeonsi_dri.so (0x7f15d2907000+0x50c974) [0x7f15d2e13974] (EE) 6: /home/atitest/install/lib/dri/radeonsi_dri.so (0x7f15d2907000+0x513eba) [0x7f15d2e1aeba] (EE) 7: /home/atitest/install/lib/dri/radeonsi_dri.so (0x7f15d2907000+0x5141e8) [0x7f15d2e1b1e8] (EE) 8: /home/atitest/install/lib/dri/radeonsi_dri.so (0x7f15d2907000+0x3552fe) [0x7f15d2c5c2fe] (EE) 9: /home/atitest/install/lib/dri/radeonsi_dri.so (0x7f15d2907000+0x355e0e) [0x7f15d2c5ce0e] (EE) 10: /home/atitest/install/lib/dri/radeonsi_dri.so (0x7f15d2907000+0x321267) [0x7f15d2c28267] (EE) 11: /home/atitest/install/lib/dri/radeonsi_dri.so (0x7f15d2907000+0x31e0a7) [0x7f15d2c250a7] (EE) 12: /home/atitest/install/lib/dri/radeonsi_dri.so (0x7f15d2907000+0x33199d) [0x7f15d2c3899d] (EE) 13: /home/atitest/install/lib/dri/radeonsi_dri.so (0x7f15d2907000+0x30aa04) [0x7f15d2c11a04] (EE) 14: /home/atitest/install/lib/libglamor.so.0 (0x7f15d6063000+0x88cf) [0x7f15d606b8cf] (EE) 15: /home/atitest/install/lib/libglamor.so.0 (0x7f15d6063000+0x8ef8) [0x7f15d606bef8] (EE) 16: /home/atitest/install/lib/libglamor.so.0 (0x7f15d6063000+0x9503) [0x7f15d606c503] (EE) 17: /home/atitest/install/lib/libglamor.so.0 (glamor_glyphs_init+0x25d) [0x7f15d60704ad] (EE) 18: /home/atitest/install/lib/xorg/modules/drivers/radeon_drv.so (0x7f15d416c000+0x4c968) [0x7f15d41b8968] (EE) 19: /home/atitest/install/lib/xorg/modules/drivers/radeon_drv.so (0x7f15d416c000+0x4554e) [0x7f15d41b154e] (EE) 20: /usr/bin/X (0x400000+0xad31e) [0x4ad31e] (EE) 21: /usr/bin/X (0x400000+0x276ed) [0x4276ed] (EE) 22: /lib/x86_64-linux-gnu/libc.so.6 (__libc_start_main+0xf5) [0x7f15d75d9ea5] (EE) 23: /usr/bin/X (0x400000+0x27b7d) [0x427b7d] (EE) (EE) Segmentation fault at address 0x0 The updated Xorg.log is also attached. Created attachment 87977 [details]
Xorg.log-updated
(In reply to comment #11) > I think downgarding glamor resolved the issue that time [...] Does downgrading glamor still help? If yes, can you bisect which glamor change triggered the problem? The issue is fixed with following configuration Mesa : 723f047a3bc21b536d27ab1c0d6cc82f93002648(2013-10-31) glamor : 16c86bd3d8ba92c50fc96efb5a39a7725a16d785(2013-10-19) xf86-video-ati : f1dc677e79cd7a88d7379a934ebc7d87a3b18805(2013-10-01) with xorg-server-1.14.3 Hence closing the Bug |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.
Created attachment 85970 [details] Xorg.log Driver Stack Details: ===================== 1) Kernel-3.10.5-031005-generic 2) drm-2.4.46 3) Mesa-9.2 4) Xorg-server-1.11.4 5) xf86-video-ati- master 6) glamor-0.5.1 7) LLVM-3.3 System Configuration: ===================== Asic : Tahiti XT (ID-6798) O.S. : Ubuntu-13.04 (64 bit) X server crashes with Backtrace =============================== 0: /usr/bin/X (xorg_backtrace+0x28) [0x55f4f8] 1: /usr/bin/X (0x400000+0x1631b9) [0x5631b9] 2: /lib/x86_64-linux-gnu/libpthread.so.0 (0x7f4c1f21a000+0xfbd0) [0x7f4c1f229bd0] 3: /usr/lib/x86_64-linux-gnu/libX11-xcb.so.1 (XGetXCBConnection+0x7) [0x7f4c1c70d6c7] 4: /home/atitest/install/lib/libEGL.so.1 (0x7f4c1cd51000+0x14441) [0x7f4c1cd65441] 5: /home/atitest/install/lib/libEGL.so.1 (0x7f4c1cd51000+0xc7cb) [0x7f4c1cd5d7cb] 6: /home/atitest/install/lib/libEGL.so.1 (0x7f4c1cd51000+0xcaf3) [0x7f4c1cd5daf3] 7: /home/atitest/install/lib/libEGL.so.1 (eglInitialize+0xb2) [0x7f4c1cd58a62] 8: /home/atitest/install/lib/xorg/modules/libglamoregl.so (glamor_egl_init+0xcf) [0x7f4c1cf70f7f] 9: /home/atitest/install/lib/xorg/modules/drivers/radeon_drv.so (0x7f4c1a1f1000+0x4bce5) [0x7f4c1a23cce5] 10: /home/atitest/install/lib/xorg/modules/drivers/radeon_drv.so (0x7f4c1a1f1000+0x45974) [0x7f4c1a236974] 11: /usr/bin/X (InitOutput+0x8ba) [0x4703ea] 12: /usr/bin/X (0x400000+0x22f66) [0x422f66] 13: /lib/x86_64-linux-gnu/libc.so.6 (__libc_start_main+0xf5) [0x7f4c1e290ea5] 14: /usr/bin/X (0x400000+0x233dd) [0x4233dd] Segmentation fault at address (nil) Fatal server error: Caught signal 11 (Segmentation fault). Server aborting