I’m all in for performance improvements, hope to see this reach Proton ASAP
Windows NT Sync Driver Proposed For The Linux Kernel
The patches are from CodeWeavers, and some of their work is cooperation with Valve, so hopefully proton gets those changes quickly. It usually takes a while before proton is based on a new wine release.
This is the best summary I could come up with:
This driver would expose /dev/ntsync as a new character device for implementing some of the Windows NT synchronization primitives directly within the Linux kernel.
Elizabeth Figura of CodeWeavers who published the “request for comments” (RFC) to various Linux kernel mailing lists explained of the motivations for this synchronization primitive driver for targeting Windows NT kernel behavior: "The Wine project emulates the Windows API in user space.
One particular part of that API, namely the NT synchronization primitives, have historically been implemented via RPC to a dedicated “kernel” process.
The NT synchronization APIs are too complex to implement on top of existing primitives without sacrificing correctness.
With these “NTSYNC” kernel driver patches there are benefits to different Windows games on Wine from 21% with Metro 2033 to as much as 678% with DiRT 3!
In any event as this series is marked “RFC” and there are some open design elements to its implementation, it may take some revisions before settling down on something that could be upstreamed.
The original article contains 405 words, the summary contains 166 words. Saved 59%. I’m a bot and I’m open source!
is this what used to be called winesync?
Honestly this is the kind of thing we needed from React os. It would of been nice to be able to run the react is kernel in the background and then have wine make calls to it.
What happened during the DiRT 3 benchmark lol, this game easily goes above 200 fps
Those benchmarks under “Upstream” does not include esync/fsync from my understanding
Is there any risk of lawsuits from Microsoft for all these?
No, this kernel patch will be different to what’s in Windows code. It implements what’s necessary for wine to be more performant, not the actual Windows API itself.
Wine implements those Windows API/ABIs, which is legal because it’s done by reverse-engineering. I believe in some countries (US?) it’s also necessary for the devs to never have seen Windows code.
PS: Google v. Oracle is a US supreme court decision where Oracle lost at trying to patent Java API’s.
https://en.m.wikipedia.org/wiki/Google_LLC_v._Oracle_America,_Inc.