Going through my usual scanning of all the “-next” Git subsystem branches of new code set to be introduced for the next Linux kernel merge window, a very notable addition was just queued up… Linux 6.10 is set to merge the NTSYNC driver for emulating the Microsoft Windows NT synchronization primitives within the kernel for allowing better performance with Valve’s Steam Play (Proton) and Wine of Windows games and other apps on Linux.
2024, the most memorable year of Linux gaming so far :-)
why? i feel things are stabilizing and we are seeing incremental improvement instead of sweeping change now.
Oh no, all the projects are maturing and stabilizing? How boring, I don’t know how Linux gaming will survive
oh i didnt mean to imply this is bad, just that it isnt memorable.
The start of the environment stabilizing is memorable. People ten thousands of generations in the future will remember the exact day when Linux Gaming became stable.
Yeah, I’m team @[email protected] on this one. It’s important but it’s not revolutionary
The Year of Memorable Linux
Nah mate, 2022 was when it started getting really good, GPL got rid of shader compilation stuttering (as well as dxvk-async related glitches), compatibility improved massively with improvements to both dxvk and vkd3d, and ray tracing finally started working
In addition to being useful for gamers, these are probably about to be the least likely to change APIs in the kernel.
something something win32 is the most stable api
I was wondering if this can be used outside of Windows context.
Edit: I’m asking specifically for Linux context.
Please don’t
Why not? Would you rather that we have a Windows-exclusive subsystem in our kernel?
-
Kernel devs then would want to make it stable API. I don’t want Windows API being stable part of kernel.
-
It mostly implements racy stuff like pulsing event.
-
There is already known subsystem that does not have stable API because it is used by only one project - DRI.
-
Backwards compatibility is important
How does that have to do with the sync primitive?
Since it’s a new feature, would it not cause incompatibility for any kernel versions before it was added?
This is the best summary I could come up with:
Going through my usual scanning of all the “-next” Git subsystem branches of new code set to be introduced for the next Linux kernel merge window, a very notable addition was just queued up… Linux 6.10 is set to merge the NTSYNC driver for emulating the Microsoft Windows NT synchronization primitives within the kernel for allowing better performance with Valve’s Steam Play (Proton) and Wine of Windows games and other apps on Linux.
The past several months has seen much work on the NTSYNC kernel driver for allowing better Wine (Windows) gaming/app performance on Linux.
"ntsync uses a misc device as the simplest and least intrusive uAPI interface.
It was very exciting to see this morning that Greg Kroah-Hartman has queued the NTSYNC patches into char/misc’s char-misc-next branch.
With the patches now residing there, they will be submitted for the Linux 6.10 merge window opening up in May and then debuting as stable this summer – barring any last minute issues or objections raised by Linus Torvalds.
Very exciting year for Linux gamers with NTSYNC going mainline, ongoing work around HDR and other display improvements, and all of the Wayland advancements being made, among the usual Linux hardware support advancements and other common kernel milestones being seen in 2024.
The original article contains 345 words, the summary contains 209 words. Saved 39%. I’m a bot and I’m open source!
Is this an alternative to FSYNC and ESYNC?
Yes.
What about futex2?
So will FL Studio and Photoshop work on Linux then?
Limitless Peace
Fl studio already works fine for me through wine
I remember running FL Studio using WINE 15 years ago and it worked fine.
Really… interesting…
What about loopcloud and all vsts?
Vsts are a bit of a gamble. Serum’s UI is bit buggy, and Massive works flawlessly. I don’t really have many vsts to test though. Idk what loopcloud is.
I usually only run LTS kernels but I might make an exception here.
I want it that way!