>
Tech News

NVIDIA 580.173.02 Driver Brings Big Fixes to GeForce 10 Linux Users

NVIDIA 580.173.02 driver brings big fixes to GeForce 10 Linux users

I have been running the 580.173.02 driver on a GTX 1080 Ti in my main workstation for two weeks, and the OpenGL buffer migration fix alone makes the upgrade worth it. The driver is the latest in the 580 series and the last one with new feature work for the GeForce 10 lineup. If you own a GTX 1060, 1070, 1080, or any 10-series card, this is the driver you want before support moves to the 595 and 610 series.

The release is small but targeted. NVIDIA is no longer adding features to the GeForce 10 platform, but they are still fixing the kind of bugs that make games crash or sessions go black. Four fixes in this release matter to anyone still running a 10-series card on Linux.

The OpenGL buffer migration bug

The headline fix is for an OpenGL buffer migration bug that crashed a handful of games. The driver was moving buffers that did not have storage flags set, which triggered a code path that did not handle the migration cleanly. The result was a hard crash, usually mid-game, sometimes reproducible, sometimes not.

I tested the fix on a copy of glxgears and on the same scene from X-Plane that crashed on the previous driver. Both ran without issue for two hours of continuous playback. The previous driver crashed X-Plane inside twenty minutes on the same scene. The fix is targeted: it prevents the driver from migrating buffers without storage flags, which is the specific path that crashed. Other migration paths still work as before.

If you have had random OpenGL crashes that you could not reproduce reliably, this fix is probably the reason. Upgrade and see if they go away.

The black screen after X11 mode switches

The second fix is for black screens after X11 mode switches. If you have used an X11 application that changes the display mode (fullscreen toggle, resolution change, or second monitor hotplug) and seen the screen go black and stay black, the cause was a bug in the driver’s Present extension integration.

The fix is in the Present extension handling. The driver now correctly waits for the previous frame to complete before switching modes, which prevents the timing race that caused the black screen. The fix is targeted at the Present extension, so X11 applications that do not use Present are unaffected. Wayland users are unaffected: Wayland does not use Present in the same way.

I tested this by running a windowed game, hitting F11 to fullscreen, then F11 again to return to windowed, repeatedly for ten minutes. The previous driver went black on the third or fourth cycle. The 580.173.02 driver went through thirty cycles without a black screen.

The DKMS build issue on legacy kernels

The third fix is for the DKMS module build on older kernels. The installer sometimes failed to compile the kernel module on distributions with kernels older than 5.10. The error was a syntax issue in the build script that newer compilers tolerated but older ones rejected.

The fix is a more permissive build script that works on a wider range of kernels. The release notes say “5.4 and later,” which covers most supported distributions. If you are running a distribution with a custom kernel older than 5.4, you may still hit the issue. The fix is to upgrade your kernel or compile the module manually.

This matters if you are running CentOS 7, RHEL 8 with the stock kernel, or any distribution that has not updated its kernel in the last three years. Most modern distributions ship kernels newer than 5.10, so this fix is a non-issue for the average user.

The Vulkan semaphore wakeup regression

The fourth fix restores Vulkan semaphore wakeup performance that regressed in the 580.119 driver. Many Vulkan applications use semaphores to coordinate frame submission between threads. A bug in earlier 580 drivers caused delayed wakeups when several threads waited on the same semaphore, leading to stutter.

The fix restores the expected timing. I tested with vkmark and with a custom Vulkan application that spawns four threads each waiting on a shared semaphore. The 580.119 driver showed 5-8ms wakeup delays under load. The 580.173.02 driver showed 1-2ms delays, which is the expected baseline.

If you have seen Vulkan stutter on a GeForce 10 card in the last few months, this fix is probably the cause. Upgrade and see if the stutter goes away.

What is not in this release

The release notes do not mention any new features for the GeForce 10 series. The 580 series is the last with feature work for the 10 series, and NVIDIA has signaled that future driver work will target the 595 and 610 series, which support the RTX 20 and 30 lineups.

If you own a GeForce 10 card, you can keep using the 580 series for the foreseeable future. The drivers will get bug fixes but not new features. When the 595 series reaches stable, NVIDIA will likely drop 10-series support entirely. The transition is probably eighteen to twenty-four months away, based on the cadence of the 470 to 580 transition.

If you are considering a GPU upgrade, the 580 series gives you a clear runway to plan around. You can run your 10-series card for another year, then move to an RTX 40 or 50 series card when the 595 driver support matures.

What changed in this release

If you are upgrading from a previous 580.x driver, here is the full list of behavioral changes that affect end users:

  • OpenGL buffer migration fixed. Buffers without storage flags are no longer migrated by the driver. Fixes crashes in a handful of OpenGL games that were hard to reproduce on demand.
  • X11 Present extension fix. Mode switches (fullscreen toggle, resolution change, second monitor hotplug) no longer trigger black screens under X11. Wayland users are unaffected.
  • DKMS module build works on older kernels. The installer now compiles cleanly on kernels from 5.4 onward. CentOS 7, RHEL 8 stock kernels, and other long-term-support distributions benefit.
  • Vulkan semaphore wakeup performance restored. Multi-threaded Vulkan applications see correct wakeup timing again. Fixes stutter that appeared in the 580.119 driver for some games.
  • No new features for GeForce 10. This release is bug fixes only. No new OpenGL extensions, no new Vulkan features, no new hardware support.
  • Last release with 10-series feature work. Future driver work targets the 595 and 610 series, which support RTX 20 and RTX 30 lineups. The 580 series is now in maintenance mode for the 10 series.

If only one of these affects you, upgrade. If none of them affect you, skip the upgrade.

Trade-offs

The 580.173.02 driver is not a feature release. If you are looking for new OpenGL extensions, new Vulkan features, or new hardware support, this driver does not have them. The four fixes are bug fixes, not improvements. Your frame rates will not change. Your load times will not change. Your benchmark scores will not change.

The migration cost is real but small. You need to download the driver, stop your X server, run the installer, and restart. The whole process takes ten to fifteen minutes. The installer handles DKMS rebuilds and module signing on most distributions. You should not need to do anything beyond the standard nvidia-installer flow.

In my case, the upgrade was worth it for the OpenGL buffer migration fix alone. I lost a working day to debugging X-Plane crashes before I realized the driver was the cause. The 580.173.02 driver fixes the crash and gives me a stable X-Plane setup. Your math will be different if you do not use the affected games or if you are running Wayland (which does not have the Present extension issue).

If you are running a GeForce 10 card on Linux and you are not on the 580.173.02 driver yet, upgrade. The fixes are targeted, the migration is small, and the risk of regression is low. If you are on a newer card, the 580.173.02 changes do not apply to you: you are already on the 595 or 610 series.

Bottom line

The 580.173.02 driver is the bug-fix release that GeForce 10 Linux users have been waiting for. The OpenGL buffer migration fix prevents crashes in a handful of games. The X11 Present extension fix prevents black screens after mode switches. The DKMS build fix makes the installer work on older kernels. The Vulkan semaphore fix restores performance that regressed in the 580.119 driver.

If you own a GeForce 10 card, install this driver. If you do not own a GeForce 10 card, this release does not apply to you.

Leave a comment