510.39.01 BETA Linux driver

Get it here.

Primary changes:

  • Changed the minimum required Linux kernel version from 2.6.32 to 3.10.
  • Add indicator for Resizable BAR support on compatible systems.
  • Added a GUI control for setting Image Sharpening values in the app profiles page of the nvidia-settings control panel.
  • Added AV1 decode support to the NVIDIA VDPAU driver. See the VDPAU Support appendix in the README for supported AV1 decoder profiles.
  • Enabled GSP Firmware by default on NVIDIA T4, A100, A30, A40, A16, A2, and several other Tesla products. Please see the “GSP Firmware” chapter in the README for details.
  • Added support for the bufferDeviceAddressCaptureReplay Vulkan feature.
  • Added support for the GBM API. This adds the new symlink nvidia-drm_gbm.so pointing to the file libnvidia-allocator.so.VERSION to implement a GBM backend driver usable with the GBM loader from the Mesa project version 21.2 and above, as well as the files libnvidia-egl-gbm.so.1.1.0 and 15_nvidia_gbm.json, which implement EGL support for the GBM platform (EGL_KHR_platform_gbm).

New Vulkan extensions:

  • Added support for the VK_EXT_border_color_swizzle extension.
  • Added support for the VK_EXT_depth_clip_control extension.
  • Added support for the VK_EXT_image_view_min_lod extension.
  • Added support for the VK_EXT_load_store_op_none extension.
  • Added support for the VK_EXT_primitive_topology_list_restart extension.
  • Added support for the VK_KHR_dynamic_rendering extension.
  • Added support for the VK_KHR_format_feature_flags2 extension.
  • Added support for the VK_KHR_maintenance4 extension.
  • Added support for the VK_KHR_present_id extension.
  • Added support for the VK_KHR_present_wait extension.
  • Added support for the VK_KHR_shader_integer_dot_product extension.
  • Added support for the VK_KHR_shader_subgroup_uniform_control_flow extension.

Fixed bugs:

  • Fixed a bug in the Vulkan compiler where 64-bit atomics were partially broken.
  • Fixed a bug in the Vulkan driver where individual components of barycentric inputs could not be read.
  • Fixed a bug in the Vulkan driver where some Ray Tracing shaders would timeout, resulting in device loss.
  • Fixed a bug in the Vulkan driver where the SPIR-V Centroid interpolation decoration was not ignored when used in conjunction with FragCoord.
  • Fixed a bug in the Vulkan driver where unreferenced descriptor bindings were sometimes not ignored properly.
  • Fixed a bug in the Vulkan driver where unused input attributes to a vertex shader would corrupt the interpolation qualifiers for the shader.
  • Fixed a bug in the Vulkan driver where vkCmdBindDescriptorSets would not properly handle pDynamicOffsets for compute pipelines.
  • Fixed a bug in the Vulkan driver where VK_NULL_HANDLE was not properly handled as input to VkRenderingFragmentShadingRateAttachmentInfoKHR.imageView.
  • Fixed a bug that caused the nvidia-settings control panel to report inaccurate ECC error counts, and completely prevented the reporting of aggregate ECC error counts. ECC error counts reported by nvidia-smi were not affected.
  • Fixed a bug that could cause the X server to crash when starting a new server generation on PRIME configurations.
  • Fixed a bug where calls to vkWaitForPresentKHR would fail with VK_TIMEOUT on Maxwell and Pascal GPUs.
  • Fixed a bug where VK_NVX_binary_import was advertised as supported on unsupported platforms. This caused calls to vkCreateDevice to fail if applications attempted to enable VK_NVX_binary_import on such platforms.
  • Fixed a bug which caused OpenGL and Vulkan applications to generate excessive traffic over dbus while attempting to communicate with nvidia-powerd, even though nvidia-powerd was not running.
  • Fixed a bug which caused Vulkan applications to hang when the __GL_THREADED_OPTIMIZATIONS environment variable was set to enable threaded optimizations in the NVIDIA driver.
  • Fixed several issues which caused the supported-gpus.json file to contain incorrect product information.

Other changes:

  • Optimized the Vulkan fullscreen presentation path for X11 and direct-to-display swapchains.
  • Removed libnvidia-cbl.so from the driver package. This functionality is now provided by other driver libraries.
  • Removed support for NvIFROpenGL. This functionality was deprecated in the 470.xx driver release.
  • Removed the runtime loader (rtld) sanity test from nvidia-installer. This test has been made largely obsolete by GLVND.
  • Updated nvidia.ko to load even if no supported NVIDIA GPUs are present when an NVIDIA NVSwitch device is detected in the system. Previously, nvidia.ko would fail to load into the kernel if no supported GPUs were present.
  • Updated nvidia-xconfig to add a BusID to the “Device” section by default on systems with both NVIDIA and non-NVIDIA GPUs. This behavior can be suppressed by using the --no-busid option.

And the nvidia-powerd is included again, now comes with a systemd file but still no manual entry. I wonder if that could change TGP?

Zero changes about Wayland? :/

What do you need to be fixed? ;-)


out of jokes. plasma is a bit inestable, but usable. fix plasmashell things is a great start point

What happened to the screen capture using PipeWire/DMA-BUF? It was already working with previous driver version. Are there any plans to implement it properly?

The hardware cursor is still not working in Sway, although it can be disabled.

Personally haven’t got nvidia-powerd to run either way (says something about no matching GPU), unsure if it’s even meant to be deployed to users yet.

Edit: on another note, seems aarch64’s .run has nvidia-powerd.service but lacking nvidia-powerd itself

Sway and XWayland still has annoying flickering especially anything with OpenGL acceleration.

Chrome still cannot run native in Wayland using Nvidia 510 with GPU acceleration and thus has very poor WebGL performance.

Gnome Wayland session crashes on Optimus (Intel iGPU + Nvidia wired to HDMI) laptops when connecting an external monitor.

When it doesn’t crashes it just doesn’t displays anything on the external monitor.

Relevant issue on Mutter repo:


CC: @aplattner

@ionen do you have one of those:

@generix nope, but good to know – kind of wondered if I was packaging something that’s unusable on my distro for users (service is left disabled by default either way)

hopefully it gets some documentation by the time it’s 510 is out of beta