• Andrew Stribblehill's avatar
    [PATCH] bfs: fix endianness, signedness; add trivial bugfix · fac92bec
    Andrew Stribblehill authored
    * Makes BFS code endianness-clean.
    
    * Fixes some signedness warnings.
    
    * Fixes a problem in fs/bfs/inode.c:164 where inodes not synced to disk
      don't get fully marked as clean.  Here's how to reproduce it:
    
    # mount -o loop -t bfs /bfs.img /mnt
    # df -i /mnt
    Filesystem            Inodes   IUsed   IFree IUse% Mounted on
    /bfs.img                  48       1      47    3% /mnt
    # df -k /mnt
    Filesystem           1K-blocks      Used Available Use% Mounted on
    /bfs.img                   512         5       508   1% /mnt
    # cp 60k-archive.zip /mnt/mt.zip
    # df -k /mnt
    Filesystem           1K-blocks      Used Available Use% Mounted on
    /bfs.img                   512        65       447  13% /mnt
    # df -i /mnt
    Filesystem            Inodes   IUsed   IFree IUse% Mounted on
    /bfs.img                  48       2      46    5% /mnt
    # rm /mnt/mt.zip
    # echo $?
    0
    
     [If the unlink happens before the buffers flush, the following happens:]
    
    # df -i /mnt
    Filesystem            Inodes   IUsed   IFree IUse% Mounted on
    /bfs.img                  48       2      46    5% /mnt
    # df -k /mnt
    Filesystem           1K-blocks      Used Available Use% Mounted on
    /bfs.img                   512        65       447  13% /mnt
    
     fs/bfs/bfs.h           |    1
    Signed-off-by: default avatarAndrew Stribblehill <ads@wompom.org>
    Cc: <tigran@veritas.com>
    Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
    fac92bec
inode.c 10.9 KB