Wiki - https://fedoraproject.org/wiki/Changes/NTSYNC Discussion post - https://discussion.fedoraproject.org/t/f44-change-proposal-enable-ntsync-kernel-module-for-all-users-system-wide/161786 This is a proposed Change for Fedora Linux. This document represents a proposed Change. As part of the Changes process, proposals are publicly announced in order to receive community feedback. This proposal will only be implemented if approved by the Fedora Engineering Steering Committee. == Summary == This proposal aims to enable the NTSYNC kernel module by default for all users, which can improve compatibility and performance when running Windows applications (especially games) via Wine/Proton. == Owner == * Name: [[User:Epictux123|EpicTux123]] * Email: EpicTux123@xxxxxxxxx Affected packages: Kernel, dracut or systemd (not sure), but it's just the addition of one file. == Detailed Description == The NT synchronization primitive driver, known as NTSYNC, is a mechanism used by Wine applications get better compatibility and more performance when running applications (especially games). This proposal aims to enable the NTSYNC kernel module by default for all Fedora Linux users. It is present on stable kernel versions starting from 6.14. As far as I (the proposal creator) am aware, this is apparently better than other existing implementations (such as E-SYNC and F-SYNC). This is also the only one to be considered into integration for upstream Wine. Currently, the kernel driver works as expected (as far as I know), but the code on Wine's side is still a pending merge request. However, community-made Proton versions such as GE-Proton (made by GloriousEggRoll) already have NTSYNC enabled by default if the kernel module is loaded. >From my personal testing I haven't see any problematic behavior when enabling this module. It also fixes some problematic games that don't work well with either E-SYNC or F-SYNC methods (such as Bioshock games and Call of Duty Black Ops I and II). The intention is to make Fedora Linux the first distribution to start enabling this module as to innovate in the Linux world. As far as I am aware, the default state of the module (to be enabled or disabled by default) is a decision that can be made upstream on the kernel side for everyone, or just downstream by a distro for its users. Since Fedora focuses on innovation, I think this is the correct place for it. I very recently discovered the change process, so I am sorry for filling out out-of-date, but I think this change is mostly harmless for now. For Fedora, this process would mean creating a file in /usr/lib/modules-load.d/ named "ntsync.conf" to load the "ntsync" kernel module. Some reference links: Kernel technical documentation: https://docs.kernel.org/next/userspace-api/ntsync.html <br> Article on GamingOnLinux: https://www.gamingonlinux.com/2025/01/ntsync-for-proton-wine-now-in-linux-kernel-6-14-that-should-make-many-steamos-users-happy/ <br> Wine merge request: https://gitlab.winehq.org/wine/wine/-/merge_requests/7226 == Feedback == I have not gathered any feedback. However, this proposal, even if approved, would only be applicable to custom builds of Wine/Proton, since upstream Wine does not fully support it (yet), so any build that contains the possibility of using NTSYNC is a custom and experimental build. When the merge request is eventually approved in upstream Wine, Fedora would already have the kernel module for all users available to use. There is some feedback available in the GloriousEggRoll's Discord server for users testing the kernel driver in the latest version (10-10) of GE-Proton. == Benefit to Fedora == See "Detailed Description" and "Feedback" section. == Scope == * Proposal owners: EpicTux123 (EpicTux123@xxxxxxxxx) * Other developers: N/A * Release engineering: [https://pagure.io/releng/issue/12831 #12831] * Policies and guidelines: N/A (*probably* not needed for this Change) * Trademark approval: N/A (not needed for this Change) * Alignment with the Fedora Strategy: I think it is aligned. == Upgrade/compatibility impact == == Early Testing (Optional) == "Do you require 'QA Blueprint' support?" I have no idea. == How To Test == Modprobe the "ntsync" module and/or create a file in /etc/modules-load.d/ to load it automatically. == User Experience == Better performance and compatibility with Windows applications (especially games) through Wine. == Dependencies == N/A as far as I am aware. == Contingency Plan == * Contingency mechanism: (What to do? Who will do it?) Revert the change to load the kernel module by default. * Contingency deadline: N/A. It is a system-wide change, but this can be easily reverted. * Blocks release? NO == Documentation == See "Detailed Description" section. There are some links there. == Release Notes == NTSYNC kernel module is now enabled by default The NTSYNC kernel module has been enabled by default. It is present on kernel stable versions starting from 6.14. This provides better performance and compatibility for Windows applications running through Wine/Proton (especially games). Currently, this is only available for certain custom Wine/Proton builds, but Fedora is making the kernel module available ahead of the eventual merge in upstream Wine. -- Aoife Moloney Fedora Operations Architect Fedora Project Matrix: @amoloney:fedora.im IRC: amoloney -- _______________________________________________ devel-announce mailing list -- devel-announce@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-announce-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel-announce@xxxxxxxxxxxxxxxxxxxxxxx Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue -- _______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue