Xubuntu 16.04.2 Fatal Error Crash

General discussion regarding the OpenMW project.
For technical support, please use the Support subforum.
User avatar
lysol
Posts: 1513
Joined: 26 Mar 2013, 01:48
Location: Sweden

Re: Xubuntu 16.04.2 Fatal Error Crash

Post by lysol »

My crash is also right after the Bethesda logo.
User avatar
augustt
Posts: 55
Joined: 14 Dec 2012, 17:14

Re: Xubuntu 16.04.2 Fatal Error Crash

Post by augustt »

We're all on Xenial?
User avatar
lysol
Posts: 1513
Joined: 26 Mar 2013, 01:48
Location: Sweden

Re: Xubuntu 16.04.2 Fatal Error Crash

Post by lysol »

Yup.
User avatar
psi29a
Posts: 5361
Joined: 29 Sep 2011, 10:13
Location: Belgium
Gitlab profile: https://gitlab.com/psi29a/
Contact:

Re: Xubuntu 16.04.2 Fatal Error Crash

Post by psi29a »

OK, I have good news and bad news.

The good news, I got it working on Xenial on VirtualBox. Using LLVM Pipe (CPU) we get around 20fps inside the ship! Not bad! :D
Screenshot from 2017-02-15 08-05-33.png
The bad news, I had to remove scrawl's patch set from OSG-3.4

Apparently his recent patches work fine on 16.10 (yakkety) and above, but crash on <= 16.04 (xenial).

Here is the patch in question:
https://dl.dropboxusercontent.com/u/396 ... rawl.patch

@Scrawl: can you look through this patch to see if there might be anything that would cause the crashes above?

Here is my backtrace:

Code: Select all

Thread 6 "openmw" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffda443700 (LWP 18031)]
0x00007fffe031b10f in ?? () from /usr/lib/x86_64-linux-gnu/dri/swrast_dri.so
(gdb) bt
#0  0x00007fffe031b10f in ?? () from /usr/lib/x86_64-linux-gnu/dri/swrast_dri.so
#1  0x00007fffe01c9d32 in ?? () from /usr/lib/x86_64-linux-gnu/dri/swrast_dri.so
#2  0x00007fffe031caa5 in ?? () from /usr/lib/x86_64-linux-gnu/dri/swrast_dri.so
#3  0x00007ffff7ab386f in osg::DrawElementsUShort::draw(osg::State&, bool) const () from /usr/lib/x86_64-linux-gnu/libosg.so.130
#4  0x00007ffff7a38c40 in osg::Geometry::drawPrimitivesImplementation(osg::RenderInfo&) const () from /usr/lib/x86_64-linux-gnu/libosg.so.130
#5  0x00007ffff7a3b611 in osg::Geometry::drawImplementation(osg::RenderInfo&) const () from /usr/lib/x86_64-linux-gnu/libosg.so.130
#6  0x00007ffff7a260cf in osg::Drawable::compileGLObjects(osg::RenderInfo&) const () from /usr/lib/x86_64-linux-gnu/libosg.so.130
#7  0x00007ffff7a3ff41 in osg::Geometry::compileGLObjects(osg::RenderInfo&) const () from /usr/lib/x86_64-linux-gnu/libosg.so.130
#8  0x00007ffff7176b21 in osgUtil::IncrementalCompileOperation::CompileDrawableOp::compile(osgUtil::IncrementalCompileOperation::CompileInfo&) () from /usr/lib/x86_64-linux-gnu/libosgUtil.so.130
#9  0x00007ffff717738d in osgUtil::IncrementalCompileOperation::CompileList::compile(osgUtil::IncrementalCompileOperation::CompileInfo&) () from /usr/lib/x86_64-linux-gnu/libosgUtil.so.130
#10 0x00007ffff71783b4 in osgUtil::IncrementalCompileOperation::CompileSet::compile(osgUtil::IncrementalCompileOperation::CompileInfo&) () from /usr/lib/x86_64-linux-gnu/libosgUtil.so.130
#11 0x00007ffff717acef in osgUtil::IncrementalCompileOperation::compileSets(std::__cxx11::list<osg::ref_ptr<osgUtil::IncrementalCompileOperation::CompileSet>, std::allocator<osg::ref_ptr<osgUtil::IncrementalCompileOperation::CompileSet> > >&, osgUtil::IncrementalCompileOperation::CompileInfo&) () from /usr/lib/x86_64-linux-gnu/libosgUtil.so.130
#12 0x00007ffff717b183 in osgUtil::IncrementalCompileOperation::operator()(osg::GraphicsContext*) () from /usr/lib/x86_64-linux-gnu/libosgUtil.so.130
#13 0x00007ffff7a596a2 in osg::GraphicsContext::runOperations() () from /usr/lib/x86_64-linux-gnu/libosg.so.130
#14 0x00007ffff7aac860 in osg::OperationThread::run() () from /usr/lib/x86_64-linux-gnu/libosg.so.130
#15 0x00007ffff7a5afe8 in osg::GraphicsThread::run() () from /usr/lib/x86_64-linux-gnu/libosg.so.130
#16 0x00007ffff76fb6c8 in OpenThreads::ThreadPrivateActions::StartThread(void*) () from /usr/lib/x86_64-linux-gnu/libOpenThreads.so.20
#17 0x00007ffff3b886ba in start_thread (arg=0x7fffda443700) at pthread_create.c:333
#18 0x00007ffff1e5f82d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109
(gdb) 
User avatar
scrawl
Posts: 2152
Joined: 18 Feb 2012, 11:51

Re: Xubuntu 16.04.2 Fatal Error Crash

Post by scrawl »

The callstack refers to a feature in OSG that was broken in 3.4.0, but has been restored (via patch) in my fork. I doubt the problem is with the patch though, as that same patch has been applied upstream (master/3.6) for months now with no problems.

I'd suspect some kind of binary incompatibility. Have you tried a self built version without using any of the PPA packages?
User avatar
psi29a
Posts: 5361
Joined: 29 Sep 2011, 10:13
Location: Belgium
Gitlab profile: https://gitlab.com/psi29a/
Contact:

Re: Xubuntu 16.04.2 Fatal Error Crash

Post by psi29a »

Yes, that is exactly what I've done, no OSG-3.4 PPA packages were used during testing.

openmw built against osg-3.4 with the patch fails while openmw built against osg-3.4 with-out the patch works just fine.

This is why I posted the patch because it was the only factor changed in both cases.

This behaviour is not seen in ubuntu >= 16.10 (Xenial), where the patched OSG-3.4 works just fine.
User avatar
scrawl
Posts: 2152
Joined: 18 Feb 2012, 11:51

Re: Xubuntu 16.04.2 Fatal Error Crash

Post by scrawl »

Could you try with master: https://github.com/openscenegraph/OpenSceneGraph then? I'm really at a loss here so anything to further narrow down conditions would be great.
User avatar
psi29a
Posts: 5361
Joined: 29 Sep 2011, 10:13
Location: Belgium
Gitlab profile: https://gitlab.com/psi29a/
Contact:

Re: Xubuntu 16.04.2 Fatal Error Crash

Post by psi29a »

Building from master now. I need to head on in a bit, but I'll try to test later tonight.
User avatar
psi29a
Posts: 5361
Joined: 29 Sep 2011, 10:13
Location: Belgium
Gitlab profile: https://gitlab.com/psi29a/
Contact:

Re: Xubuntu 16.04.2 Fatal Error Crash

Post by psi29a »

Built faster than expected and it is bad news.

master branch of OSG compiles on Xenial, but linking against it causes OpenMW to crash.

Same gdb trace as above.

Try it yourself on virtualbox, the emulated opengl (via llvm) is good enough for testing... when OSG works. ;)
User avatar
scrawl
Posts: 2152
Joined: 18 Feb 2012, 11:51

Re: Xubuntu 16.04.2 Fatal Error Crash

Post by scrawl »

That appears to be some kind of driver issue. I've just tested on a Intel HD graphics system with Ubuntu 14.04 and I get the same crash. Nvidia desktop works fine, though.

For the time being, I've added an environment variable to disable the problematic code. To use it:

Code: Select all

OPENMW_DONT_PRECOMPILE=1 ./openmw
Post Reply