- Status New Reopened
- Percent Complete
- Task Type Bug Report
- Category Packages → Packages: Testing
- Assigned To No-one
- Operating System
- Severity Low
- Priority Medium
- Reported Version
- Due in Version Undecided
-
Due Date
Undecided
- Votes
- Private
Attached to Project: Archlinux32
Opened by Andreas Baumann - 13.06.2018
Last edited by Andreas Baumann - 13.09.2018
Opened by Andreas Baumann - 13.06.2018
Last edited by Andreas Baumann - 13.09.2018
FS#39 - xorg modesetting module fails with illegal instruction
[ 22.717] (EE) Illegal instruction at address 0xb632cd37
[ 22.718] (EE)
Fatal server error:
[ 22.718] (EE) Caught signal 4 (Illegal instruction). Server aborting
[ 22.719] (EE)
PID: 242 (Xorg)
UID: 0 (root)
GID: 0 (root)
Signal: 6 (ABRT)
Timestamp: Wed 2018-06-13 20:53:43 CEST (41s ago)
Command Line: /usr/lib/Xorg :0
Executable: /usr/lib/Xorg
Control Group: /user.slice/user-0.slice/session-c1.scope
Unit: session-c1.scope
Slice: user-0.slice
Session: c1
Owner UID: 0 (root)
Boot ID: ea12301d13874fac8112dad7bf566bdb
Machine ID: 2f98089cbe8d40cb8776a580d6803b58
Hostname: arch32-staging
Storage: /var/lib/systemd/coredump/core.Xorg.0.ea12301d13874fac8112dad7bf566bdb.242.1528916023000>
Message: Process 242 (Xorg) of user 0 dumped core.
Stack trace of thread 242:
#0 0x00000000b7f58d21 __kernel_vsyscall (linux-gate.so.1)
#1 0x00000000b7d749c2 raise (libc.so.6)
#2 0x00000000b7d5e71e abort (libc.so.6)
#3 0x000000000056b555 OsAbort (Xorg)
#4 0x000000000056b5d2 FatalError (Xorg)
#5 0x000000000060a93a n/a (Xorg)
#6 0x00000000b7f58d38 __kernel_rt_sigreturn (linux-gate.so.1)
#7 0x00000000b632cd37 n/a (kms_swrast_dri.so)
#8 0x00000000b5f0181f n/a (kms_swrast_dri.so)
#9 0x00000000b7f698b3 call_init.part.0 (ld-linux.so.2)
#10 0x00000000b7f699b2 _dl_init (ld-linux.so.2)
#11 0x00000000b7f6d7e0 dl_open_worker (ld-linux.so.2)
#12 0x00000000b7e7bc91 _dl_catch_exception (libc.so.6)
#13 0x00000000b7f6d077 _dl_open (ld-linux.so.2)
#14 0x00000000b7b8cb73 n/a (libdl.so.2)
#15 0x00000000b7e7bc91 _dl_catch_exception (libc.so.6)
#16 0x00000000b7e7bd40 _dl_catch_error (libc.so.6)
#17 0x00000000b7b8d333 n/a (libdl.so.2)
#18 0x00000000b7b8cc16 dlopen (libdl.so.2)
#19 0x00000000b7f2eb6e n/a (libgbm.so.1)
#20 0x00000000b7f2ecb3 n/a (libgbm.so.1)
#21 0x00000000b7f2ee24 n/a (libgbm.so.1)
#22 0x00000000b7f2f0d7 n/a (libgbm.so.1)
#23 0x00000000b7f2c9ba gbm_create_device (libgbm.so.1)
#24 0x00000000b6ef4ee4 glamor_egl_init (libglamoregl.so)
#25 0x00000000b7f49b4a n/a (modesetting_drv.so)
#26 0x000000000051c169 InitOutput (Xorg)
#27 0x000000000049d8e1 n/a (Xorg)
#28 0x00000000b7d60041 __libc_start_main (libc.so.6)
#29 0x000000000049e7e2 _start (Xorg)
#0 0xb7f3ad21 in __kernel_vsyscall () [- #1 0xb7d579c2 in raise () from /usr/lib/libc.so.6 #2 0xb7d4171e in abort () from /usr/lib/libc.so.6 #3 0x005855f5 in OsAbort () at ../xorg-server-1.20.0/os/utils.c:1350 #4 0x00585672 in AbortServer () at ../xorg-server-1.20.0/os/log.c:877 #4 0x00585672 in AbortServer () at ../xorg-server-1.20.0/os/log.c:877 #5 FatalError (f=0x65e1bc "Caught signal %d (%s). Server aborting\n") at ../xorg-server-1.20.0/os/log.c:1015 #6 0x00624b5a in OsSigHandler (signo=, sip=, unused=, signo=, sip=, unused=) at ../xorg-server-1.20.0/os/osinit.c:156 #7 #8 0xb62d5d37 in SwrJit::X86Intrinsic::X86Intrinsic (this=0xbf955e24) at ../mesa-18.1.1/src/gallium/drivers/swr/rasterizer/jitter/functionpasses/lower_x86.cpp:66 #9 std::pair, std::allocator > const, SwrJit::X86Intrinsic>::pair (this=0xbf955e0c, __x=..., __y=...) at /usr/include/c++/8.1.1/bits/stl_pair.h:301 #10 0xb5eaa81f in __static_initialization_and_destruction_0(int, int) [clone .constprop.236] () at /usr/include/c++/8.1.1/new:169 #11 0xb7f4b8b3 in call_init.part () from /lib/ld-linux.so.2 #12 0xb7f4b9b2 in _dl_init () from /lib/ld-linux.so.2 #13 0xb7f4f7e0 in dl_open_worker () from /lib/ld-linux.so.2 #14 0xb7e5ec91 in _dl_catch_exception () from /usr/lib/libc.so.6 #15 0xb7f4f077 in _dl_open () from /lib/ld-linux.so.2 #16 0xb7b6fb73 in ?? () from /usr/lib/libdl.so.2 #17 0xb7e5ec91 in _dl_catch_exception () from /usr/lib/libc.so.6 #18 0xb7e5ed40 in _dl_catch_error () from /usr/lib/libc.so.6 ---Type to continue, or q to quit--- #19 0xb7b70333 in ?? () from /usr/lib/libdl.so.2 #20 0xb7b6fc16 in dlopen () from /usr/lib/libdl.so.2 #21 0xb7f10b6e in dri_open_driver (dri=, dri=) at ../mesa-18.1.1/src/gbm/backends/dri/gbm_dri.c:354 #22 0xb7f10cb3 in dri_load_driver (dri=0x17e9660) at ../mesa-18.1.1/src/gbm/backends/dri/gbm_dri.c:439 #23 dri_screen_create_dri2 (dri=dri@entry=0x17e9660, driver_name=) at ../mesa-18.1.1/src/gbm/backends/dri/gbm_dri.c:439 #24 0xb7f10e24 in dri_screen_create_sw (dri=0x17e9660) at ../mesa-18.1.1/src/gbm/backends/dri/gbm_dri.c:539 #25 0xb7f110d7 in dri_device_create (fd=13) at ../mesa-18.1.1/src/gbm/backends/dri/gbm_dri.c:1429 #26 0xb7f0e9ba in gbm_create_device (fd=13) at ../mesa-18.1.1/src/gbm/main/gbm.c:137 #27 0xb6ebaee4 in glamor_egl_init (scrn=0x17e83a0, fd=13) at ../xorg-server-1.20.0/glamor/glamor_egl.c:894 #28 0xb7f2bb4a in try_enable_glamor (pScrn=0x17e83a0) at ../xorg-server-1.20.0/hw/xfree86/drivers/modesetting/driver.c:753 #29 PreInit (pScrn=, flags=) at ../xorg-server-1.20.0/hw/xfree86/drivers/modesetting/driver.c:972 #30 0x00536209 in InitOutput (pScreenInfo=0x6fd520 , argc=6, argv=0xbf957944) at ../xorg-server-1.20.0/hw/xfree86/common/xf86Init.c:536 #31 0x004b7991 in dix_main (envp=, argv=, argc=) at ../xorg-server-1.20.0/dix/main.c:193 #32 main (argc=, argv=, envp=) at ../xorg-server-1.20.0/dix/stubmain.c:34 => 0xb62d5d37 <+71>: vmovq -0x20(%ebp),%xmm0 0xb62d5d3c <+76>: vmovq %xmm0,0x18(%esi)Looks like AVX optimized code in libswr though I'm deleting -D swr-arches=avx,avx2 in
the diff-PKGBUILD (maybe wrongly)?
So, I read OpenSWR requires at least AVX, so we can safely drop the library for 32-bit
machines, right?
So removing swr from the gallium-drivers, then I get croaks about gallium-nine requiring
a pipe.
I'll continue to drop options in arch-meson in PKGBUILD till I get a working build..
Any help welcome.
Some docu:
Trying the following patch at the moment:
eval "$( declare -f build | \ sed ' /-D gallium-drivers=/s/,swr//g s/-D swr-arches=avx,avx2//g /gallium-drivers/s/,swr//g s/-D gallium-nine=true/-D gallium-nine=false/g s/-D osmesa=gallium/-D osmesa=classic/g s/dri-drivers=/dri-drivers=swrast,/g ' )"only glitch I see with your fix is, that the options are in one line in `declare -f build`, so the line-matching makes no sense
one line? It should actually be one line each and it worked for me? *puzzle*
This seems to work. But I'm disabling and changing an awful lot of stuff:
# disable AVX/AVX2 in openswf, makes no sense with old CPUs eval "$( declare -f build | \ sed ' /-D gallium-drivers=/s/,swr//g s/-D swr-arches=avx,avx2//g /gallium-drivers/s/,swr//g s/-D gallium-nine=true/-D gallium-nine=false/g s/-D osmesa=gallium/-D osmesa=classic/g s/dri-drivers=/dri-drivers=swrast,/g ' declare -f package_mesa | \ sed ' s@_install fakeinstall/usr/lib/d3d@#\0@g s@_install fakeinstall/usr/lib/libswrAVX.*@#\0@g ' )"Fails again with (mesa 18.1.8 on testing):