Cool VL Viewer forum

View unanswered posts | View active topics It is currently 2024-03-28 13:48:54



Reply to topic  [ 16 posts ]  Go to page 1, 2  Next
Crash on start - openSUSE Tumbleweed, nvidia 
Author Message

Joined: 2009-03-18 09:32:02
Posts: 246
Reply with quote
Hi,

I'm having trouble lately running the coolvlviewer on my laptop.

I've been running CV from a rpm package that I'm building myself, and until not too long ago it worked just fine.

At some point, I think at 1.28.2.20, my trusted little optimus/prime render offloading patch for the start script stopped working, so now I've been building without it - if I try to force render offloading the old way, by setting the variables __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia, i get a "Window Creation Error".

At that point I dropped my optimus/prime offloading patch from my build - and behold, CV would "just like that" use the nvidia card - I assume you switched to vulkan?

Anyway, now I have a new laptop, and on that one CV does *not* recognize the nvidia card as 3d capable, and uses the intel card that runs all the rest of the graphical UI, and of course that cripple is not enough for anything decent.

I'm guessing the card is too new?

Anyway, here's the output of inxi -AGCS:

Code:
System:    Host: mio.eregion.home Kernel: 5.12.2-1-default x86_64 bits: 64 Desktop: KDE Plasma 5.21.5
           Distro: openSUSE Tumbleweed 20210512
CPU:       Info: Quad Core model: 11th Gen Intel Core i7-1185G7 bits: 64 type: MT MCP cache: L2: 12 MiB
           Speed: 1090 MHz min/max: 400/4800 MHz Core speeds (MHz): 1: 1090 2: 1100 3: 1168 4: 1162 5: 1090 6: 1094 7: 1108
           8: 1098
Graphics:  Device-1: Intel TigerLake-LP GT2 [Iris Xe Graphics] driver: i915 v: kernel
           Device-2: NVIDIA TU117M [GeForce GTX 1650 Ti Mobile] driver: nvidia v: 460.73.01
           Device-3: Acer HD Camera type: USB driver: uvcvideo
           Display: x11 server: X.Org 1.20.11 driver: loaded: modesetting,nvidia resolution: 1920x1080
           OpenGL: renderer: Mesa Intel Xe Graphics (TGL GT2) v: 4.6 Mesa 21.1.0
Audio:     Device-1: Intel Tiger Lake-LP Smart Sound Audio driver: sof-audio-pci-intel-tgl
           Sound Server-1: ALSA v: k5.12.2-1-default running: yes
           Sound Server-2: PulseAudio v: 14.2-rebootstrapped running: yes


other vulkan based stuff, e.g. vkcube, runs on the nvidia card as it should. Oh, and I did try with the official CoolVLViewer download from the website as well, doesn't work either...

Any ideas?


2021-05-14 13:24:52
Profile YIM WWW

Joined: 2009-03-17 18:42:51
Posts: 5523
Reply with quote
1.- Provide logs (from the official release binary only, please).
2.- Provide last working version number (and do verify it is still working with your current hardware/software): provide the logs as well (to spot any difference with the non-working version).
3.- Provide configuration (viewer graphics settings).

And no, I did not "switch to Vulkan" (I'm good at programing, but converting the whole viewer renderer from OpenGL to Vulkan would take months to achieve as a full time job !).

Note that if you use the iGPU for the X server, it is not surprising that the viewer picks it up for rendering ! Try a session with i915 blacklisted (add "module_blacklist=i915" to the kernel boot command line), and see what happens...


2021-05-14 13:38:54
Profile WWW

Joined: 2009-03-18 09:32:02
Posts: 246
Reply with quote
The last working version was the same as now, 1.28.2.22 but on my **old** laptop.

on that, just like on the new one, I was running the graphical desktop on the intel card, but CV did run on the nvidia card without me having to do anything - and **without** my optimus patch that I've posted here on the forum some time ago. If that wasn't something you did then it must have been something in a new Mesa version...

anyway, last working logs is not possible - that would have been on my old laptop and I've already disposed of it - the mainboard had a crack...

What I usually do for non-vulkan enabled apps is to run them with the two __NVIDIA variables set, like this:
__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia /opt/coolvlviewer/coolvlviewer

that makes that specific app use the nvidia card for rendering, and the "main" card (the intel one) to actually display the stuff on my screen. Works with everything I've tried so far... except for CoolVL since version 1.28.2.20.

Logs:
running CoolVLViewer without the __NVIDIA variables which makes it use the intel card and refuse to go any higher than the bare minimum, and still complain about the hardware: https://susepaste.org/33971216

running CoolVLViewer with the __NVIDIA variables, which does not work anymore since 1.28.2.20 or so, which might just as well be a coincidence and the actual culprit is the latest nvidia driver that was released around the same time: https://susepaste.org/55061484

I just found a very interesting detail:
If I run CoolVLViewer without the render offloading first, set the graphics to minimum, and then quit without actually logging in, I can right after that run it WITH the render offloading, log in, and then set the graphics to maximum... but I have to set the graphics to minimum before logging out or it won't start anymore next time.

edit: I can go as high as "high" graphics and the viewer starts fine with prime render offloading - and I can set the graphics to ultra just fine AFTER starting the viewer, but then the viewer crashes on next start.


2021-05-14 14:29:48
Profile YIM WWW

Joined: 2009-03-17 18:42:51
Posts: 5523
Reply with quote
Lance Corrimal wrote:
The last working version was the same as now, 1.28.2.22 but on my **old** laptop.
There has been strictly no change between v1.28.2.22 and v1.28.2.23 that could explain it. So your new laptop won't be capable to run old viewer versions either.

Quote:
What I usually do for non-vulkan enabled apps is to run them with the two __NVIDIA variables set, like this:
__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia /opt/coolvlviewer/coolvlviewer
You do not need such a kludge for the Cool VL Viewer any more. Put your system-wide exports in /etc/cool_vl_viewer.conf and your per-Linux-account exports in ~/.secondlife/cool_vl_viewer.conf, and the wrapper script will automatically apply them (you may even put a full bash script in these files if you wish: they get sourced by the cool_vl_viewer script). So here you would use in /etc/cool_vl_viewer.conf:
Code:
export __NV_PRIME_RENDER_OFFLOAD=1
export __GLX_VENDOR_LIBRARY_NAME=nvidia


Quote:
Works with everything I've tried so far... except for CoolVL since version 1.28.2.20.
If you cannot be more accurate on the last working version, and since I do not have any hardware to reproduce the issue, I'm afraid the said issue will stay unsolved...

Quote:
running CoolVLViewer without the __NVIDIA variables which makes it use the intel card and refuse to go any higher than the bare minimum, and still complain about the hardware: https://susepaste.org/33971216
From what I see in the log, it's just a matter of adding "Mesa Intel" as a new GPU to app_settings/gpu_table.txt, like so:
Code:
.../...
Intel HD6000                    .*Intel.*HD6.00.*                   2        1
Intel Xe                        .*Intel.*Xe.*                       2        1
Intel Mesa DRI                  .*Mesa DRI.*                        2        1
Intel Mesa                      .*Mesa Intel.*                      2        1
Mesa                            .*Mesa.*                            0        0
.../...
Done for next release.

Quote:
running CoolVLViewer with the __NVIDIA variables, which does not work anymore since 1.28.2.20 or so, which might just as well be a coincidence and the actual culprit is the latest nvidia driver that was released around the same time: https://susepaste.org/55061484
Did you try older NVIDIA drivers ?... Also, please do provide the stack_trace.log, since a crash should not happen at all and only the stack trace can allow me to fix it.

Quote:
I can go as high as "high" graphics and the viewer starts fine with prime render offloading - and I can set the graphics to ultra just fine AFTER starting the viewer, but then the viewer crashes on next start.
It means that one of the individual settings toggled when you switch to "Ultra" is not actually applied but will be on the next restart, causing the crash. You will have to find that setting via trial and error. Start at High, then check the various boxes in the "Renderer settings" and "GPU features" sub-tab of the "Graphics tab" of the "Preferences" floater, one after the other and, each time, restart the viewer, until you find the offending setting...


2021-05-14 15:07:53
Profile WWW

Joined: 2009-03-18 09:32:02
Posts: 246
Reply with quote
...found it with trial & error...
as soon as I turn on antialiasing the viewer crashes.

Stack trace is attached.


Attachments:
stack_trace.log [1.29 KiB]
Downloaded 69 times
2021-05-14 15:34:14
Profile YIM WWW

Joined: 2009-03-17 18:42:51
Posts: 5523
Reply with quote
It's a "voluntary error" (llerrs), from your log (I did not see it at first):
Code:
021-05-14T14:27:04Z INFO: LLWindowSDL::createContext: Fullscreen = 0 - Size = 1920x995
2021-05-14T14:27:04Z INFO: LLWindowSDL::createContext: Compiled against SDL 2.0.14
2021-05-14T14:27:04Z INFO: LLWindowSDL::createContext: Running against SDL 2.0.14
2021-05-14T14:27:04Z INFO: LLWindowSDL::createContext: Original aspect ratio was 1920:1080 = 1.77778
2021-05-14T14:27:04Z WARNING: LLWindowSDL::createContext: Window creation failure. SDL error: Couldn't find matching GLX visual
2021-05-14T14:27:04Z INFO: LLWindowSDL::destroyContext: Shutting down GL...
2021-05-14T14:27:04Z INFO: LLWindowSDL::destroyContext: Quitting SDL video sub-system...
2021-05-14T14:27:06Z llwindow/llwindow.cpp(123) : error
2021-05-14T14:27:06Z ERROR: createWindow: Error creating window.

Apparently, SDL2 does not find any compatible OpenGL mode... You could try and compile the viewer with SDL1 (switch USE_SDL2 to OFF in indra/cmake/00-BuildOptions.cmake), and see if SDL1 manages it...

For next release, the viewer will display a message box instead of crashing...


2021-05-14 15:43:48
Profile WWW

Joined: 2009-03-18 09:32:02
Posts: 246
Reply with quote
Henri Beauchamp wrote:
Lance Corrimal wrote:
The last working version was the same as now, 1.28.2.22 but on my **old** laptop.
There has been strictly no change between v1.28.2.22 and v1.28.2.23 that could explain it. So your new laptop won't be capable to run old viewer versions either.


as far as I see 1.28.2.22 is the most recent one, you haven't released 1.28.2.23 yet.


2021-05-14 15:45:04
Profile YIM WWW

Joined: 2009-03-17 18:42:51
Posts: 5523
Reply with quote
Lance Corrimal wrote:
as far as I see 1.28.2.22 is the most recent one, you haven't released 1.28.2.23 yet.
Working on it... Anyway, not an issue with recent versions. Could be the result of the switch to SDL2 (see my message above).


2021-05-14 15:50:17
Profile WWW

Joined: 2009-03-18 09:32:02
Posts: 246
Reply with quote
Henri Beauchamp wrote:
For next release, the viewer will display a message box instead of crashing...


..it already does. I guess I should have been more clear instead of writing "the viewer crashes"...

Image

Didn't you switch to SDL2 not all that long ago? Do you still have the last binary before that switch somewhere where I can download it?

Cheers
LC


Last edited by Lance Corrimal on 2021-05-14 15:54:34, edited 1 time in total.



2021-05-14 15:52:42
Profile YIM WWW

Joined: 2009-03-17 18:42:51
Posts: 5523
Reply with quote
Read, please !


2021-05-14 15:54:17
Profile WWW
Display posts from previous:  Sort by  
Reply to topic   [ 16 posts ]  Go to page 1, 2  Next

Who is online

Users browsing this forum: No registered users and 29 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.