FS#53455 - [lib32-nvidia-utils] Black screen with 32bit OpenGL applications

Attached to Project: Community Packages
Opened by Jakub Sztandera (Kubuxu) - Sunday, 26 March 2017, 00:17 GMT
Last edited by Sven-Hendrik Haase (Svenstaro) - Tuesday, 11 April 2017, 11:21 GMT
Task Type Bug Report
Category Packages: Multilib
Status Closed
Assigned To Sven-Hendrik Haase (Svenstaro)
Laurent Carlier (lordheavy)
Felix Yan (felixonmars)
Architecture All
Severity High
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:

When starting OpenGL application (for example glxgears32 or steam) the screen stays black or takes texture or other foreground.
The `gxlgears32 -info` contains valid GPU information (see attachment).

Additional info:
* it probably broke with the migration to glvnd
* versions:
lib32-libglvnd 0.2.999+g4ba53457-2
lib32-nvidia-utils 378.13-3
libglvnd 0.2.999+g4ba53457-2
nvidia 378.13-4
nvidia-utils 378.13-6

* no Xorg errors, no dmesg errors, no journal errors, no errors in the glxgears32 either
* stock installation configuration of Xorg and Nvidia


Steps to reproduce:
* launch glxgears32 from lib32-mesa-demos
This task depends upon

Closed by  Sven-Hendrik Haase (Svenstaro)
Tuesday, 11 April 2017, 11:21 GMT
Reason for closing:  Fixed
Comment by Jakub Sztandera (Kubuxu) - Sunday, 26 March 2017, 18:34 GMT
I decided to compare strace results of both 64 and 32 bit glxgears application. They seem to match up until:

64bit: mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_SHARED, 6, 0x383fefdf3000) = 0x7f833b775000
32bit: mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_SHARED, 6, 0x83fefdf3000) = -1 EINVAL (Invalid argument)

Then it is cascading apart.

Using grep I can see that FD 6 is `/dev/nvidia0`
egrep -n 'open\(.* = 6|close\(6' gears32
2755:open("/proc/driver/nvidia/params", O_RDONLY) = 6
2758:close(6) = 0
2760:open("/dev/nvidia0", O_RDWR|O_LARGEFILE) = 6

mmap2 last argument is number of pages, if my analysis was correct it should be 0x383fefdf3000/4096.

   gears64 (937.8 KiB)
Comment by Jakub Sztandera (Kubuxu) - Sunday, 26 March 2017, 18:35 GMT
I can't seem to attach 2nd file. Attaching here.
   gears32 (541 KiB)
Comment by Sven-Hendrik Haase (Svenstaro) - Monday, 27 March 2017, 12:05 GMT
Felix, Laurent, any of you guys got an idea about this?
Comment by Felix Yan (felixonmars) - Monday, 27 March 2017, 13:18 GMT
I can only reproduce the problem in some 32-bit wine applications, but glxgears32 works fine. I guess this is a bit harder to debug.
Comment by Jakub Sztandera (Kubuxu) - Monday, 27 March 2017, 13:23 GMT
If you need me to run something on affected PC, just tell me.
It was not able to find second case of this problem unfortunately.

Also as a note, I have reinstalled system in the meantime (copied only /home) and the problem persisted.
Comment by Jakub Sztandera (Kubuxu) - Thursday, 06 April 2017, 18:55 GMT
It is possible that it is connected with `Above 4G Decoding` option in BIOS, I had no chance to confirm it right now as I am away.
Comment by Jakub Sztandera (Kubuxu) - Tuesday, 11 April 2017, 11:11 GMT
Disabling 'Above 4G Decoding' solved the issue.

I am very sorry for the trouble.

Loading...