View previous topic :: View next topic |
Author |
Message |
virtual-image n00b

Joined: 21 Feb 2025 Posts: 11
|
Posted: Fri Feb 21, 2025 7:58 pm Post subject: OpenGL fails to detect NVIDIA GTX 980 with Nouveau driver |
|
|
I noticed an issue when attempting to run the game 'Chaos;Head' through wine. Wine attempted to use wined3d to identify my graphics card, but reported it could not find one based on the OpenGL renderer string present. Chasing the issue, I found the way to identify this information is through glxinfo -B.
Excerpt of the output of glxinfo -B:
Code: |
direct rendering: Yes
Extended renderer info (GLX_MESA_query_renderer):
Vendor: Mesa (0xffffffff)
Device: llvmpipe (LLVM 19.1.7, 256 bits) (0xffffffff)
|
As you can see, it defaults to the software renderer instead of using hardware. I would like to stay on nouveau. The nouveau driver seems to be loaded properly.
Excerpt from lscpi -k:
Code: |
01:00.0 VGA compatible controller: NVIDIA Corporation GM204 [GeForce GTX 980] (rev a1)
Subsystem: PNY Device 1116
Kernel driver in use: nouveau
|
I expected it to be an issue with my xorg configuration, so I created an xorg.conf by using Xorg -configure. That command identified two drivers, nouveau and modesetting, and made a device configuration with nouveau.
Unfortunately, this did not solve the issue.
I do not have the NVIDIA proprietary drivers installed. My VIDEO_CARDS is set to "nouveau". I am in the 'video' group. My kernel is 6.6.47. I emerged mesa, and today apparently virtual/opengl as well, and linux-firwmare, and nvidia-firmware.
My startx command is so:
Code: | startx -- vt$(tty | sed -e 's|/dev/tty||') |
and my xinitrc is so:
Code: |
ibus-daemon -drx
cwm
|
|
|
Back to top |
|
 |
eccerr0r Watchman

Joined: 01 Jul 2004 Posts: 9905 Location: almost Mile High in the USA
|
Posted: Sat Feb 22, 2025 1:36 am Post subject: |
|
|
Not clear from your post: did you have it working with this card before or not?
I think for nvidia-drivers you don't need the in-kernel module, but for nouveau, you need the kernel driver -- do you have this enabled in your kernel?
Do you have your Xorg.0.log posted somewhere?
I was trying to use my failing GTX660 under bother nvidia-drivers and nouveau. There was a day and night difference in speed between the two under wine though using xscreensaver/rss-glx screensavers it wasn't as bad as software rendering. Now that nvidia dropped support for the GTX660 I don't have a choice, but since the card artifacts and crashes the machine, I guess it doesn't really matter ... _________________ Intel Core i7 2700K/Radeon R7 250/24GB DDR3/256GB SSD
What am I supposed watching? |
|
Back to top |
|
 |
virtual-image n00b

Joined: 21 Feb 2025 Posts: 11
|
Posted: Sat Feb 22, 2025 2:00 am Post subject: |
|
|
I don't think the card has "worked" on this machine before. It worked on Windows, so it functions, and it gets detected by this machine, and the kernel properly loads nouveau drivers for it; BUT OpenGL fails to detect it, or select it, as the rendering device.
I do have the "Nouveau/NVIDIA" kernel options enabled and built-in. I don't think the issue lies with the kernel, because the nouveau drivers DO load.
Here is my Xorg.1.log (my X11 session stated it pasted its output there):
https://paste.gentoo.zip/9N9K1it8
Unfortunately the X log does not complain about anything particularly wrong.
The worst it spouts is:
Code: | [ 25286.617] (WW) VGA arbiter: cannot open kernel arbiter, no multi-card support |
It also seems to constantly output "NOUVEAU(0): Modeline "800x..." every so often. The Nouveau wiki page states that this is due to existing proprietary Nvidia drivers, which I attempted to install at one point, but it also suggests that unmerging nvidia-drivers is sufficient to remove this driver, which I've also already done.
Right now I noticed I have the "Nvidia Framebuffer Support" enabled in my kernel. It is not listed as a requirement in the nouveau article, so I have disabled it and am rebuilding and I will see if that changes anything. |
|
Back to top |
|
 |
virtual-image n00b

Joined: 21 Feb 2025 Posts: 11
|
Posted: Sat Feb 22, 2025 2:03 am Post subject: |
|
|
virtual-image wrote: | Right now I noticed I have the "Nvidia Framebuffer Support" enabled in my kernel. It is not listed as a requirement in the nouveau article, so I have disabled it and am rebuilding and I will see if that changes anything. |
To my misfortune, this has changed nothing. |
|
Back to top |
|
 |
eccerr0r Watchman

Joined: 01 Jul 2004 Posts: 9905 Location: almost Mile High in the USA
|
Posted: Sat Feb 22, 2025 3:12 am Post subject: |
|
|
It wasn't clear whether you had it working, changed something, and stopped working...
Is the Xorg.0.log up to date, was the last session actually on :1 ?
Did you have mesa compiled prior to changing VIDEO_CARDS and thus need to rebuild it? _________________ Intel Core i7 2700K/Radeon R7 250/24GB DDR3/256GB SSD
What am I supposed watching? |
|
Back to top |
|
 |
virtual-image n00b

Joined: 21 Feb 2025 Posts: 11
|
Posted: Sat Feb 22, 2025 3:28 am Post subject: |
|
|
I don't think it ever worked.
Xorg.1.log is the most recent log.
I read your post and recompiled mesa: unfortunately, nothing has changed. |
|
Back to top |
|
 |
virtual-image n00b

Joined: 21 Feb 2025 Posts: 11
|
Posted: Sat Feb 22, 2025 4:17 am Post subject: |
|
|
Here is also my auto-generated (Xorg -config) xorg.conf file:
https://paste.gentoo.zip/QrYr4W9U
Edit: It also occurred to me, that maybe, OpenGL just needs to be told the right settings. I'm not sure how to do that.
Edit again: I am also not on a laptop. |
|
Back to top |
|
 |
eccerr0r Watchman

Joined: 01 Jul 2004 Posts: 9905 Location: almost Mile High in the USA
|
Posted: Sat Feb 22, 2025 9:15 am Post subject: |
|
|
remove your xorg.conf and regenerate Xorg.0.log and report what it says.
It looks like it should be accelerated 3D but something is very wrong here. did you ever install nvidia-drivers (and then unmerged it?) _________________ Intel Core i7 2700K/Radeon R7 250/24GB DDR3/256GB SSD
What am I supposed watching? |
|
Back to top |
|
 |
virtual-image n00b

Joined: 21 Feb 2025 Posts: 11
|
Posted: Sat Feb 22, 2025 4:42 pm Post subject: |
|
|
Ok, I removed the xorg.conf. I'm not sure if this is a concern, but Xorg always dumps its log into Xorg.1.log.
https://paste.gentoo.zip/Su7tK5ku
Also, yes, I did install nvidia-drivers at a point, and then I did unmerge it.
I believe there shouldn't be anything conflicting in the kernel. Here is my kernel anyways.
https://paste.gentoo.zip/E6ZhODjn |
|
Back to top |
|
 |
eccerr0r Watchman

Joined: 01 Jul 2004 Posts: 9905 Location: almost Mile High in the USA
|
Posted: Sat Feb 22, 2025 5:22 pm Post subject: |
|
|
Okay. The fact that you merged nvidia-drivers at one point is probably why you're seeing problems. I recall an eselect module that has something to do with glx or opengl but can't recall what it was to do a switcharoo with the libraries, perhaps someone else can recall the command, and this should fix things.
Another thing to try is re-emerging xorg-server though I'm not sure what order you merged things and ideally portage should have rebuilt things in order... but the library problem is suspect. _________________ Intel Core i7 2700K/Radeon R7 250/24GB DDR3/256GB SSD
What am I supposed watching? |
|
Back to top |
|
 |
Anon-E-moose Watchman


Joined: 23 May 2008 Posts: 6230 Location: Dallas area
|
Posted: Sat Feb 22, 2025 6:13 pm Post subject: |
|
|
You can have nvidia driver and nouveau installed at the same (as long as both are modules), you just can't use them at the same time
From an earlier post it appears you have nouveau built in, change it to module. _________________ UM780, 6.12 zen kernel, gcc 13, openrc, wayland |
|
Back to top |
|
 |
virtual-image n00b

Joined: 21 Feb 2025 Posts: 11
|
Posted: Sat Feb 22, 2025 7:20 pm Post subject: |
|
|
Anon-E-moose wrote: | From an earlier post it appears you have nouveau built in, change it to module. |
Today, I tried rebuilding it as a module, to see if it would make a difference,
because I realized it was unusual. Unfortunately, it did not change anything. The kernel config I posted today also shows that I built it as a module (CONFIG_DRM_NOUVEAU).
eccerr0r wrote: | I recall an eselect module that has something to do with glx or opengl |
This was "eselect opengl ..." and is now deprecated in favor of "libglvnd," which automatically manages that at a performance cost. Admittedly, I don't understand how it decides which to use, but it's the replacement, from what I gathered across the Gentoo forums.
eccerr0r wrote: | Another thing to try is re-emerging xorg-server |
I updated xorg-server and unfortunately, glxinfo still states I'm using llvmpipe.
While reading about 'eselect opengl' I also read about checking the loaded modules. Indeed, nouveau is loaded, and there is no nvidia module.
Excerpt from lsmod:
Code: |
Module Size Used by
iwlmvm 569344 0
nouveau 2834432 1
...
|
Additionally, I read about checking the providers through xrandr, which I installed earlier, and the only available provider is nouveau.
xrandr --listproviders:
Code: |
Providers: number : 1
Provider 0: id: 0x67 cap: 0x7, Source Output, Sink Output, Source Offload crtcs: 4 outputs: 5 associated providers: 0 name:nouveau
|
|
|
Back to top |
|
 |
Anon-E-moose Watchman


Joined: 23 May 2008 Posts: 6230 Location: Dallas area
|
Posted: Sat Feb 22, 2025 10:50 pm Post subject: |
|
|
according to your xorg log file, nouveau loaded just fine.
Are you telling X to do anything when it starts? Do you have an .xinitrc file?
Because it went from loaded to unloading, as if you weren't telling X to do anything. _________________ UM780, 6.12 zen kernel, gcc 13, openrc, wayland |
|
Back to top |
|
 |
virtual-image n00b

Joined: 21 Feb 2025 Posts: 11
|
Posted: Sun Feb 23, 2025 1:27 am Post subject: |
|
|
Anon-E-moose wrote: | Are you telling X to do anything when it starts? Do you have an .xinitrc file?
Because it went from loaded to unloading, as if you weren't telling X to do anything. |
Here is my .xinitrc, which is also in the first post:
Code: | ibus-daemon -drx
cwm |
The most recent X log was obtained after closing an Xorg session, because it outputs to the virtual terminal where it stores the log, but that's only visible after closing X.
So, just in case, I checked a running session, and it does not output the "NVLeaveVT" event while it runs. Therefore, the Nouveau driver does not unload during the Xorg session. |
|
Back to top |
|
 |
virtual-image n00b

Joined: 21 Feb 2025 Posts: 11
|
Posted: Sun Feb 23, 2025 2:24 am Post subject: |
|
|
Ok, so when running glxinfo and glxinfo -B, there is no mention of nouveau.
However, when running eglinfo | grep -i nouveau, I get results.
Excerpt from eglinfo:
Code: |
Device platform:
Device #0:
EGL device extensions string:
EGL_EXT_device_drm, EGL_EXT_device_drm_render_node
Platform Device platform:
EGL API version: 1.5
EGL vendor string: Mesa Project
EGL version string: 1.5
EGL client APIs: OpenGL OpenGL_ES
EGL driver name: nouveau
EGL extensions string:
EGL_ANDROID_blob_cache, EGL_EXT_config_select_group,
EGL_EXT_create_context_robustness, EGL_EXT_image_dma_buf_import,
EGL_EXT_image_dma_buf_import_modifiers, EGL_EXT_pixel_format_float,
EGL_EXT_query_reset_notification_strategy, EGL_EXT_surface_compression,
EGL_KHR_cl_event2, EGL_KHR_config_attribs, EGL_KHR_context_flush_control,
EGL_KHR_create_context, EGL_KHR_create_context_no_error,
EGL_KHR_fence_sync, EGL_KHR_get_all_proc_addresses, EGL_KHR_gl_colorspace,
EGL_KHR_gl_renderbuffer_image, EGL_KHR_gl_texture_2D_image,
EGL_KHR_gl_texture_3D_image, EGL_KHR_gl_texture_cubemap_image,
EGL_KHR_image_base, EGL_KHR_no_config_context, EGL_KHR_reusable_sync,
EGL_KHR_surfaceless_context, EGL_KHR_wait_sync,
EGL_MESA_configless_context, EGL_MESA_drm_image, EGL_MESA_gl_interop,
EGL_MESA_image_dma_buf_export, EGL_MESA_query_driver,
EGL_MESA_x11_native_visual_id
OpenGL core profile vendor: Mesa
OpenGL core profile renderer: NV124
OpenGL core profile version: 4.3 (Core Profile) Mesa 24.3.3
OpenGL core profile shading language version: 4.30
OpenGL core profile extensions:
...
|
Full output here: https://paste.gentoo.zip/7FyjcyPC
If I run eglinfo -B, there is no nouveau mentions. |
|
Back to top |
|
 |
Anon-E-moose Watchman


Joined: 23 May 2008 Posts: 6230 Location: Dallas area
|
Posted: Sun Feb 23, 2025 2:26 am Post subject: |
|
|
Not all games will work with nvidia cards, especially with the nouveau driver and certain window games.
Your card is seen by X, the kernel, etc, just not that particular game.
You can emerge the nvidia drivers along with nouveau and swap between using nouveau and the the binary drivers.
Not much more can be done for you, IMO. _________________ UM780, 6.12 zen kernel, gcc 13, openrc, wayland |
|
Back to top |
|
 |
virtual-image n00b

Joined: 21 Feb 2025 Posts: 11
|
Posted: Sun Feb 23, 2025 2:43 am Post subject: |
|
|
Anon-E-moose wrote: | Not all games will work with nvidia cards, especially with the nouveau driver and certain window games.
Your card is seen by X, the kernel, etc, just not that particular game.
You can emerge the nvidia drivers along with nouveau and swap between using nouveau and the the binary drivers.
Not much more can be done for you, IMO. |
Listen: it is okay to not be knowledgeable, but to purport lies like this is not acceptable. You did not read the thread properly in the first place, so I do not put faith in you when you say, "Give up."
The driver is seen by Xorg and the kernel; but it is not seen by the applications running on top of Xorg.
glxinfo fails to find the nouveau driver. What this means is the OpenGL running in the back does not see nouveau or fails to load it and bails to llvmpipe.
What this results in is 300% CPU usage while running glxgears. 3000% CPU usage while booting Factorio. These factors are not normal.
Listen: my CPU is the Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz (from lscpu).
If you show me your glxgear results, with working hardware acceleration or whatever, and post your CPU, and they clock in 200-300% CPU usage, I will concede and use the proprietary NVIDIA drivers. But going above 100% CPU usage just seems abnormal.
P.S. I would have just checked the GPU usage, but apparently nouveau drivers have no monitoring programs. Go figure. |
|
Back to top |
|
 |
virtual-image n00b

Joined: 21 Feb 2025 Posts: 11
|
Posted: Sun Feb 23, 2025 4:59 am Post subject: |
|
|
It seems from the information gathered through eglinfo and glxinfo, that the X server is drawing via the nouveau driver, but the libglvnd is not recognizing the nouveau driver to select it for rendering.
So if there's a way to direct libglvnd, I think that would be the solution going forward. I am going to look into it, but I thought that this might help guide anyone searching simultaneously. |
|
Back to top |
|
 |
|
|
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 vote in polls in this forum
|
|