• Josef Bacik's avatar
    Btrfs: don't force pages under writeback to finish when aborting · b8d7f3ac
    Josef Bacik authored
    Dave reported a BUG_ON() that happened in end_page_writeback() after an abort.
    This happened because we unconditionally call end_page_writeback() in the endio
    case, which is right.  However when we abort the transaction we will call
    end_page_writeback() on any writeback pages we find, which is wrong.  We need to
    lock the page and wait on page writeback to complete if it is.  There is nothing
    unsafe about this since we are discarding the transaction anyway.  Thanks,
    Reported-by: default avatarDavid Sterba <dsterba@suse.cz>
    Signed-off-by: default avatarJosef Bacik <jbacik@fusionio.com>
    b8d7f3ac
disk-io.c 107 KB