diff options
| author | SulfurNitride <SulfurNitride@users.noreply.github.com> | 2026-04-06 13:58:17 -0500 |
|---|---|---|
| committer | SulfurNitride <SulfurNitride@users.noreply.github.com> | 2026-04-06 13:58:17 -0500 |
| commit | 28d1072ebb43dd35f7a36fc852e5dc3f1fe30b19 (patch) | |
| tree | 1279fc12376ec9a8be612b05747a6685bca07cc0 /libs/uibase/src/expanderwidget.cpp | |
| parent | da10828d0d63718cba1532ae819a3cc16ebe30db (diff) | |
Add VFS performance optimizations: node cache, lookup cache, access handler
- Add inode→VfsNode* cache to skip splitPath + full tree walks on
lookup/getattr/open (O(1) hash lookup instead of tree traversal)
- Combine canonicalChildName + snapshotForPath into single lookupChild
function (one tree lock, one parent resolution, one child hash probe)
- Add userspace lookup cache keyed by (parent_ino, normalized_name) to
absorb Wine's case-variant probes that bypass the kernel FUSE dcache
- Add mo2_access handler to avoid kernel fallback to lookup+getattr
- Invalidate all caches correctly on tree mutations (create/unlink/rename/mkdir)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Diffstat (limited to 'libs/uibase/src/expanderwidget.cpp')
0 files changed, 0 insertions, 0 deletions
