• Chris Mason's avatar
    Btrfs: Verify checksums on tree blocks found without read_tree_block · 0999df54
    Chris Mason authored
    Checksums were only verified by btrfs_read_tree_block, which meant the
    functions to probe the page cache for blocks were not validating checksums.
    Normally this is fine because the buffers will only be in cache if they
    have already been validated.
    
    But, there is a window while the buffer is being read from disk where
    it could be up to date in the cache but not yet verified.  This patch
    makes sure all buffers go through checksum verification before they
    are used.
    
    This is safer, and it prevents modification of buffers before they go
    through the csum code.
    Signed-off-by: default avatarChris Mason <chris.mason@oracle.com>
    0999df54
extent-tree.c 72.7 KB