[Bug 287453] x11/nvidia-driver: Vulkan and OpenGL are broken on RTX 5000 series
| Newsgroups | gmane.os.freebsd.devel.x11 |
|---|---|
| Message-ID | <[email protected]/bugzilla/> |
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=287453 --- Comment #14 from Austin Shafer <[email protected]> --- 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.