[Bug 287453] x11/nvidia-driver: Vulkan and OpenGL are broken on RTX 5000 series

From: <bugzilla-noreply_at_freebsd.org>
Date: Thu, 14 Aug 2025 15:55:15 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=287453

--- Comment #14 from Austin Shafer <ashafer@badland.io> ---
We have an fix for this:
diff --git a/nvidia_subr.c b/nvidia_subr.c
index 3f83dd92fae8..260c77b766a4 100644
--- a/nvidia_subr.c
+++ b/nvidia_subr.c
@@ -180,7 +180,7 @@ int nvidia_alloc_hardware(device_t dev)
     struct nvidia_softc *sc;
     NvU32 flags, i;
     NvU32 enable_msi = 0;
-    int count;
+    int count, msi;
     nvidia_stack_t *sp;

     NV_UMA_ZONE_ALLOC_STACK(sp);
@@ -212,7 +212,13 @@ int nvidia_alloc_hardware(device_t dev)
     if ((rm_read_registry_dword(sp, NULL,
             "EnableMSI", &enable_msi) == NV_OK) && (enable_msi != 0)) {
         count = pci_msi_count(dev);
-        if ((count == 1) && (pci_alloc_msi(dev, &count) == 0))
+        /*
+         * The count may be greater than zero but we only want to allocate one
+         * interrupt when we call pci_alloc_msi. each MSI will be available to
+         * the driver as SYS_RES_IRQ resources starting at a rid 1.
+         */
+        msi = 1;
+        if ((count > 0) && (pci_alloc_msi(dev, &msi) == 0))
             sc->irq_rid = 1;
     }
     flags = RF_SHAREABLE | RF_ACTIVE;


which will be present in the next 580 driver release

-- 
You are receiving this mail because:
You are the assignee for the bug.