Faith Ekstrand has merged another two dozen patches for the open-source NVIDIA "NVK" Vulkan driver with next quarter's Mesa 24.3.
Nouveau News Archives
495 Nouveau open-source and Linux related news articles on Phoronix since 2006.
Here's how an exciting message from a NVIDIA engineer that just hit the mailing list begins: "NVIDIA has been exploring ways to better support the effort for an upstream kernel mode driver for GPUs that are capable of running GSP-RM firmware, since the introduction to Nova."
Merged for Linux 6.10 is DRM_Panic as a kernel panic screen for situations akin to Windows' well known "Blue Screen of Death". This is a kernel-based panic screen as an alternative to systemd's recent systemd-bsod. Patches have been posted by Red Hat for allowing the open-source NVIDIA "Nouveau" Direct Rendering Manager driver to work with DRM Panic.
Red Hat engineers have been developing Nova as a new, Rust-written open-source NVIDIA kernel graphics driver as the eventual successor to the Nouveau kernel driver and is designed around NVIDIA's GPU System Processor (GSP) thus making the driver relevant for RTX 20 / Turing GPUs and newer. Today they posted a request for comments (RFC) patch series of the Nova driver and Rust DRM abstractions.
After the 22 patches were under review for the past eight months, merged today is the NVK Vulkan driver support for the VK_EXT_image_drm_format_modifier extension for handling DRM format modifiers.
In addition to all of the contributions Valve graphics engineers have been making to the open-source Radeon "RADV" Vulkan driver, they have also begun investing in improvements to the open-source Mesa NVIDIA "NVK" Vulkan driver too. With pending patches there is now explicit GPU synchronization support working for the NVK driver in conjunction with their Gamescope compositor.
Adding to the impressive number of features to be found in this quarter's Mesa 24.1 release is now the open-source NVIDIA "NVK" Vulkan driver supporting implicit pipeline caching.
Following last year Nouveau receiving support for running with the NVIDIA GSP firmware and initial GeForce RTX 40 series accelerated support, Ben Skeggs of Red Hat unexpectedly resigned as the Nouveau kernel driver maintainer. It turns out this longtime open-source Nouveau driver developer is now employed by NVIDIA Corp and continuing to work on the open-source Linux graphics driver.
In addition to working on NOVA as a Rust-based, GSP-focused NVIDIA open-source kernel graphics driver being developed as the eventual successor to the existing Nouveau DRM kernel driver, over in user-space Mesa developers have begun landing a portion of their Nouveau/NVK driver library code rewritten in Rust.
An earlier fix to the Nouveau open-source NVIDIA kernel graphics driver with the new GPU System Processor (GSP) code path had fixed RTX 20 "Turing" GPU support but inadvertently broke the RTX 30 "Ampere" support. David Airlie sent out an urgent new fix today for addressing that regression in the NVIDIA GSP display code.
Red Hat's display driver team has recently been devising plans for Nova, a new to-be-developed Linux DRM kernel driver written in Rust for open-source NVIDIA graphics support as the successor/replacement to Nouveau for newer NVIDIA GPU generations supporting the GPU System Processor (GSP). Making this effort all the more involved is being written in Rust at a time when various kernel abstractions are still being devised and not yet upstreamed.
Mesa's NVK Vulkan driver for open-source NVIDIA support has merged sparse memory support. This is a big milestone as it's needed for running a number of newer games under Linux.
While there is a lot of frustration from the news last week of the HDMI Forum rejecting AMD's open-source HDMI 2.1 driver support plans, the open-source NVIDIA "Nouveau" driver won't hopefully have too challenging of an experience in enabling HDMI 2.1 functionality since much of the display handling there is left up to NVIDIA's (closed-source) firmware binaries.
It's a big day today in the open-source NVIDIA Nouveau/NVK space... The Mesa NVK driver is now officially declared a Vulkan 1.3 conformant implementation by the Khronos Group! In turn the NVK driver is no longer considered experimental and with Mesa 24.1 will build by default for x86/x86_64-based installations.
The open-source NVIDIA "NVK" Vulkan driver within the Mesa codebase has merged support for the important VK_EXT_shader_object and VK_EXT_graphics_pipeline_library extensions. Additionally, as part of supporting these new extensions, this introduces the code for a common Vulkan runtime to Mesa.
With the Nouveau driver support for using the NVIDIA GSP (GPU System Processor) that was added in Linux 6.7, that is only used by default on the GeForce RTX 40 "Ada" GPUs and moving forward where otherwise there is no accelerated support. The NVIDIA GSP is present in the GeForce RTX 20 "Turing" and RTX 30 "Ampere" hardware too, but not used by default unless setting a module option to enable the mode. However, a new patch is pending that would allow kernel builders to optionally enable the GSP mode by default.
The latest notable feature addition for Mesa 24.0 worth mentioning is to NVK, the open-source NVIDIA Vulkan driver that works with the Nouveau DRM kernel driver for providing increasingly robust Vulkan API support on this alternative to NVIDIA's proprietary graphics driver.
Ahead of the Linux 6.7 kernel set to be released on Sunday, Red Hat's David Airlie has sent in some last minute fixes for the open-source NVIDIA "Nouveau" DRM kernel driver. These fixes are for addressing fallout from the NVIDIA GPU System Processor (GSP) firmware support merged for the v6.7 cycle.
In at least one game running on Linux via Proton Experimental, the Mesa NVK open-source Vulkan driver paired with the latest Nouveau reverse-engineered kernel driver is delivering better performance than NVIDIA's proprietary Linux graphics driver.
A patch merged this weekend for Mesa 24.0-devel is helping the performance of the open-source NVK Vulkan driver for NVIDIA GPUs but the performance remains well short still of the proprietary NVIDIA Linux graphics driver stack.
It was just last week NVK developers were celebrating Vulkan 1.0 conformance while now this open-source NVIDIA Vulkan driver within Mesa is preparing to expose Vulkan 1.1 support.
Mesa's NVK Vulkan driver atop the Nouveau DRM kernel driver is now officially Vulkan 1.0 conformant for passing all the necessary Vulkan 1.0 conformance test suite cases. Though don't get your hopes too high for this open-source NVIDIA Linux driver as the performance is still overall slow and the driver stack remains a work-in-progress, but at least it's a step in the right direction.
The first week of the Linux 6.7 merge window began with the surprise of the Bcachefs file-system being merged and now capping off the first week is another surprise... Nouveau GPU System Processor (GSP) firmware integration that allows making use of NVIDIA's binary GSP firmware on RTX 20 "Turing" and newer GPUs for having improved support. In turn this GSP route also provides initial support for GeForce RTX 40 series support.
Hours after posting a large patch series for enabling the Nouveau kernel driver to use NVIDIA's GSP for improving the support for RTX 20/30 series hardware and finally enabling accelerated graphics support on RTX 40 "Ada Lovelace" GPUs, the Red Hat maintainer has resigned from his duties.
The long-awaited patches for allowing the open-source NVIDIA "Nouveau" upstream Linux kernel driver to leverage NVIDIA's GPU System Processor "GSP" firmware for handling GPU re-clocking and other hardware tasks with RTX 20 GPUs and newer have been posted. With this set of 44 patches also comes the initial GPU hardware accelerated support for the GeForce RTX 40 "Ada Lovelace" GPUs that is built upon this new GSP driver code path.
The Nouveau DRM kernel driver changes for new user-space APIs to be used by the Mesa NVK open-source Vulkan driver have now been submitted for pulling to DRM-Next from the current drm-misc-next queue. These Nouveau kernel driver additions for NVK in turn will then premiere with the upcoming Linux 6.6 cycle.
NVK as the open-source NVIDIA Vulkan driver being developed for Mesa has to this point been developed out-of-tree as it's been in its early stages, depends upon Nouveau DRM kernel driver improvements, and ultimately isn't too useful until the Nouveau GSP/re-clocking situation is sorted out upstream. But overnight the merge request was opened to introduce NVK to mainline Mesa.
Faith Ekstrand today published a blog post outlining recent efforts around NVK, the open-source Vulkan driver for NVIDIA hardware developed namely by the Nouveau development community. Some recent highlights include:
NVK as the open-source Mesa Vulkan driver being developed for NVIDIA graphics hardware will hopefully see YCbCr format support this summer.
As a follow-up to yesterday's article about the believed fix for the Nouveau use-after-free bug plaguing Linux 6.3 users of this open-source NVIDIA driver, the fix has now been merged to Linux 6.4 Git and in turn should also be picked up for an upcoming Linux 6.3 point release.
As a follow-up to the potentially nasty open-source NVIDIA "Nouveau" driver bug in Linux 6.3, the issue is believed to have been figured out and a patch is pending that appears to address the issue.
It's recommended to avoid using the open-source NVIDIA "Nouveau" graphics driver on the current stable Linux 6.3 series as there is a serious bug present that could cause varying issues to your system.
Development of the NVK open-source NVIDIA Mesa Vulkan driver is being done in part on a nearly decade old GeForce GTX 980M mobile graphics processor since at the moment it's one of the more recent NVIDIA GPUs that can be re-clocked using the existing Nouveau kernel driver code.
The upstream, open-source Nouveau DRM kernel driver working to make use of the NVIDIA GPU System Processor "GSP" will ideally lead to more punctual new hardware support, hopefully overcome the power management / re-clocking challenges that have plagued the driver for years with very low performance, and other current limitations. But it will also lead to more NVIDIA GPU firmware files in the linux-firmware tree and increased bloat.
NVIDIA has published updated NVIDIA TU10x /TU11x "Turing" GPU firmware to support newer RTX 20 hardware revisions and fix outstanding issues affecting the open-source Nouveau driver.
Red Hat developer David Airlie has shown off the progress being made on bringing up not only the open-source Mesa NVIDIA Vulkan driver "NVK" but doing so while making use of the NVIDIA GPU System Processor (GSP) firmware that ultimately is needed for being able to deliver better open-source driver support and performance.
In addition to Nouveau developers at Red Hat working on NVIDIA GPU System Processor (GSP) support to ease their kernel driver development and ideally leading to quicker upstream hardware support and finally tackling power management / re-clocking for newer GPUs, another important area on the open-source kernel driver side has been about re-architecting certain interfaces to be able to better support features for the Vulkan API.
Over the past year NVK has taken shape as a -- currently out-of-tree -- Mesa Vulkan driver for supporting NVIDIA graphics hardware. This open-source NVIDIA Vulkan driver is inching closer to the point of being upstreamed into Mesa, but before it's usable for gamers/enthusiasts there is kernel work that must happen too.
The NVK open-source Vulkan driver for NVIDIA GPUs that has seen a lot of progress over the past year is now able to run some games like The Talos Principle, which was the launch title for Vulkan 1.0. While the NVK driver is correctly rendering, it's still slow until the kernel driver side is sorted out with re-clocking.
While NVIDIA GeForce RTX 40 "Ada Lovelace" GPUs are shipping, the Nouveau Linux driver stack for open-source support on NVIDIA hardware is finally getting ready to provide basic OpenGL support for the existing RTX 30 "Ampere" graphics processors.
It's been a long time since there has been much in the way of notable Nouveau DRM driver changes merged to the Linux kernel for improving the open-source NVIDIA graphics support. Fortunately, that is changing with Linux 6.2 set to receive a rather big update.
The NVK open-source NVIDIA Vulkan driver that was started earlier this year and has been progressing nicely the past few months is starting to see work now on its own shader compiler where as up to this point has been relying on existing Nouveau Mesa code for code generation.
With the recent Linux 6.1 merge window there sadly weren't any Nouveau Direct Rendering Manager (DRM) driver improvements for getting the RTX 30 "Ampere" OpenGL support working yet with the mainline kernel even with RTX 40 series having launched. Needless to say, there also wasn't any progress on the re-clocking front for getting the GTX 900 series and later running in a performant manner on this open-source driver. But the Nouveau developers at Red Hat haven't simply been idling but rather have been working on the NVIDIA GPU System Processor (GSP) support for improving the RTX 20 "Turing" support and newer.
Longtime open-source Linux graphics driver developer and DRM subsystem maintainer, David Airlie of Red Hat, took the stage at Linux Plumbers Conference today to talk about Nouveau and the state of the open-source NVIDIA Linux driver.
As part of today's "drm-misc-fixes" pull request, NVIDIA Ampere GA103 GPU support is set to be added to the Nouveau DRM driver with Linux 6.0.
Merged last year into the Linux kernel's Nouveau DRM driver was initial support for GeForce RTX 30 "Ampere" GPUs initially in the form of the GA100 and GA102 parts. That support for the moment is still limited to just mode-setting/display support with 3D still being tackled, but now a patch has been posted that rather trivially extends the support to cover the GA103 GPU too.
While AMD and Intel are busy with big graphics driver changes for each new version of the Linux kernel, the open-source NVIDIA "Novueau" kernel driver that is largely just worked on by Red Hat employees is just stumbling along. NVIDIA in May announced they are transitioning to an open-source kernel driver approach, but that current kernel driver is not in shape for upstreaming and due to the heavy use of the GPU System Processor (GSP) that source release hasn't been a huge help yet for the reverse-engineered Nouveau driver. With the upcoming Linux 5.20, Nouveau has some display patches.
There hasn't been much to report on lately for the reverse-engineered Nouveau driver providing open-source NVIDIA GPU driver support on Linux. Several recent Linux kernel series haven't even seen any Nouveau DRM/KMS driver pull requests with changes. For the upcoming Linux 5.20 cycle, a Nouveau set of changes were sent in today to DRM-Next but it's quite tiny.
Following the recent news about Nouveau shifting code around so their shader compiler can be used outside of Nouveau Gallium3D, Red Hat's Karol Herbst who has been a longtime Nouveau developer has been posting patches for his new "NVK" Nouveau Vulkan driver effort.
While the just talked about Nouveau beginning to land GeForce RTX 30 "Ampere" open-source support is exciting, as mentioned there still are hurdles to overcome for having good open-source NVIDIA driver performance on modern GPUs. So equally exciting news is that Nouveau has begun adapting some of their code into a standalone library so it can be used in the future by other new driver(s).
495 Nouveau news articles published on Phoronix.