• Liu Bo's avatar
    Btrfs: report errors when checksum is not found · 0d1e0bea
    Liu Bo authored
    When btrfs fails the checksum check, it'll fill the whole page with
    "1".
    
    However, if %csum_expected is 0 (which means there is no checksum), then
    for some unknown reason, we just pretend that the read is correct, so
    userspace would be confused about the dilemma that read is successful but
    getting a page with all content being "1".
    
    This can happen due to a bug in btrfs-convert.
    
    This fixes it by always returning errors if checksum doesn't match.
    Signed-off-by: default avatarLiu Bo <bo.li.liu@oracle.com>
    Reviewed-by: default avatarDavid Sterba <dsterba@suse.com>
    Signed-off-by: default avatarDavid Sterba <dsterba@suse.com>
    0d1e0bea
inode.c 290 KB