Windows app repeatedly spawns \git ls-files --others --exclude-standard -z`; `ntfs.sys` `NtFC` nonpaged pool grows continuously`
What version of the Codex App are you using (From “About Codex” dialog)?
26.325.31654 (1272)
What subscription do you have?
pro
What platform is your computer?
Microsoft Windows 11 Pro 10.0.26200 x64
What issue are you seeing?
I traced a Windows nonpaged pool growth problem to Codex Desktop repeatedly spawning child git.exe processes during normal app use.
In this environment, the user-mode trigger was Codex repeatedly launching:
git ls-files --others --exclude-standard -z
The kernel-side memory growth showed up under ntfs.sys pool tag NtFC.
I am reporting this here because the reproducible trigger appears to be Codex Desktop behavior, even if part of the retention/cleanup problem may also involve Windows NTFS or Microsoft Defender.
Observed evidence from the same affected session:
- System nonpaged pool was growing while process-level nonpaged pool remained tiny, which pointed to kernel-side growth rather than a normal user-mode process pool leak.
- Direct pool-tag sampling showed
NtFCdominating and increasing. - After deleting all temporary trace files I created for diagnosis,
NtFCstill increased from4984.46 MBto5072.56 MBin 30 seconds (+88.10 MB). NtFCownership was confirmed locally by matching the tag string insideC:\Windows\System32\drivers\ntfs.sys.- During that same window,
Codex.exekept spawning childgit.exeprocesses with the exact command:<br>git ls-files --others --exclude-standard -z - New child
git.exepairs were observed at local times2026-04-04 22:16:23,22:16:26,22:16:49, and22:16:58, all parented byCodex.exe. - A short Procmon capture showed
git.exegenerating the most filesystem activity by a large margin (131,169file events in about 3 seconds). MsMpEng.exewas also highly active in the same capture (10,736file events), which suggests Microsoft Defender amplifies the I/O pressure once Codex starts the scans.
What I ruled out in the same session:
- This was not explained by process-local nonpaged pool usage.
- High-handle but low-file-activity processes did not match the growth pattern.
What steps can reproduce the bug?
- On Windows 11 Pro 26200 x64, launch Codex Desktop 26.325.31654 (1272).
- Open a local workspace under the user profile.<br>In my affected session, the active thread cwd was
C:\Users\JW\Documents\playground. - Leave the app open and use it normally, or keep the session open long enough for background repo/status activity to happen.
- Observe the process tree from elevated PowerShell / Process Explorer:
Codex.exerepeatedly spawnsgit.exe- the command line repeats as
git ls-files --others --exclude-standard -z
- In parallel, sample Windows nonpaged pool / pool tags.
- Observe
ntfs.sysNtFCnonpaged pool continuing to increase while those repeated git scans are occurring.
Repro status:
- This reproduced multiple times in the same affected session.
- I have not yet reduced it to a fully minimal deterministic repro outside the affected environment.
What is the expected behavior?
- Codex Desktop should not repeatedly spawn unbounded background
git ls-files --others --exclude-standard -zscans during normal or idle app use. - Repo scanning should stay scoped to the active workspace roots and should be debounced/cached appropriately.
- Codex should not act as a user-mode trigger that drives continuously growing NTFS nonpaged pool on Windows.
Additional information
I understand the ultimate pool-retention bug may also involve Windows NTFS or Microsoft Defender, but the reproducible user-mode trigger in this environment was Codex repeatedly spawning git.exe.
Directionally related Codex reports:
- openai/codex#13717 runaway
rgprocesses with high CPU/RAM - openai/codex#13809 long git diffs create lag in Codex App
- openai/codex#14469 Windows app lag from oversized
git-origins/ Git-worktree scans
If useful, I can provide follow-up artifacts from the affected machine, including:
- process tree snapshots showing repeated
Codex.exe -> git.exe - pool tag samples showing
NtFCgrowth over time - Procmon summaries showing
git.exeas the top filesystem event source
10 Comments
Potential duplicates detected. Please review them and close your issue if it is a duplicate.
Powered by Codex Action
I have another Windows Desktop data point that looks related to this issue, although the dominant pool tags are different on my machine.
Environment:
OpenAI.Codex_26.623.13972.0_x64__2p2nqsd0c76g026200x6432.0.31021.5001(amdkmdag.sys)Observed behavior:
File/IoFEgrowth resumed.PoolMon / A-B evidence:
File~270 MBIoFE~91 MBSQSFparticipated earlier but is a Storage QoS amplifier, not the root causestorqosflt.sysA/B test:storqosfltreleasedSQSFfrom37.42 MBto0 MBFilestill grew by+15.38 MBIoFEstill grew by+5.53 MBFile/IoFEgrowth.WPR/WPA evidence from an elevated trace:
Representative interpretation:
File/IoFEstack family goes throughamdkmdag.sys.Codex.exe/ Chromium (chrome.dll) stacks are present in the sameFile/IoFEtrace.Disk I/O evidence during the trace:
codex.exe <OpenAI.Codex>generated 7,177 disk I/O rows.%USERPROFILE%\.codex\logs_2.sqlite- 6,234 rows%USERPROFILE%\.codex\logs_2.sqlite-wal- 1,327 rowsCurrent working hypothesis:
So while my dominant tags are
File/IoFErather thanNtFC, this looks directionally related: Codex Desktop user-mode activity is the reproducible trigger for continuously growing Windows kernel nonpaged pool. Happy to provide more exact PoolMon/WPA summaries if useful; the raw ETL is large (~29 GB).I have this exact problem
me 2
Independent reproduction on a newer Windows desktop build
I independently reproduced the same severe Windows nonpaged-pool growth on 2026-07-20. I have not yet verified the exact repeated
git.execommand line on this machine, but the A/B behavior and dominantNtFCpool tag closely match this issue.Environment
OpenAI.Codex 26.715.4045.0x64 (new unified ChatGPT/Codex desktop app; UI is labeled ChatGPT)26200.8875Controlled closed → open → closed sampling
Memory counters were sampled every 5 seconds.
1275.8–1281.4 MB1394.2 MBto6483.3 MB(+5089.1 MB)478.7 MB/min, withR² = 0.9996851750.9 MB→1717.9 MB0.28 MB1.72–1.75 GBProcessCount = 0), system nonpaged pool was7684.4 MBand remained7684.7 MBabout 5 minutes later, so the accumulated pool was not meaningfully releasedSeparate PoolMon reproduction
System nonpaged pool (
Pool N) increased as follows:23:50:59:687,464 K23:55:15:3,326,668 K23:56:28:4,046,564 KAt
23:55:15, the dominant entry was:For comparison,
NVRMwas only about67,096,576bytes in the same sample, so the NVIDIA pool tag was not the dominant source.This confirms that the issue still reproduces on package version
26.715.4045.0, with the desktop app acting as a reliable user-mode trigger for rapidNtFC/ntfs.sysnonpaged-pool growth. I have the CSV time series and PoolMon screenshots available if maintainers need the raw artifacts.The repeated
git ls-files --othersloop in this report is the same class of Git-backed refresh workload I reproduced.I published a single-file Windows launcher for the original Microsoft Store/MSIX Codex app:
It starts Codex with a process-scoped
GIT_DIR=NUL. On my machine, the stable trace changed from 247 newgit.exeand 137 newtaskkill.exeprocesses per 10 seconds to 0 and 0 over 15 seconds; WMI Provider Host fell from about 6.6% to 0.9%.Usage: fully exit Codex from the Windows system tray, then run the script.
This is an unofficial workaround, not an upstream fix. It deliberately disables or limits Review, Changes, branch detection, commit, and other Git-backed Codex features. It does not patch Codex, modify repositories or Git configuration, write system environment variables, require elevation, terminate processes, or remove chat history. Launching Codex normally restores Git integration.
I triggered this runaway memory leak on myself by making my home dir a git repo (
%USERPROFILE%\.git) months ago for forgotten reasons (probably to track dot-file customisation).Additional reproduction on Codex Windows 26.727.6591.0 (severe regression)
I am seeing the same Codex-triggered untracked-file scan pattern on a current Windows build, with enough memory growth to freeze the whole machine.
Environment
OpenAI.Codex_26.727.6591.0_x6410.0.262002.53.0.windows.1Observed command
Codex spawns four concurrent copies of this command without an explicit Git request:
Impact and frequency
git.exeprocesses each consumed approximately 2,560–2,973 MB, about 11 GB total.Why this appears app-side
Expected behavior
Codex should single-flight/debounce untracked-file discovery per workspace, cancel superseded scans, and impose bounded memory/time/concurrency limits. A large working tree may make one scan expensive, but it should not result in four identical unbounded scans that can freeze Windows.
It would also help to provide either:
No repository contents, session transcripts, or unredacted local paths are attached publicly. Sanitized process snapshots or Windows event details can be provided if maintainers request them.
I can reproduce what appears to be the same
NtFC/nonpaged-pool growth on a current Codex/ChatGPT Windows desktop build.Environment:
Observed behavior:
NtFC Nonpat 22,408,235,776 bytes (~20.9 GiB), with a Diff/outstanding allocation count of 68,789,554 and ~325 bytes per allocation.Defender test:
Controlled reproduction with the app's built-in Performance Trace:
Uploaded performance trace / Feedback ID (as displayed by the app):
019f06df-f34a-7c02-a79b-24008e4f45f8This looks closely aligned with the original report: sustained Codex repository/file activity correlates with rapid growth of
ntfs.syspool tagNtFC, while ordinary user-mode process memory does not account for the retained RAM. The issue remains present on version 26.810.52044.@codex Let's resolve this issue.