You can sign up to get a daily email of our articles, see the Mailing List page.
We do often include affiliate links to earn us some pennies. See more here.

Linux Kernel 5.16 is out now bringing the futex2 work to help Linux Gaming

By - | Views: 28,317

Linus Torvalds has announced the release of Linux Kernel 5.16, bringing with it the usual assortment of new hardware support and improvements everywhere. Plus, there's something big for Linux gaming fans.

The one many have no doubt been waiting for is the inclusion of Collabora's work on FUTEX2 with futex_waitv(). This is supposed to help Linux gaming with Proton / Wine and also Native Linux gaming too. As Collabora developer André Almeida previously described it: "The use case of this syscall is to allow low level locking libraries to wait for multiple locks at the same time. This is specially useful for emulating Windows' WaitForMultipleObjects. A futex_waitv()-based solution has been used for some time at Proton's Wine (a compatibility layer to run Windows games on Linux). Compared to a solution that uses eventfd(), futex was able to reduce CPU utilization for games, and even increase frames per second for some games. This happens because eventfd doesn't scale very well for a huge number of read, write and poll calls compared to futex. Native game engines will benefit of this as well, given that this wait pattern is common for games.".

So with this Kernel version, plus a version of Proton / Wine and any Native games / game engines that support it, you might be able to see better performance.

Masses of other changes as well of course, although plenty of it most normal consumers won't be too excited about just yet. However a few noteworthy interesting bits for desktop / laptop users and gamers (more on KernelNewbies) like:

  • The addition of DisplayPort 2.0 for AMD GPU
  • Initial USB4 DP tunnelling support for AMD GPU
  • More work towards supporting Intel Xe discrete GPUs
  • Improvements for the PlayStation 5 DualSense controller
  • Better support of HP Omen laptops
  • A small fix for the Steam Deck screen
  • Nintendo Joy-Con and Pro Controller support
  • Hardware monitoring support for many more ASUS motherboards
Article taken from GamingOnLinux.com.
30 Likes
About the author -
author picture
I am the owner of GamingOnLinux. After discovering Linux back in the days of Mandrake in 2003, I constantly came back to check on the progress of Linux until Ubuntu appeared on the scene and it helped me to really love it. You can reach me easily by emailing GamingOnLinux directly. Find me on Mastodon.
See more from me
The comments on this article are closed.
21 comments
Page: 1/3»
  Go to:

Tim Jan 10, 2022
Best 5.16 RGB TUF RTX Aorus Linux gaming kernel ever. :)
iskaputt Jan 10, 2022
Very exciting, looking forward to try futex2 in a couple of games.
mrdeathjr Jan 10, 2022
according wine devs fsync dont be approved for now

https://bugs.winehq.org/show_bug.cgi?id=50281




Last edited by mrdeathjr on 10 January 2022 at 12:09 pm UTC
Linas Jan 10, 2022
View PC info
  • Supporter Plus
Quoting: iskaputtVery exciting, looking forward to try futex2 in a couple of games.
How does one try it out? Does it need to be enabled in some way?
Liam Dawe Jan 10, 2022
Quoting: mrdeathjraccording wine devs for now fsync dont be approved

https://bugs.winehq.org/show_bug.cgi?id=50281

Doesn't stop any of the various Wine builds like Wine-GE, Staging, Tkg and so on using it.
chelobaka Jan 10, 2022
Quoting: mrdeathjraccording wine devs for now fsync dont be approved

https://bugs.winehq.org/show_bug.cgi?id=50281


Wine devs were always reluctant on adding Linux specific code. Take Gallium Nine for example. But who cares about vanilla Wine nowadays anyway when we there is Proton and even Proton GE?
mrdeathjr Jan 10, 2022
Quoting: Liam DaweDoesn't stop any of the various Wine builds like Wine-GE, Staging, Tkg and so on using it.

yeah but unsupported is unsupported



......however still life like a hack




Last edited by mrdeathjr on 10 January 2022 at 12:14 pm UTC
iskaputt Jan 10, 2022
Quoting: Linas
Quoting: iskaputtVery exciting, looking forward to try futex2 in a couple of games.
How does one try it out? Does it need to be enabled in some way?

I can only speak for Lutris right now, but they have a simple checkbox for enabling Fsync in the runner options.
mrdeathjr Jan 10, 2022
Quoting: chelobakaWine devs were always reluctant on adding Linux specific code.
Take Gallium Nine for example.
But who cares about vanilla Wine nowadays anyway when we there is Proton and even Proton GE?

similar situation with dxvk because dxvk use c++ and wine use only plain c and other things according wine devs

actually most people use dxvk because wined3d performance on dx9 is very poor

without talk wined3d in dx11 is only a:






Last edited by mrdeathjr on 10 January 2022 at 12:34 pm UTC
BielFPs Jan 10, 2022
Does users need to do something to enable Futex2 benefits, besides installing Kernel >=5.16 and the latest version of proton?
While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon. Plain Donations: PayPal.

This ensures all of our main content remains totally free for everyone! Patreon supporters can also remove all adverts and sponsors! Supporting us helps bring good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
The comments on this article are closed.