• Linus Torvalds's avatar
    umount: avoid racy block-size set · ed9a0a9f
    Linus Torvalds authored
    Setting the block size back to the original blocksize at umount time
    is unnecessary, and can cause buffer errors and infinite loops in
    __getblk_slow, and possibly other problems. 
    
    Just getting bdev_lock instead causes other issues, namely AB-BA deadlocks
    with /proc/meminfo etc. Just drop it, and replace with a "sync_blockdev()"
    to cause a flush (which was a side effect of changing the blocksize before).
    
    Debugging and testing by Jeff Mahoney <jeffm@suse.com>
    ed9a0a9f
super.c 19.9 KB