Reuploaded 25.10.20. Recompiled with MinGW.
5.20 release.
ESYNC is finally updated and ready to use! It is included in this Staging release (and, i suppose, will also be included in future releases). As before, it is disabled by default and can be manually enabled with the WINEESYNC environment variable:
export WINEESYNC=1
ulimit -n 1000000 (increasing file descriptors limit is required for Esync)
wine-5.20-staging-amd64/bin/wine some_game.exe
Staging-TkG builds have Fsync support in addition to Esync. Fsync can be enabled (yes, it is disabled by default too) with the WINEFSYNC environment variable:
export WINEFSYNC=1
wine-5.20-staging-tkg-amd64/bin/wine some_game.exe
However, unlike Esync, Fsync requires additional kernel-side patches. So if your kernel doesn't include the required patches, then just use Esync. You can enable both of them, in which case Wine will automatically use Fsync if it's supported by the kernel, and Esync otherwise.
Proton supports Esync and Fsync too.
Most of you probably already know all this, but still this information may be useful to someone.