linux/fs/btrfs
Chris Mason 0999df54f8 Btrfs: Verify checksums on tree blocks found without read_tree_block
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: Chris Mason <chris.mason@oracle.com>
2008-09-25 11:04:01 -04:00
..
COPYING Btrfs: add GPLv2 2007-06-12 09:07:21 -04:00
INSTALL Btrfs: Documentation update 2007-06-22 14:49:31 -04:00
Makefile Btrfs: Add support for multiple devices per filesystem 2008-09-25 11:04:00 -04:00
TODO Btrfs: add GPLv2 2007-06-12 09:07:21 -04:00
acl.c Btrfs: Include sched.h in the acl code for current (fixes compile on 2.6.23) 2008-09-25 11:03:59 -04:00
bit-radix.c Btrfs: trivial include fixups 2007-07-11 10:00:37 -04:00
bit-radix.h Btrfs: add GPLv2 2007-06-12 09:07:21 -04:00
btrfs_inode.h Btrfs: Fix i_blocks accounting 2008-09-25 11:04:00 -04:00
ctree.c Btrfs: Verify checksums on tree blocks found without read_tree_block 2008-09-25 11:04:01 -04:00
ctree.h Reorder the flags field in struct btrfs_header and record a flag on writeout 2008-09-25 11:04:01 -04:00
dir-item.c Btrfs: unaligned access fixes 2008-09-25 11:04:00 -04:00
disk-io.c Btrfs: Verify checksums on tree blocks found without read_tree_block 2008-09-25 11:04:01 -04:00
disk-io.h Btrfs: Verify checksums on tree blocks found without read_tree_block 2008-09-25 11:04:01 -04:00
extent-tree.c Btrfs: Verify checksums on tree blocks found without read_tree_block 2008-09-25 11:04:01 -04:00
extent_io.c Btrfs: Correct usage of IS_ERR() in extent_io.c 2008-09-25 11:04:01 -04:00
extent_io.h Btrfs: Add leak debugging for extent_buffer and extent_state 2008-09-25 11:04:01 -04:00
extent_map.c Btrfs: Split the extent_map code into two parts 2008-09-25 11:03:59 -04:00
extent_map.h Btrfs: Split the extent_map code into two parts 2008-09-25 11:03:59 -04:00
file-item.c Btrfs: Use KM_USERN instead of KM_IRQ during data summing 2008-09-25 11:04:00 -04:00
file.c Btrfs: Properly cast before shifting 2008-09-25 11:04:00 -04:00
hash.c btrfs-progs: Stop stomping on 'name' input parameter 2008-09-25 11:04:01 -04:00
hash.h Btrfs: unaligned access fixes 2008-09-25 11:04:00 -04:00
inode-item.c Btrfs: Add back pointers from the inode to the directory that references it 2008-09-25 11:03:58 -04:00
inode-map.c Fix for btrfs_find_free_objectid 2008-09-25 11:03:59 -04:00
inode.c Create a btrfs backing dev info 2008-09-25 11:04:01 -04:00
ioctl.h Btrfs: Add support for device scanning and detection ioctls 2008-09-25 11:04:01 -04:00
ordered-data.c Btrfs: Fix data=ordered vs wait_on_inode deadlock on older kernels 2008-09-25 11:03:59 -04:00
ordered-data.h Btrfs: Fix data=ordered vs wait_on_inode deadlock on older kernels 2008-09-25 11:03:59 -04:00
print-tree.c Btrfs: Move device information into the super block so it can be scanned 2008-09-25 11:04:01 -04:00
print-tree.h Btrfs: Create extent_buffer interface for large blocksizes 2008-09-25 11:03:56 -04:00
root-tree.c Btrfs: Change st_blocksize to 4k 2008-09-25 11:03:59 -04:00
struct-funcs.c Btrfs: unaligned access fixes 2008-09-25 11:04:00 -04:00
super.c Fix btrfs_fill_super to return -EINVAL when no FS found 2008-09-25 11:04:01 -04:00
sysfs.c Btrfs: Disable sysfs files on older kernels 2008-09-25 11:04:00 -04:00
transaction.c Btrfs: Add support for multiple devices per filesystem 2008-09-25 11:04:00 -04:00
transaction.h Btrfs: Split the extent_map code into two parts 2008-09-25 11:03:59 -04:00
tree-defrag.c Btrfs: Verify checksums on tree blocks found without read_tree_block 2008-09-25 11:04:01 -04:00
volumes.c Fix btrfs_fill_super to return -EINVAL when no FS found 2008-09-25 11:04:01 -04:00
volumes.h Btrfs: Add support for device scanning and detection ioctls 2008-09-25 11:04:01 -04:00
xattr.c Btrfs: Fix compile on kernel without ACLs enabled 2008-09-25 11:03:59 -04:00
xattr.h xattr support for btrfs 2008-09-25 11:03:57 -04:00