From owner-freebsd-current@FreeBSD.ORG Sat Mar 14 09:24:12 2009 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id EBDC1106566B for ; Sat, 14 Mar 2009 09:24:12 +0000 (UTC) (envelope-from dchagin@dchagin.static.corbina.ru) Received: from contrabass.post.ru (contrabass.post.ru [85.21.78.5]) by mx1.freebsd.org (Postfix) with ESMTP id 6BA028FC08 for ; Sat, 14 Mar 2009 09:24:12 +0000 (UTC) (envelope-from dchagin@dchagin.static.corbina.ru) Received: from corbina.ru (mail.post.ru [195.14.50.16]) by contrabass.post.ru (Postfix) with ESMTP id DA8546D8E3; Sat, 14 Mar 2009 11:59:10 +0300 (MSK) X-Virus-Scanned: by cgpav Uf39PSi9pFi9oFi9 Received: from [10.208.17.3] (HELO dchagin.static.corbina.ru) by corbina.ru (CommuniGate Pro SMTP 5.1.14) with ESMTPS id 1678654896; Sat, 14 Mar 2009 11:59:10 +0300 Received: from dchagin.static.corbina.ru (localhost.chd.net [127.0.0.1]) by dchagin.static.corbina.ru (8.14.3/8.14.3) with ESMTP id n2E8xARe003627; Sat, 14 Mar 2009 11:59:10 +0300 (MSK) (envelope-from dchagin@dchagin.static.corbina.ru) Received: (from dchagin@localhost) by dchagin.static.corbina.ru (8.14.3/8.14.3/Submit) id n2E8x5ok003626; Sat, 14 Mar 2009 11:59:05 +0300 (MSK) (envelope-from dchagin) Date: Sat, 14 Mar 2009 11:59:05 +0300 From: Chagin Dmitry To: Alexander Best Message-ID: <20090314085905.GA3591@dchagin.static.corbina.ru> References: MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="rwEMma7ioTxnRzrJ" Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.19 (2009-01-05) Cc: freebsd-current@freebsd.org Subject: Re: linux 3d applications keep crashing X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 14 Mar 2009 09:24:13 -0000 --rwEMma7ioTxnRzrJ Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sat, Mar 14, 2009 at 12:03:25AM +0100, Alexander Best wrote: > hi there, >=20 > 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 ver= sion > in /compat/linux/usr/lib) causes almost every linux 3d app to segfault. s= ince > the library is the very same one that get's installed under linux the pro= blem > very likely resides in the linuxulator. >=20 > i ran two linux games with ktrace. this is the output from linux_kdump. i= hope > i copy&pasted the important pieces of the dump that report the crash. >=20 > dump from unreal tournament 2004 demo: >=20 > ... > 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 cod= e=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) > ... >=20 > and dump from quake 4 demo: >=20 > ... > 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 cod= e=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 >=20 > " > 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) > ... >=20 > to me it looks like the app crashes during the futex syscall, but i'm far= from > beeing an expert. >=20 > it would be great if somebody could take a closer look at this. >=20 pls uname -a and try patch bellow (current) http://78.107.232.239/futex.c.33.patch --=20 Have fun! chd --rwEMma7ioTxnRzrJ Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.10 (FreeBSD) iEYEARECAAYFAkm7cdgACgkQ0t2Tb3OO/O0ELwCfTYYIWsJWT/XI41D2RrqlqA64 4IgAnR0HQvPaRWBIFPe/U7kRL1XKMDMO =rcGE -----END PGP SIGNATURE----- --rwEMma7ioTxnRzrJ--