Date: Sat, 14 Mar 2009 00:03:25 +0100 (CET) From: Alexander Best <alexbestms@math.uni-muenster.de> To: <freebsd-current@freebsd.org> Subject: linux 3d applications keep crashing Message-ID: <permail-2009031323032580e26a0b00001298-a_best01@message-id.uni-muenster.de>
next in thread | raw e-mail | index | archive | help
hi there, a lot of people who are using the nvidia closed source driver are having problems running linux 3d applications. the libGL.so.1 library (linux versi= on in /compat/linux/usr/lib) causes almost every linux 3d app to segfault. sin= ce the library is the very same one that get's installed under linux the probl= em very likely resides in the linuxulator. i ran two linux games with ktrace. this is the output from linux_kdump. i h= ope i copy&pasted the important pieces of the dump that report the crash. dump from unreal tournament 2004 demo: =2E.. 1180 ut2004-bin RET close 0 1180 ut2004-bin CALL linux_brk(0xae5c000) 1180 ut2004-bin RET linux_brk 182829056/0xae5c000 1180 ut2004-bin CALL linux_getpid 1180 ut2004-bin RET linux_getpid 1180/0x49c 1180 ut2004-bin CALL linux_getpid 1180 ut2004-bin RET linux_getpid 1180/0x49c 1180 ut2004-bin CALL linux_getpid 1180 ut2004-bin RET linux_getpid 1180/0x49c 1180 ut2004-bin CALL linux_sys_futex(0x2b406e30,0x81,0x7fffffff,0,0x49c,0x7) 1180 ut2004-bin RET linux_sys_futex 1 1180 ut2004-bin PSIG SIGSEGV caught handler=3D0x874bd50 mask=3D0x0 code= =3D0x0 1180 ut2004-bin CALL linux_fstat64(0x1,0xbfbfa9e8,0x28fe8ff4) 1180 ut2004-bin UNKNOWN(8) 1180 ut2004-bin RET linux_fstat64 0 1180 ut2004-bin CALL linux_mmap2(0,0x1000,0x3,0x22,0xffffffff,0) 1180 ut2004-bin RET linux_mmap2 688971776/0x2910e000 1180 ut2004-bin CALL write(0x1,0x2910e000,0x25) 1180 ut2004-bin GIO fd 1 wrote 37 bytes "Signal: SIGSEGV [segmentation fault] " 1180 ut2004-bin RET write 37/0x25 1180 ut2004-bin CALL write(0x1,0x2910e000,0xa) 1180 ut2004-bin GIO fd 1 wrote 10 bytes "Aborting. " 1180 ut2004-bin RET write 10/0xa 1180 ut2004-bin CALL write(0x1,0x2910e000,0x1) 1180 ut2004-bin GIO fd 1 wrote 1 byte " " 1180 ut2004-bin RET write 1 1180 ut2004-bin CALL write(0x1,0x2910e000,0x1) 1180 ut2004-bin GIO fd 1 wrote 1 byte " " 1180 ut2004-bin RET write 1 1180 ut2004-bin CALL write(0x1,0x2910e000,0x31) 1180 ut2004-bin GIO fd 1 wrote 49 bytes "Crash information will be saved to your logfile. " 1180 ut2004-bin RET write 49/0x31 1180 ut2004-bin CALL linux_sys_futex(0x28feba34,0x81,0x7fffffff,0,0xbfbfab14,0xbfbfaaec) 1180 ut2004-bin RET linux_sys_futex 1 1180 ut2004-bin CALL linux_sys_futex(0x28e8eb48,0x81,0x7fffffff,0,0xbfbfaa30,0xbfbfa93c) 1180 ut2004-bin RET linux_sys_futex 1 1180 ut2004-bin CALL write(0x4,0x937c3c8,0xc) =2E.. and dump from quake 4 demo: =2E.. 1285 quake4.x86 RET close 0 1285 quake4.x86 CALL linux_getpid 1285 quake4.x86 RET linux_getpid 1285/0x505 1285 quake4.x86 CALL linux_getpid 1285 quake4.x86 RET linux_getpid 1285/0x505 1285 quake4.x86 CALL linux_getpid 1285 quake4.x86 RET linux_getpid 1285/0x505 1285 quake4.x86 CALL linux_sys_futex(0x2dbece30,0x81,0x7fffffff,0,0x505,0x7) 1285 quake4.x86 RET linux_sys_futex 1 1285 quake4.x86 PSIG SIGSEGV caught handler=3D0x8254b10 mask=3D0x0 code= =3D0x0 1285 quake4.x86 CALL linux_sys_futex(0x286cd620,0x81,0x7fffffff,0,0x505,0xbfbfc51c) 1285 quake4.x86 RET linux_sys_futex 1 1285 quake4.x86 CALL write(0x1,0x283dd000,0x22) 1285 quake4.x86 GIO fd 1 wrote 34 bytes "signal caught: Segmentation fault " 1285 quake4.x86 RET write 34/0x22 1285 quake4.x86 CALL write(0x1,0x283dd000,0xa) 1285 quake4.x86 GIO fd 1 wrote 10 bytes "si_code 1 " 1285 quake4.x86 RET write 10/0xa 1285 quake4.x86 CALL write(0x1,0x283dd000,0x1c) 1285 quake4.x86 GIO fd 1 wrote 28 bytes "Trying to exit gracefully.. " 1285 quake4.x86 RET write 28/0x1c 1285 quake4.x86 CALL write(0x1,0x283dd000,0x2e) 1285 quake4.x86 GIO fd 1 wrote 46 bytes "--------------- BSE Shutdown ---------------- " 1285 quake4.x86 RET write 46/0x2e 1285 quake4.x86 CALL write(0x1,0x283dd000,0x2e) 1285 quake4.x86 GIO fd 1 wrote 46 bytes "--------------------------------------------- " 1285 quake4.x86 RET write 46/0x2e 1285 quake4.x86 CALL write(0x1,0x283dd000,0x35) 1285 quake4.x86 GIO fd 1 wrote 53 bytes "WARNING: rvServerScanGUI::Clear() - invalid scanGUI " 1285 quake4.x86 RET write 53/0x35 1285 quake4.x86 CALL munmap(0x2d0ee000,0x101000) 1285 quake4.x86 RET munmap 0 1285 quake4.x86 CALL munmap(0x2d1ef000,0x101000) =2E.. to me it looks like the app crashes during the futex syscall, but i'm far f= rom beeing an expert. it would be great if somebody could take a closer look at this. cheers.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?permail-2009031323032580e26a0b00001298-a_best01>