NVIDIA 435 driver looks exciting

How's building? Manjaro's linux54 fails to build:

  LD [M]  drivers/staging/uwb/umc.o
  AR      drivers/staging/built-in.a
  AR      drivers/built-in.a
==> ERROR: A failure occurred in build().
    Aborting...
Command exited with non-zero status 4

I haven’t tried to build it yet.

I’m working on another project right now, I’ll be taking a look once 5.3.8 is released though.

Currently it won't build with this patch at all. Therefore we will drop it for now.

New Nvidia driver 440.44 has already landed AUR. Here is what's new according to Nvidia:

  • Added support for the following GPU:
    Quadro T2000 with Max-Q Design
  • Added support for the __GL_SYNC_DISPLAY_DEVICE environment variable for Vulkan applications.
  • Fixed a bug that caused applications running directly on a display (such as VR HMDs) to tear when a G-SYNC or G-SYNC Compatible monitor is plugged in the system.
  • Fixed a bug in an error handling path that could cause a kernel crash while loading nvidia.ko.
  • Fixed driver installation failure on Oracle Linux 7.7 systems, where the NVIDIA kernel module failed to build with error "unknown type name 'vm_fault_t'".

PS: It results in error during the build for linux55 - well, no surprise.

is this the linux55 from the unstable repo? when i went to install it, it was installing as 5.4 so i think maybe a packaging error?

No that's mine [heavily borrowed from Manjaro of course (since like kernel 5.2 when I had to git bisect, build and reboot to check an enormous amount of commits in order to find the root for my USB type-C issue)]. Manjaro's maintainer has forgotten to change these strings when modifying linux54's PKGBUILD:

# set patchlevel to 4
  sed -ri "s|^(PATCHLEVEL =).*|\1 4|" Makefile

I mean setting patchlevel to 5 (Linux 5.5):

# set patchlevel to 5
  sed -ri "s|^(PATCHLEVEL =).*|\1 5|" Makefile

I don't know why they even needed that cuz Makefile is already correct, such thing could be useful only for pre-rc1 kernels when they still have numeration from the previous one.

1 Like

thats what im trying to do at the moment to figure out what changed from 5.3 to 5.4 that breaks prime sync, and possibly iwlwifi.

which makes it appear as 5.4, that makes sense. so if i understand correctly, the linux55 package was 5.5 but named differently. i only tested 5.5 to see if it had the same issues as 5.4 and it does. :man_shrugging:

Ah, now I see what you want.
First you'll need to clone Linus' tree:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/tree/
As far as I remember, we had discussed this issue when 5.4 was on early rc stage like rc3 or something. But it's more likely that the culprit is somewhere in the "array" of merge commits which were adopted before rc1. You'll have a lot of fun :smile:

Maybe but it breaks building of dkms modules.

yes it does. i have both arch linux 5.3 and 5.4 compiled/installed. now onto the bisect fun once an acceptable level of caffeine is reached. :coffee:

2 Likes

caffeine 2.9.4-2 :wink: the "sleep" powersaving mode.

Thank's for the hint - was my mistake :innocent:
I'll upload the fix to unstable.

Just for your info - for now we've no patches for ndiswrapper, nvidia and zfs

2 Likes

I'm using optimus-manager and it has hybrid mode since a while. Yesterday I switched from the old, default intel-nvidia-bumblebee mhwd setup on drivers 430xx to intel-nvidia-prime mhwd on drivers 440xx.

The process went flawlessly and was very simple. I just used GUI in Manjaro Settings->Hardware Setup, right-click to uninstall the old configuration, right-click to install the new one. Then I checked graphical configs and mhwd symlink got regenrated so I disabled it again (by adding .bak extension to it), rebooted the computer and all works correctly.

Optimus-manager switches between cards as it used to but now I have the option to test out the hybrid mode. It wasn't clear from this thread what I have to do, so I switched to hybrid mode and then tried the command from Manjaro wiki on Steam (where I can see if it uses Intel or Nvidia card):

DRI_PRIME=1 steam

Didn't work out, still was using Intel.

So I tried:

__NV_PRIME_RENDER_OFFLOAD=1 steam

Didn't work, still intel.

Then I used:

__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia steam

Now it finally seems to be working! Steam shows it as:

    Steam library version: <Runtime disabled>

Grapgic Card:
    Driver: NVIDIA Corporation GeForce GTX 970M/PCIe/SSE2
    Wersja sterownika: 4.6.0 NVIDIA 440.44
    Wersja OpenGL: 4.6

Does it use the normal proprietary nvidia driver thou as if I was using nvidia mode on optimus-manager? This has to be yet tested or maybe confirmed (or denied) by you.

Also, if it uses OpenGL, will it use vulkan when using Proton?

If there are any, more proper method to launch a program with nvidia, please let me know.

As it always was, just go to game properties and set this for run options: __NV_PRIME_RENDER_OFFLOAD=1 __VK_LAYER_NV_optimus=NVIDIA_only %command%. No need to run the entire Steam client on Nvidia.

1 Like

The command you gave doesn't work with entire Steam (I used __NV_PRIME_RENDER_OFFLOAD=1 __VK_LAYER_NV_optimus=NVIDIA_only steam) but I assume will work with an individual game.

I prefer to run entire Steam that way. It's simply less hassle. All it needs is to add the command to the launcher and forget about it. I'll run some tests with the command that works then. Also, big picture mode is blurry when using Intel. I know I can change some setting to fix it, but don't know which one and as said above, I prefer the simpler solution.

If NVIDIA working on the entire desktop works fine (no visible drop of performance) then running Steam only will work as well.

My question now is: will there be some friendlier command option in the future? Currently, this looks ridiculous, like some kind of hack and not an official solution.

Lutris has a option to enable/disable prime offloading with the games,so you select which one to enable.

Currently there is no stand-alone app for the hybrid switch but System76 devs has plans for doing one in their roadmap for 2020.

Ah, thanks. Didn't know that about Lutris. This is useful. I added that info to my optimus-manager guide.

I'm using optimus-manager for a year or so and I found it very reliable. There were some small hiccups along the way but I managed to solve them and for a long time it just works.

The problem with System76 future solution, it won't be compatible with Arch systems or at least not completely. We already have optimus-manager for Arch systems that works well (for most, there are few who are out of luck). The only problem is that it need some tinkering to set it. It's not just install a package and that's it, you have to read the f%^ing manual :wink: . That is why I wrote my guide. It may be more visual and less dry but truth to be told, it requires way more reading than the manual, but I hope it explains things better.

Oh ok I see. But my point was that you can use this command to run games with Vulkan as you requested. You can try launching Steam the way you like and then run a game with this options, it is interesting to know will it work this way. However I see no reason why it wouldn't.

1 Like

I tested Shadow Awakening in Nvidia mode, in Hybrid mode and launched through Lutris. The performance is the same, although at the first time I got a bit lowered FPSes on hybrid (-20%), but on a second time it went back to normal. So far it seems to run properly.

440.48.02 Beta driver added PRIME Synchronization support for Linux kernel 5.4 and newer

1 Like

Awesome! But I still have 440.44-3 so I guess I have to wait a bit more.

Forum kindly sponsored by