Skip to content

Latest commit

 

History

History
24 lines (16 loc) · 885 Bytes

README.md

File metadata and controls

24 lines (16 loc) · 885 Bytes

futex_waitv() patches

This repository has a collection of backported patches to add support for the futex_waitv() syscall. It will appear in mainline at Linux 5.16 release.

This syscall is used by Proton's Wine to emulate WindowsNT synchronization functions like WaitForMultipleObjects().

To check if something is calling this syscall, you can use bpftrace. Open a game and then run:

bpftrace -e 'tracepoint:syscalls:sys_enter_futex_waitv { printf("%s\n", comm); }'

This will print the name of every process that calls futex_waitv(). You need to run a version of Proton that supports this API.

Note: There's not Proton version that supports this yet, but this is work in progress.


All code here is licensed as GPL-2.0.