Skip to content
  • Jan Kara's avatar
    ext3: Avoid filesystem corruption after a crash under heavy delete load · f25f6242
    Jan Kara authored
    
    
    It can happen that ext3_free_branches calls ext3_forget() for an indirect block
    in an earlier transaction than a transaction in which we clear pointer to this
    indirect block. Thus if we crash before a transaction clearing the block
    pointer is committed, we will see indirect block pointing to already freed
    blocks and complain during orphan list cleanup.
    
    The fix is simple: Make sure ext3_forget() is called in the transaction
    doing block pointer clearing.
    
    This is a backport of an ext4 fix by Amir G. <amir73il@users.sourceforge.net>
    
    Signed-off-by: default avatarJan Kara <jack@suse.cz>
    f25f6242