PDA

View Full Version : Segmentation fault with Linux binaries (FC8)


Harvey Pooka
10-21-08, 09:52 PM
Some of us are running into an issue with the 173.14.12 driver, current Linux emulation code in FreeBSD 7 and 8, Fedora Core 8 libraries and games like Unreal Tournament and Serious Sam. Unfortunately, it cannot be easily determined what is causing the problem. Switching back to FC4 libraries does not result in a segmentation fault. It could be that the Linux emulation has advanced farther and is tripping a limitation it never hit before. Here is a link with a ktrace and a question about a specific ioctl: http://lists.freebsd.org/pipermail/freebsd-emulation/2008-October/005379.html

The ioctl mentioned in the link:
0xc040464d = _IOWR('F', 77, xxxxx), aka FrameBuffer which never supported in linuxulator (as far as I understand)

Another question I have is that is see an open of /dev/nvidia0 but the follow ioctl reuses the file descriptor from the open of /dev/nvidiactl. which is 0x32 versus 0x33. I am not sure if this is important or not. Bug in the Linux libGL library?

zander
10-22-08, 01:10 PM
Note that the file descriptor corresponding to /dev/nvidiactl is still open, so there's no reason why libGL/libGLcore couldn't still use it. I looked at the sequence of ioctl()'s, however, and confirmed that it's what I'd expect at startup. It would be best if you could obtain a stack trace. Does setting the __GL_SINGLE_THREADED environment variable to '1' make a difference?

datahead
10-22-08, 04:27 PM
It looks like the problem was narrowed down later in the email thread mentioned above. See:
http://lists.freebsd.org/pipermail/freebsd-emulation/2008-October/005388.html

I'm seeing the same problem trying to run Quake4 with the updated linuxolator on a 7.1-PRERELEASE system running the 177.80 NVidia binary drivers. I'm trying to get some usable ktrace/linux_kdump logs for review. Please let me know if there is any other information that might help track down this problem.

zander
10-22-08, 04:42 PM
I don't think the ioctl()'s are at all related to this problem, they're red herrings. The last ioctl() performed on the file descriptor associated with /dev/nvidiactl succeeds - it's an NVIDIA-internal ioctl() that won't be interpreted by the Linuxulator. The crash happens some time after the ioctl() - in order to tell where, I'd need a backtrace.

datahead
10-22-08, 05:02 PM
I have a 64MB trace from linux_kdump, but I need to find a place to post it. The host I usually use for that is down right now.

Harvey Pooka
10-22-08, 06:04 PM
I already have a full kdump from a segmentation fault here: http://people.freebsd.org/~scf/ut-ktrace.log.bz2

I am currently downloading Fedora 8 to install within QEMU to build a binary with debugging information since the debugger will not give me a stack trace with ut-bin. I am going to test testgl from libsdl examples to see if it will core dump.

IncubuS
10-23-08, 12:36 AM
Hello!

Please note that the x11/linux-xorg-libs is a Fedora 4 libraries. May be something wrong with a new linuxulator and this port.

WBR