Revision ae73232...
Go back to digest for 25th December 2011Bug Fixes in Utilities
fix wrap-around with partitions over 4 TB by using a 64-bit counter
Filelight uses a divide-by-1024 trick to fit sizes over 4 GB into a
quint32. However, the current code will wrap around again at 4 TB.
Simply switch to quint64 and drop the use of divide-by-1024 trick to get
rid of the 4 TB wrap-around.
The performance penalty on a 32-bit system seems immeasurable. On a
filesystem with 1500000 files (13 TB) the process user time is only 1..5
seconds on i7-960, with quint32/64 having no effect. Most of the
wallclock time (20..500 sec in the above case, depending on cache
state) is spent waiting for I/O anyway.
Note that on 32-bit systems files over 2 GB are still completely ignored
unless built with large file support.
Signed-off-by: Martin T. H. Sandsmark
File Changes
- /part
- src/fileTree.cpp
- src/fileTree.h
- src/localLister.cpp
- src/remoteLister.cpp
- src/summaryWidget.cpp