summaryrefslogtreecommitdiffstats
path: root/clang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorFangrui Song <maskray@google.com>2018-04-12 22:27:38 +0000
committerFangrui Song <maskray@google.com>2018-04-12 22:27:38 +0000
commit6cf69128a13335f2b657ed978d0ae824f7610db4 (patch)
tree4bdf7905799cfaa21259de0f0c784ab1f79474e5 /clang/lib/Frontend/CompilerInvocation.cpp
parent01d349bab10b2abec8c11ef37ac9224d4d125e3d (diff)
downloadbcm5719-llvm-6cf69128a13335f2b657ed978d0ae824f7610db4.tar.gz
bcm5719-llvm-6cf69128a13335f2b657ed978d0ae824f7610db4.zip
[CachePruning] Clarify the per-directory entry limit on Linux ext4.
Summary: 508 root node entries (root_limit) 510 internal node entries (node_limit) For a filename with 40 bytes, its sizeof(ext4_dir_entry_2) = 48, a linear directory can contain at most floor(4096/48)=85 of them. The real per-directory entry limit should be 508*510*85 = 22021800 The limit varies with the average length of filenames. However, the Linux ext4 code does not try rebalancing the htree, so we will not be able to create filenames in a full leaf node. This is demonstrated with the following example, certain filenames cannot be used while others can: % touch d/0000000000000000000000000000000000816a6f touch: cannot touch 'd/0000000000000000000000000000000000816a6f': No space left on device % touch d/0000000000000000000000000000000000816a70 # succeeded Reviewers: pcc Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D45546 llvm-svn: 329966
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud