• M
    ext4: delayed allocation i_blocks fix for stat · 3e3398a0
    Mingming Cao 提交于
    Right now i_blocks is not getting updated until the blocks are actually
    allocaed on disk.  This means with delayed allocation, right after files
    are copied, "ls -sF" shoes the file as taking 0 blocks on disk.  "du"
    also shows the files taking zero space, which is highly confusing to the
    user.
    
    Since delayed allocation already keeps track of per-inode total
    number of blocks that are subject to delayed allocation, this patch fix
    this by using that to adjust the value returned by stat(2). When real
    block allocation is done, the i_blocks will get updated. Since the
    reserved blocks for delayed allocation will be decreased, this will be
    keep value returned by stat(2) consistent.
    Signed-off-by: NMingming Cao <cmm@us.ibm.com>
    Signed-off-by: N"Theodore Ts'o" <tytso@mit.edu>
    3e3398a0
inode.c 131.6 KB