• Eric Sandeen's avatar
    ext4: re-inline ext4_rec_len_(to|from)_disk functions · 0cfc9255
    Eric Sandeen authored
    commit 3d0518f4, "ext4: New rec_len encoding for very
    large blocksizes" made several changes to this path, but from
    a perf perspective, un-inlining ext4_rec_len_from_disk() seems
    most significant.  This function is called from ext4_check_dir_entry(),
    which on a file-creation workload is called extremely often.
    
    I tested this with bonnie:
    
    # bonnie++ -u root -s 0 -f -x 200 -d /mnt/test -n 32
    
    (this does 200 iterations) and got this for the file creations:
    
    ext4 stock:   Average =  21206.8 files/s
    ext4 inlined: Average =  22346.7 files/s  (+5%)
    Signed-off-by: default avatarEric Sandeen <sandeen@redhat.com>
    Signed-off-by: default avatar"Theodore Ts'o" <tytso@mit.edu>
    0cfc9255
ext4.h 70.6 KB