[Feature Request] Enable/Include ntsync Linux Kernel Module for Windows Container & Wine Performance

オープン
#620 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
3/5
見積もり時間
1〜2日
初心者へのやさしさ
42/100
issue の種類
機能追加
明瞭さ
おおむね明確
活発さ
活発
技術スタック
linux

調査の方向性

The issue names no file in the repository. Start by locating where the kernel build configuration is set, then search for CONFIG_NTSYNC, ntsync and /dev/ntsync to see whether they already appear. Done means the option is enabled in the kernel config, the module builds and loads with modprobe ntsync, and the /dev/ntsync device node is exposed. Confirm the scope with a maintainer first, since the request is open-ended.

索引モデルが issue の本文から書いたものです。

説明

Is your feature request related to a problem? Please describe.

Running Windows container workloads, Windows Server binaries, or heavy multi-threaded applications via Wine/compat layers on Linux-based edge operating systems often suffers from severe performance bottlenecks and synchronization overhead.

Historically, user-space coordination (like wineserver or heavy futex/eventfd workarounds) introduces massive context-switching friction when applications spawn dense swarms of threads that rely heavily on Windows NT-style synchronization primitives (mutexes, semaphores, and events).

Since ntsync has been officially merged into the Linux mainline kernel (starting with kernel 6.14+) to natively mirror Windows synchronization primitives right inside the kernel, missing this module prevents high-performance execution of Windows-based container environments and compatibility layers.

Describe the solution you'd like
  1. Kernel Configuration: Enable the CONFIG_NTSYNC module/driver in the system kernel build configuration.
  2. Module Availability: Ensure the ntsync module is built and bundled so it can be loaded (modprobe ntsync) or auto-loaded on demand.
  3. Permissions/Device Node: Ensure the /dev/ntsync character device node is properly exposed so containerized or user-space compatibility layers can access it seamlessly.
Describe alternatives you've considered
  • Relying on older user-space emulation (wineserver RPC round-trips), which results in high CPU overhead, poor frame/response pacing, and thread starvation under heavy loads.
  • Using legacy user-space workarounds (esync/fsync), which have file descriptor limitations or lack true kernel-backed NT-primitive compliance.
Additional context
  • Upstream Status: Mainlined in Linux Kernel 6.14+.
  • Use Case: Drastically improves synchronization performance for heavy multi-threaded Windows server applications, microservices, and compatibility environments running on top of Linux.
主要言語
Shell
スター
3.1k
フォーク
130
PR マージ指標
30日以内にマージされた PR はありません

環境構築

このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

IceWhaleTech/ZimaOS のほかの issue

IceWhaleTech/ZimaOS の issue をすべて見る

似ている issue

Shell/Bash の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。