Updated FUTEX2 System Call Patches Posted For Helping Wine/Proton, Other Use-Cases
FUTEX2 aims to better match the behavior of Windows and can wait on multiple futexes, among other improvements over the original system call. It's important for Wine/Proton and ultimately Steam Play for enjoying Windows games on Linux with optimal performance and reliability.
Besides testing with a patched version of Wine, the FUTEX2 code has also been tested against a modified version of the GNU C Library as well as Linux's perf tests. This "v3" patch-set now supports 64-bit futexes with its API in addition to 8/16/32-bits, API changes that do require alterations to the existing Proton/Wine and Glibc patches, and refactoring of the self-tests.
More details on the FUTEX2 system call v3 patches can be found via the kernel mailing list. However, giving the timing of these patches now only going out for review, it's too late for seeing in the now-open Linux 5.13 cycle but hopefully this work will manage to finally get squared away for a kernel release later this year.