Bug 102337

Summary: Full system crash when running a custom OpenGL 4.3 graphic engine
Product: Mesa Reporter: TheBrokenGod <from.the.darkest.past>
Component: Drivers/DRI/nouveauAssignee: Nouveau Project <nouveau>
Status: RESOLVED MOVED QA Contact: Nouveau Project <nouveau>
Severity: critical    
Priority: medium CC: fdsfgs
Version: 17.1   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments: glxinfo output

Description TheBrokenGod 2017-08-21 15:15:09 UTC
Created attachment 133645 [details]
glxinfo output

I wrote a custom graphic engine as a school project and tested it on different platforms; it works everywhere (both nVidia and AMD) with binary drivers but triggers a whole system crash (only the mouse cursor remains responsive) on MESA + Nouveau.

I am testing it with Ubuntu 17.10 daily build (kernel version 4.12) that supports OpenGL 4.3 (which is required) on my nVidia card, a GT 740. The full source code is available at https://github.com/TheBrokenGod/OmegaEngine and includes a makefile for simple compilation. 

The engine executes some complicated shaders (contained in Source.cpp) in order to allow order-independent transparency through linked lists of fragments.
Comment 1 Ilia Mirkin 2017-08-21 15:18:45 UTC
A few things:

1. Does the engine do threaded GL calls? If so, nouveau will crash and burn.
2. Does this still happen with the latest code from mesa git?
3. Can you see what's in dmesg when things go south? (Perhaps by ssh'ing in or using netconsole, depending on how bad things get.)
Comment 2 TheBrokenGod 2017-08-21 16:03:19 UTC
1. I make no use of threads; I don't know for sure if GLFW does it with OpenGL but I don't think so.

2. I am using Ubuntu 17.10 as LiveCD, unfortunately I cannot install it to hard drive and recompile MESA, plus I wouldn't know how to do it ;) However the included version should be very recent.

3. https://pastebin.com/HE7rTetG
Comment 3 Ilia Mirkin 2017-08-21 19:37:10 UTC
You can try a more up-to-date stack from https://nouveau.pmoreau.org/

Your dmesg does not include any errors, which is surprising given that the system hangs. Can happen though.

What are the steps to reproduce this? (i.e. how does one operate your program)
Comment 4 TheBrokenGod 2017-08-22 12:44:03 UTC
I tried the 08/21 image but I'm having trouble installing the needed packages. I managed to install and run LXDE but when trying to install the rest it says there is no enough space, which is strange because with 8GB of RAM there should be plenty of it. Unfortunately I have no free partition on which perform the installation.

Anyway, it is very simple to reproduce the problem:

1) Download the whole project from https://github.com/TheBrokenGod/OmegaEngine and unzip it
2) Install the following packages and libraries: make, g++, glfw, glew, assimp, freeimage
3) Run 'make -f makefile' in the root directory of the project
4) Launch the test scene with './omega Scene/scene.dae'
Comment 5 GitLab Migration User 2019-09-18 20:45:40 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/mesa/mesa/issues/1138.

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.