Bug 74648 - [NV86] Ultima IX (wine) movie playback crashes game
Summary: [NV86] Ultima IX (wine) movie playback crashes game
Status: RESOLVED INVALID
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/nouveau (show other bugs)
Version: unspecified
Hardware: x86-64 (AMD64) Linux (All)
: medium normal
Assignee: Nouveau Project
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-02-07 06:10 UTC by Christopher Thielen
Modified: 2015-10-22 04:34 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Description Christopher Thielen 2014-02-07 06:10:57 UTC
I have a game (Ultima IX) which crashes during movie playback in Wine. It's very likely Wine is passing some incorrect parameters around but the crash is ultimately in the Nouveau driver.

This is a Dell Latitude D630 using, I believe, the NV86 chipset. I am running Fedora 20 with the latest updates as of February 6, 2014 which includes xorg-x11-server version 1.14.4 and Nouveau 1.0.9.

The game also crashes when you quit and the backtrace looks similar: something happens in Nouveau concerning malloc and gsignal and a crash occurs.

Note the application crashes, does not restore the proper screen resolution, but the Xorg server runs fine and I can merely open terminal and use "xrandr --size 1280x800" to fix my resolution.

Here is the backtrace:
Unhandled exception: assertion failed in 32-bit code (0xf773b430).
Register dump:
 CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
 EIP:f773b430 ESP:0032e334 EBP:0032e5f8 EFLAGS:00000296(   - --  I S -A-P- )
 EAX:00000000 EBX:000018fe ECX:000018fe EDX:00000006
 ESI:00000046 EDI:f7523000
Stack dump:
0x0032e334:  0032e5f8 00000006 000018fe f7397b96
0x0032e344:  f7523000 0032e3e4 f73993d3 00000006
0x0032e354:  0032e364 00000000 61333062 61383464
0x0032e364:  00000020 00000000 00000000 00000000
0x0032e374:  00000000 00000000 00000000 00000000
0x0032e384:  00000000 00000000 00000000 00000000
Backtrace:
=>0 0xf773b430 __kernel_vsyscall+0x10() in [vdso].so (0x0032e5f8)
  1 0xf7397b96 gsignal+0x45() in libc.so.6 (0x0032e5f8)
  2 0xf73993d3 abort+0x142() in libc.so.6 (0x0032e5f8)
  3 0xf73d72f8 __libc_message+0x297() in libc.so.6 (0x0032e5f8)
  4 0xf73ddb24 malloc_printerr+0xe3() in libc.so.6 (0x0032e624)
  5 0xf73deec0 _int_free+0x6bf() in libc.so.6 (0x7bfa6c58)
  6 0x7ca2fe69 in nouveau_dri.so (+0x1e8e68) (0x7d154698)
  7 0x7ca2fe4b in nouveau_dri.so (+0x1e8e4a) (0x7d154698)
  8 0x7c9a832b in nouveau_dri.so (+0x16132a) (0x7d154698)
  9 0x7c9b5e34 in nouveau_dri.so (+0x16ee33) (0x7d154698)
  10 0x7c99ed2e in nouveau_dri.so (+0x157d2d) (0x7d154698)
  11 0x7ca4eab9 in nouveau_dri.so (+0x207ab8) (0x7d154698)
  12 0x7c92a092 in nouveau_dri.so (+0xe3091) (0x7d154698)
  13 0x7c92a569 in nouveau_dri.so (+0xe3568) (0x7d154698)
  14 0x7c92a5b5 in nouveau_dri.so (+0xe35b4) (0x0032e838)
  15 0x7c92a2a0 in nouveau_dri.so (+0xe329f) (0x0032e838)
  16 0x7c9276ff in nouveau_dri.so (+0xe06fe) (0x0032e8b8)
  17 0x7d423e66 shared_dispatch_stub_650+0x25() in libglapi.so.0 (0x0032e8b8)
  18 0x7e7d8d0a in wined3d (+0x68d09) (0x0032e8b8)
  19 0x7e7d92a9 in wined3d (+0x692a8) (0x0032e8d8)
  20 0x7e7d93cd in wined3d (+0x693cc) (0x0032e908)
  21 0x7e7cb1d3 in wined3d (+0x5b1d2) (0x0032e938)
  22 0x7e7b2586 wined3d_device_uninit_3d+0x155() in wined3d (0x0032e988)
  23 0x7d8e9a93 in d3d9 (+0x19a92) (0x0032e9d8)
0xf773b430 __kernel_vsyscall+0x10 in [vdso].so: popl	%ebp
Modules:
Module	Address			Debug info	Name (120 modules)
PE	  400000- 1338000	Deferred        u9
PE	 7900000- 7b18000	Deferred        3dfxspl2
PE	10000000-16791000	Export          glide2x
ELF	7a212000-7b800000	Deferred        libllvm-3.3.so
ELF	7b800000-7ba5e000	Deferred        kernel32<elf>
  \-PE	7b810000-7ba5e000	\               kernel32
ELF	7bc00000-7bce3000	Deferred        ntdll<elf>
  \-PE	7bc10000-7bce3000	\               ntdll
ELF	7bf00000-7bf04000	Deferred        <wine-loader>
ELF	7c086000-7c09f000	Deferred        libresolv.so.2
ELF	7c09f000-7c0cc000	Deferred        libvorbis.so.0
ELF	7c0cc000-7c157000	Deferred        libvorbisenc.so.2
ELF	7c157000-7c1a1000	Deferred        libflac.so.8
ELF	7c1a1000-7c1bb000	Deferred        libnsl.so.1
ELF	7c1bb000-7c225000	Deferred        libsndfile.so.1
ELF	7c406000-7c453000	Deferred        libdbus-1.so.3
ELF	7c453000-7c4c7000	Deferred        libpulsecommon-4.0.so
ELF	7c847000-7d0a7000	Dwarf           nouveau_dri.so
ELF	7d16e000-7d174000	Deferred        libattr.so.1
ELF	7d174000-7d181000	Deferred        libgsm.so.1
ELF	7d201000-7d21e000	Deferred        libgcc_s.so.1
ELF	7d30a000-7d312000	Deferred        libdrm_nouveau.so.2
ELF	7d312000-7d319000	Deferred        libffi.so.6
ELF	7d319000-7d342000	Deferred        liblzma.so.5
ELF	7d342000-7d3ad000	Deferred        libpcre.so.1
ELF	7d3ad000-7d3d1000	Deferred        libselinux.so.1
ELF	7d3d1000-7d3df000	Deferred        libdrm.so.2
ELF	7d3df000-7d3e5000	Deferred        libxcb-dri2.so.0
ELF	7d3e5000-7d400000	Deferred        libxcb-glx.so.0
ELF	7d400000-7d403000	Deferred        libx11-xcb.so.1
ELF	7d403000-7d407000	Deferred        libxdamage.so.1
ELF	7d407000-7d445000	Dwarf           libglapi.so.0
ELF	7d445000-7d4c0000	Deferred        libgl.so.1
ELF	7d4c4000-7d4cc000	Deferred        libogg.so.0
ELF	7d4cc000-7d4d2000	Deferred        libuuid.so.1
ELF	7d4d2000-7d4db000	Deferred        librt.so.1
ELF	7d4db000-7d4e2000	Deferred        libasyncns.so.0
ELF	7d4e2000-7d4ec000	Deferred        libwrap.so.0
ELF	7d4ec000-7d4f3000	Deferred        libxtst.so.6
ELF	7d4f3000-7d50d000	Deferred        libice.so.6
ELF	7d50d000-7d55e000	Deferred        libpulse.so.0
ELF	7d57e000-7d5a6000	Deferred        winepulse<elf>
  \-PE	7d580000-7d5a6000	\               winepulse
ELF	7d5a6000-7d5c9000	Deferred        mmdevapi<elf>
  \-PE	7d5b0000-7d5c9000	\               mmdevapi
ELF	7d868000-7d86e000	Deferred        libcap.so.2
ELF	7d86e000-7d877000	Deferred        libsm.so.6
ELF	7d877000-7d882000	Deferred        libjson-c.so.2
ELF	7d8a8000-7d8cd000	Deferred        imm32<elf>
  \-PE	7d8b0000-7d8cd000	\               imm32
ELF	7d8cd000-7d90b000	Dwarf           d3d9<elf>
  \-PE	7d8d0000-7d90b000	\               d3d9
ELF	7d92f000-7d966000	Deferred        uxtheme<elf>
  \-PE	7d940000-7d966000	\               uxtheme
ELF	7d988000-7d98e000	Deferred        libxfixes.so.3
ELF	7d98e000-7d99a000	Deferred        libxcursor.so.1
ELF	7d99a000-7d9ab000	Deferred        libxi.so.6
ELF	7d9ab000-7d9b6000	Deferred        libxrender.so.1
ELF	7d9b6000-7d9bc000	Deferred        libxxf86vm.so.1
ELF	7d9bc000-7d9c0000	Deferred        libxau.so.6
ELF	7d9c0000-7d9e4000	Deferred        libxcb.so.1
ELF	7d9e4000-7db20000	Deferred        libx11.so.6
ELF	7db20000-7db33000	Deferred        libxext.so.6
ELF	7db53000-7dbe9000	Deferred        winex11<elf>
  \-PE	7db60000-7dbe9000	\               winex11
ELF	7dc11000-7dc3a000	Deferred        libexpat.so.1
ELF	7dc3a000-7dc77000	Deferred        libfontconfig.so.1
ELF	7dc77000-7dcae000	Deferred        libpng16.so.16
ELF	7dcae000-7dcc5000	Deferred        libz.so.1
ELF	7dcc5000-7dd67000	Deferred        libfreetype.so.6
ELF	7dd67000-7dd89000	Deferred        libtinfo.so.5
ELF	7dd89000-7ddb1000	Deferred        libncurses.so.5
ELF	7ddd1000-7de14000	Deferred        winspool<elf>
  \-PE	7dde0000-7de14000	\               winspool
ELF	7de14000-7e04c000	Deferred        shell32<elf>
  \-PE	7de20000-7e04c000	\               shell32
ELF	7e04c000-7e138000	Deferred        comdlg32<elf>
  \-PE	7e050000-7e138000	\               comdlg32
ELF	7e138000-7e1b4000	Deferred        shlwapi<elf>
  \-PE	7e150000-7e1b4000	\               shlwapi
ELF	7e1b4000-7e2ed000	Deferred        oleaut32<elf>
  \-PE	7e1d0000-7e2ed000	\               oleaut32
ELF	7e2ed000-7e3f8000	Deferred        comctl32<elf>
  \-PE	7e2f0000-7e3f8000	\               comctl32
ELF	7e3f8000-7e424000	Deferred        msvfw32<elf>
  \-PE	7e400000-7e424000	\               msvfw32
ELF	7e424000-7e51e000	Deferred        quartz<elf>
  \-PE	7e440000-7e51e000	\               quartz
ELF	7e51e000-7e549000	Deferred        msacm32<elf>
  \-PE	7e520000-7e549000	\               msacm32
ELF	7e549000-7e602000	Deferred        winmm<elf>
  \-PE	7e550000-7e602000	\               winmm
ELF	7e602000-7e64d000	Deferred        dsound<elf>
  \-PE	7e610000-7e64d000	\               dsound
ELF	7e64d000-7e75d000	Deferred        opengl32<elf>
  \-PE	7e670000-7e75d000	\               opengl32
ELF	7e75d000-7e89f000	Dwarf           wined3d<elf>
  \-PE	7e770000-7e89f000	\               wined3d
ELF	7e89f000-7e916000	Deferred        ddraw<elf>
  \-PE	7e8b0000-7e916000	\               ddraw
ELF	7e916000-7e99b000	Deferred        rpcrt4<elf>
  \-PE	7e920000-7e99b000	\               rpcrt4
ELF	7e99b000-7eabe000	Deferred        gdi32<elf>
  \-PE	7e9b0000-7eabe000	\               gdi32
ELF	7eabe000-7ec1d000	Deferred        user32<elf>
  \-PE	7ead0000-7ec1d000	\               user32
ELF	7ec1d000-7ec91000	Deferred        advapi32<elf>
  \-PE	7ec30000-7ec91000	\               advapi32
ELF	7ec91000-7edd3000	Deferred        ole32<elf>
  \-PE	7ecb0000-7edd3000	\               ole32
ELF	7efd3000-7efe0000	Deferred        libnss_files.so.2
ELF	7efe6000-7f000000	Deferred        version<elf>
  \-PE	7eff0000-7f000000	\               version
ELF	f731c000-f7363000	Deferred        libm.so.6
ELF	f7364000-f7369000	Deferred        libdl.so.2
ELF	f7369000-f7527000	Dwarf           libc.so.6
ELF	f7527000-f7542000	Deferred        libpthread.so.0
ELF	f7542000-f76f8000	Dwarf           libwine.so.1
ELF	f7719000-f773b000	Deferred        ld-linux.so.2
ELF	f773b000-f773c000	Dwarf           [vdso].so
Threads:
process  tid      prio (all id:s are in hex)
00000008 (D) C:\GOG Games\Ultima IX - Ascension\u9.exe
	00000027   15
	00000025   15
	00000024    0
	00000023    0
	00000009    0 <==
0000000e services.exe
	0000001e    0
	0000001d    0
	00000014    0
	00000010    0
	0000000f    0
00000012 winedevice.exe
	0000001a    0
	00000019    0
	00000017    0
	00000013    0
0000001b plugplay.exe
	00000020    0
	0000001f    0
	0000001c    0
00000021 explorer.exe
	00000022    0
System information:
    Wine build: wine-1.7.8
    Platform: i386 (WOW64)
    Host system: Linux
    Host version: 3.12.8-300.fc20.x86_64
Comment 1 Ilia Mirkin 2014-02-07 06:34:59 UTC
What version of mesa are you using? Could you compile a (32-bit) mesa with debug symbols so that we can better see what's going on? Alternatively, could you capture an apitrace that crashes the driver? That would make debugging (and verifying solutions) easier.

Or perhaps fedora includes the debuginfo for that nouveau_dri.so in some location wine wasn't aware of, and one could use addr2line with it? Not sure exactly how you'd do that though -- been a while since I've done it manually.

Please do verify your chipset (dmesg | grep -i chipset).

[As for the resolution not being restored, not sure what you want nouveau to do about it... it just responds to requests to change resolutions/etc. I think the whole "restore" concept is just lacking in the API's in general.]
Comment 2 Christopher Thielen 2014-02-08 01:04:23 UTC
Good point on the restoring to fullscreen, I suppose it would return if the program wasn't crashing.

Mesa looks to be v9.2.5, here are the relevant RPMs installed:

mesa-libgbm-9.2.5-1.20131220.fc20.i686
mesa-libGL-devel-9.2.5-1.20131220.fc20.i686
mesa-libglapi-9.2.5-1.20131220.fc20.i686
mesa-libgbm-9.2.5-1.20131220.fc20.x86_64
mesa-libglapi-9.2.5-1.20131220.fc20.x86_64
mesa-libGLU-9.0.0-4.fc20.i686
mesa-dri-drivers-9.2.5-1.20131220.fc20.x86_64
mesa-libxatracker-9.2.5-1.20131220.fc20.x86_64
mesa-filesystem-9.2.5-1.20131220.fc20.i686
mesa-libGL-9.2.5-1.20131220.fc20.x86_64
mesa-libGLES-devel-9.2.5-1.20131220.fc20.x86_64
mesa-libOSMesa-9.2.5-1.20131220.fc20.x86_64
mesa-libGL-9.2.5-1.20131220.fc20.i686
mesa-libGLU-devel-9.0.0-4.fc20.i686
mesa-libwayland-egl-9.2.5-1.20131220.fc20.x86_64
mesa-libEGL-9.2.5-1.20131220.fc20.x86_64
mesa-libGLU-9.0.0-4.fc20.x86_64
mesa-libGLES-9.2.5-1.20131220.fc20.x86_64
mesa-libEGL-9.2.5-1.20131220.fc20.i686
mesa-libGLU-devel-9.0.0-4.fc20.x86_64
mesa-libEGL-devel-9.2.5-1.20131220.fc20.x86_64
mesa-libOSMesa-devel-9.2.5-1.20131220.fc20.i686
mesa-filesystem-9.2.5-1.20131220.fc20.x86_64
mesa-libGL-devel-9.2.5-1.20131220.fc20.x86_64
mesa-libOSMesa-9.2.5-1.20131220.fc20.i686
mesa-dri-drivers-9.2.5-1.20131220.fc20.i686

'dmesg | grep -i chipset' returns:
[    2.805539] nouveau  [  DEVICE][0000:01:00.0] Chipset: G86 (NV86)

I'll post the traceback with debugging symbols once I figure out how to recompile Mesa - it's been a while. :)
Comment 3 Christopher Thielen 2014-02-15 22:29:15 UTC
I'm having trouble building Mesa-9.2.5. I can try from the source RPM if I can't get this working but:

Untarred the package and built with --enable-32-bit and --enable-debug. Got a complaint about not having aclocal-1.14 (Fedora 20 has aclocal-1.13, but it's strange aclocal is required as I didn't touch configure.ac). Had to run 'autoreconf -fi', then ./configure with the two flags again and that got it building.

Ran into a linking error though (note that I _have_ the i686 version of glibc installed as well as the x86_64):

  CPPAS    sse_xform2.lo
  CPPAS    sse_xform3.lo
  CPPAS    sse_xform4.lo
  CPPAS    sse_normal.lo
  CPPAS    read_rgba_span_x86.lo
  CXXLD    libdricore9.2.5.la
/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-redhat-linux/4.8.2/libstdc++.so when searching for -lstdc++
/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-redhat-linux/4.8.2/../../../../lib64/libm.so when searching for -lm
/bin/ld: skipping incompatible /lib/../lib64/libm.so when searching for -lm
/bin/ld: skipping incompatible /usr/lib/../lib64/libm.so when searching for -lm
/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-redhat-linux/4.8.2/../../../../lib64/libc.so when searching for -lc
/bin/ld: skipping incompatible /lib/../lib64/libc.so when searching for -lc
/bin/ld: skipping incompatible /usr/lib/../lib64/libc.so when searching for -lc
/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-redhat-linux/4.8.2/libgcc_s.so when searching for -lgcc_s
/bin/ld: i386:x86-64 architecture of input file `/usr/lib/gcc/x86_64-redhat-linux/4.8.2/../../../../lib64/crti.o' is incompatible with i386 output
/bin/ld: i386:x86-64 architecture of input file `/usr/lib/gcc/x86_64-redhat-linux/4.8.2/crtbeginS.o' is incompatible with i386 output
/bin/ld: i386:x86-64 architecture of input file `/usr/lib/gcc/x86_64-redhat-linux/4.8.2/crtendS.o' is incompatible with i386 output
/bin/ld: i386:x86-64 architecture of input file `/usr/lib/gcc/x86_64-redhat-linux/4.8.2/../../../../lib64/crtn.o' is incompatible with i386 output
collect2: error: ld returned 1 exit status
gmake[4]: *** [libdricore9.2.5.la] Error 1
gmake[4]: Leaving directory `/usr/local/src/Mesa-9.2.5/src/mesa/libdricore'
gmake[3]: *** [all-recursive] Error 1
gmake[3]: Leaving directory `/usr/local/src/Mesa-9.2.5/src/mesa'
gmake[2]: *** [all] Error 2
gmake[2]: Leaving directory `/usr/local/src/Mesa-9.2.5/src/mesa'
gmake[1]: *** [all-recursive] Error 1
gmake[1]: Leaving directory `/usr/local/src/Mesa-9.2.5/src'
gmake: *** [all-recursive] Error 1

Any idea what's going on?

Out of curiosity, is the reason you need this Mesa to be 32-bit because Wine runs in 32-bit mode? Wouldn't a 32-bit Xorg application still make calls to a 64-bit Xorg and 64-bit Xorg Nouveau driver just fine? I'm not too knowledgable on these matters however.
Comment 4 Ilia Mirkin 2014-02-15 22:36:41 UTC
(In reply to comment #3)
> I'm having trouble building Mesa-9.2.5. I can try from the source RPM if I
> can't get this working but:
> 
> Untarred the package and built with --enable-32-bit and --enable-debug. Got
> a complaint about not having aclocal-1.14 (Fedora 20 has aclocal-1.13, but
> it's strange aclocal is required as I didn't touch configure.ac). Had to run
> 'autoreconf -fi', then ./configure with the two flags again and that got it
> building.
> 
> Ran into a linking error though (note that I _have_ the i686 version of
> glibc installed as well as the x86_64):
> 
>   CPPAS    sse_xform2.lo
>   CPPAS    sse_xform3.lo
>   CPPAS    sse_xform4.lo
>   CPPAS    sse_normal.lo
>   CPPAS    read_rgba_span_x86.lo
>   CXXLD    libdricore9.2.5.la
> /bin/ld: skipping incompatible
> /usr/lib/gcc/x86_64-redhat-linux/4.8.2/libstdc++.so when searching for
> -lstdc++
> /bin/ld: skipping incompatible
> /usr/lib/gcc/x86_64-redhat-linux/4.8.2/../../../../lib64/libm.so when
> searching for -lm
> /bin/ld: skipping incompatible /lib/../lib64/libm.so when searching for -lm
> /bin/ld: skipping incompatible /usr/lib/../lib64/libm.so when searching for
> -lm
> /bin/ld: skipping incompatible
> /usr/lib/gcc/x86_64-redhat-linux/4.8.2/../../../../lib64/libc.so when
> searching for -lc
> /bin/ld: skipping incompatible /lib/../lib64/libc.so when searching for -lc
> /bin/ld: skipping incompatible /usr/lib/../lib64/libc.so when searching for
> -lc
> /bin/ld: skipping incompatible
> /usr/lib/gcc/x86_64-redhat-linux/4.8.2/libgcc_s.so when searching for -lgcc_s
> /bin/ld: i386:x86-64 architecture of input file
> `/usr/lib/gcc/x86_64-redhat-linux/4.8.2/../../../../lib64/crti.o' is
> incompatible with i386 output
> /bin/ld: i386:x86-64 architecture of input file
> `/usr/lib/gcc/x86_64-redhat-linux/4.8.2/crtbeginS.o' is incompatible with
> i386 output
> /bin/ld: i386:x86-64 architecture of input file
> `/usr/lib/gcc/x86_64-redhat-linux/4.8.2/crtendS.o' is incompatible with i386
> output
> /bin/ld: i386:x86-64 architecture of input file
> `/usr/lib/gcc/x86_64-redhat-linux/4.8.2/../../../../lib64/crtn.o' is
> incompatible with i386 output
> collect2: error: ld returned 1 exit status
> 
> Any idea what's going on?

Not familiar with this linker error, sorry. However SOMEONE is sticking their x86_64 nose into an i386 build where it doesn't belong. Did you do CFLAGS="-m32" CXXFLAGS="-m32"? Oh, perhaps you also need to do LDFLAGS="-m32" as well?

e.g.

./configure --enable-32-bit --enable-debug CFLAGS="-m32" CXXFLAGS="-m32" LDFLAGS="-m32"


> 
> Out of curiosity, is the reason you need this Mesa to be 32-bit because Wine
> runs in 32-bit mode? Wouldn't a 32-bit Xorg application still make calls to
> a 64-bit Xorg and 64-bit Xorg Nouveau driver just fine? I'm not too
> knowledgable on these matters however.

What you're saying is all true. The problem is that wine links against libGL, which must be 32-bit, which in turn includes all the nouveau mesa stuff, which in turn must also be 32-bit. No Xorg interactions involved :) (Well, a few, to get surfaces to draw to/etc.) I guess the problem with you reasoning is that "nouveau driver" is not a well-defined term. Could be the kernel, ddx, or mesa (or libdrm).
Comment 5 Christopher Thielen 2014-02-16 00:57:53 UTC
Getting closer ...

With "./configure --enable-32-bit --enable-debug CFLAGS="-m32" CXXFLAGS="-m32" LDFLAGS="-m32"" I now get as far as:

  CC       eglscreen.lo
  CC       eglstring.lo
  CC       eglsurface.lo
  CC       eglsync.lo
  CCLD     libEGL.la
/bin/ld: skipping incompatible /usr/lib64/libudev.so when searching for -ludev
/bin/ld: cannot find -ludev
collect2: error: ld returned 1 exit status
gmake[3]: *** [libEGL.la] Error 1
gmake[3]: Leaving directory `/usr/local/src/Mesa-9.2.5/src/egl/main'
gmake[2]: *** [all-recursive] Error 1
gmake[2]: Leaving directory `/usr/local/src/Mesa-9.2.5/src/egl'
gmake[1]: *** [all-recursive] Error 1
gmake[1]: Leaving directory `/usr/local/src/Mesa-9.2.5/src'
gmake: *** [all-recursive] Error 1

I'm not sure why it can't find udev:

$ rpm -qa | grep -i udev
system-config-printer-udev-1.4.3-2.fc20.x86_64
libgudev1-208-9.fc20.x86_64
libgudev1-208-9.fc20.i686
libgudev1-devel-208-9.fc20.x86_64
libgudev1-devel-208-9.fc20.i686
Comment 6 Ilia Mirkin 2014-02-16 04:43:10 UTC
(In reply to comment #5)
> Getting closer ...
> 
> With "./configure --enable-32-bit --enable-debug CFLAGS="-m32"
> CXXFLAGS="-m32" LDFLAGS="-m32"" I now get as far as:
> 
>   CC       eglscreen.lo
>   CC       eglstring.lo
>   CC       eglsurface.lo
>   CC       eglsync.lo
>   CCLD     libEGL.la
> /bin/ld: skipping incompatible /usr/lib64/libudev.so when searching for
> -ludev
> /bin/ld: cannot find -ludev
> collect2: error: ld returned 1 exit status
> gmake[3]: *** [libEGL.la] Error 1
> gmake[3]: Leaving directory `/usr/local/src/Mesa-9.2.5/src/egl/main'
> gmake[2]: *** [all-recursive] Error 1
> gmake[2]: Leaving directory `/usr/local/src/Mesa-9.2.5/src/egl'
> gmake[1]: *** [all-recursive] Error 1
> gmake[1]: Leaving directory `/usr/local/src/Mesa-9.2.5/src'
> gmake: *** [all-recursive] Error 1
> 
> I'm not sure why it can't find udev:

Dunno... sorry. Is there a /usr/lib32/libudev.so.2?

> 
> $ rpm -qa | grep -i udev
> system-config-printer-udev-1.4.3-2.fc20.x86_64
> libgudev1-208-9.fc20.x86_64
> libgudev1-208-9.fc20.i686
> libgudev1-devel-208-9.fc20.x86_64
> libgudev1-devel-208-9.fc20.i686

You could also see if there are debug symbols available for your current rpm's -- they are often supplied by the distro in a separate package. Hopefully the thing generating the backtrace would know to look in the alternate locations for them.
Comment 7 Ilia Mirkin 2014-02-16 04:45:48 UTC
Try building with these additional flags:

--with-gallium-drivers=nouveau --with-dri-drivers="" --enable-texture-float --disable-egl

That should limit what's being built and also disable EGL which is the thing giving you trouble currently.
Comment 8 Ilia Mirkin 2015-10-22 04:34:39 UTC
No update to retest request in over a year, marking invalid. If the issue persists with new kernel and new mesa, feel free to reopen.


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.