You can sign up to get a daily email of our articles, see the Mailing List page!

Valve have announced the release of Steam Play Proton 4.11, this is a pretty exciting one and it's pretty huge overall.

Firstly, it was re-based on top of Wine 4.11. So it brings thousands of improvements over, considering that's quite a version bump. Additionally, 154 patches from Proton were upstreamed directly to Wine!

The next exciting bit is that Valve are now funding D9VK (and have been since June according to developer Joshua Ashton), along with shipping it in Proton as part of this update. This Vulkan-based Direct3D 9 renderer is still experimental, so it's not enabled by default as you need to use the "PROTON_USE_D9VK" setting.

Additionally DXVK was updated to 1.3, your current display refresh rate is now actually reported to games, there's more fixes to window management and mouse cursor focus, VR users rejoice as there's support for the latest OpenVR SDKs, FAudio was updated to 19.07, GameMaker titles got a fix for networking and there's a joystick input lag fix and rumble support for certain games.

Possibly just as exciting, is that a bunch of Wine "modules" are now built as Windows PE files instead of Linux libraries. Eventually, this will help some DRM and anti-cheat systems as work progresses on it. Fantastic to see work on that being done!

Is that all? Oh no—there's more.

When Valve identified issues with multi-threaded games as Proton development was being ramped up, CodeWeavers worked on developing the "esync" patchset to address it. It worked well but it came with multiple issues. As Valve said it needed a "special setup" and can cause "file descriptor exhaustion problems in event-hungry applications", they also think it "results in extraneous spinning in the kernel". So, they're working on what they're calling fsync and suggesting changes to accommodate it in the Linux Kernel.

Valve also showed off some proof-of-concept glibc patches, to expose the Kernel patches as part of the pthread library to get it all working. They said that if it's all accepted, "we would achieve efficiency gains by adopting it in native massively-threaded applications such as Steam and the Source 2 engine". You can read more about all that work in this Steam forum post and fsync testing instructions here.

As always, the Proton changelog for Steam Play can be found here.

Article taken from GamingOnLinux.com.
52 Likes, Who?
We do often include affiliate links to earn us some pennies. We are currently affiliated with GOG, Humble Store and Paradox Interactive. See more information here.
About the author -
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.
See more from me
74 comments
Page: 1/8»
  Go to:

rustybroomhandle 31 July 2019 at 10:27 am UTC
So far I have found D9VK to work really well with Dragon's Dogma: Dark Arisen, and Skyrim. The latter I'd have to play more to know for sure, but with DD, it's pretty much flawless. (plus a really good game to boot)
Arehandoro 31 July 2019 at 10:39 am UTC
Oh la la! What an update! It's crazy to see the amount of new features that have been introduced with this new version. Hopefully tonight I can try some games and test it.


Thanks to everyone, and Valve, for doing this effort.
Liam Dawe 31 July 2019 at 10:40 am UTC
Also, sorry for the delay everyone. Yesterday was my 31st birthday so I took a rare 100% day off, I'm in catch-up mode now.
Eike 31 July 2019 at 10:44 am UTC
liamdaweAlso, sorry for the delay everyone. Yesterday was my 31st birthday so I took a rare 100% day off, I'm in catch-up mode now.

Well...

... we hope this was the last time!









Seriously: Happy birthday, young man!
Eike 31 July 2019 at 10:45 am UTC
QuoteSo, they're working on what they're calling fsync and suggesting changes to accommodate it in the Linux Kernel.

Valve also showed off some proof-of-concept glibc patches, to expose the Kernel patches as part of the pthread library to get it all working.

That's really great. For Linux gaming, Valve is improving Linux in general.
chancho_zombie 31 July 2019 at 10:45 am UTC
building now patch didn't apply cleanly

 patch -p1 < 1
patching file include/uapi/linux/futex.h
patching file kernel/futex.c
Hunk #1 succeeded at 195 (offset 12 lines).
Hunk #2 succeeded at 2694 (offset -27 lines).
Hunk #3 succeeded at 2924 (offset -18 lines).
Hunk #4 succeeded at 3824 (offset -5 lines).
Hunk #5 succeeded at 3842 (offset -5 lines).
Hunk #6 succeeded at 3852 (offset -5 lines).
Hunk #7 succeeded at 4036 (offset -5 lines).
patch unexpectedly ends in middle of line


update: it fails.

 kernel/futex.o
kernel/futex.c: In function ‘do_futex_wait_multiple’:
kernel/futex.c:2712:7: error: implicit declaration of function ‘futex_setup_timer’; did you mean ‘futex_top_waiter’? [-Werror=implicit-function-declaration]
  to = futex_setup_timer(abs_time, &timeout, flags,
       ^~~~~~~~~~~~~~~~~
       futex_top_waiter
kernel/futex.c:2712:5: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
  to = futex_setup_timer(abs_time, &timeout, flags,
     ^
kernel/futex.c:2731:9: error: implicit declaration of function ‘__futex_wait_setup’; did you mean ‘futex_wait_setup’? [-Werror=implicit-function-declaration]
   ret = __futex_wait_setup(wb[i].uaddr, wb[i].val,
         ^~~~~~~~~~~~~~~~~~
         futex_wait_setup
cc1: some warnings being treated as errors
scripts/Makefile.build:276: recipe for target 'kernel/futex.o' failed


update 2: seems kernel must be at least 5.1


Last edited by chancho_zombie at 31 July 2019 at 10:52 am UTC
Ehvis 31 July 2019 at 10:47 am UTC
View PC info
  • Supporter
  • Top Supporter
liamdaweAlso, sorry for the delay everyone. Yesterday was my 31st birthday so I took a rare 100% day off, I'm in catch-up mode now.

I'm surprised you managed that! Well done! You should probably do it more often.

I'm particularly interested in this new release because it includes the updates needed to use the new Index controllers in games that have specific support for them. And now the temperature is dropping again, I can continue my VR adventures.
bird_or_cage 31 July 2019 at 10:50 am UTC
It seems lots of D9 games that were borked are fixed now, like Fable: Anniversary, Deadlight. Did not yet have time to test more.
Nanobang 31 July 2019 at 10:59 am UTC
First off, a very happy birthday to you Liam!

This is all very, very exciting news about SteamPlay Proton, of course, but I'm most excited by the inclusion of D9VK at last! Is the PROTON_USE_D9VK setting done in Steam Launch option on a per game basis? (Please say yes.)

Exciting news!
Liam Dawe 31 July 2019 at 11:04 am UTC
NanobangFirst off, a very happy birthday to you Liam!

This is all very, very exciting news about SteamPlay Proton, of course, but I'm most excited by the inclusion of D9VK at last! Is the PROTON_USE_D9VK setting done in Steam Launch option on a per game basis? (Please say yes.)

Exciting news!
You can do it per-game, yes. Do "PROTON_USE_D9VK=1 %command%" as a launch option.
  Go to:
While you're here, please consider supporting GamingOnLinux on Patreon, Liberapay or Paypal. We have no adverts, no paywalls, no timed exclusive articles. Just 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!

You need to Register and Login to comment, submit articles and more.


Or login with...

Livestreams & Videos
None currently, submit yours here!
See more!
Popular this week
View by Category
Contact
Latest Comments
Latest Forum Posts