Pull btrfs fixes from David Sterba: "Two more fixes for bugs introduced in 4.13. The sector_t problem with 32bit architecture and !LBDAF config seems serious but the number of affected deployments is hopefully low. The clashing status bits could lead to a confusing in-memory state of the whole-filesystem operations if used with the quota override sysfs knob" * 'for-4.14-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux: Btrfs: fix overlap of fs_info::flags values btrfs: avoid overflow when sector_t is 32 bit
Unified · Split
| @@ -722,7 +722,7 @@ struct btrfs_delayed_root; · 721 unmodified lines | ||
| 722 | 722 | * Indicate that a whole-filesystem exclusive operation is running |
| 723 | 723 | * (device replace, resize, device add/delete, balance) |
| 724 | 724 | */ |
| 725 | −#define BTRFS_FS_EXCL_OP 14 | |
| 725 | +#define BTRFS_FS_EXCL_OP 16 | |
| 726 | 726 | |
| 727 | 727 | struct btrfs_fs_info { |
| 728 | 728 | u8 fsid[BTRFS_FSID_SIZE]; |
| @@ -2801,7 +2801,7 @@ static int submit_extent_page(unsigned int opf, struct extent_io_tree *tree, · 2800 unmodified lines | ||
| 2801 | 2801 | } |
| 2802 | 2802 | } |
| 2803 | 2803 | |
| 2804 | − bio = btrfs_bio_alloc(bdev, sector << 9); | |
| 2804 | + bio = btrfs_bio_alloc(bdev, (u64)sector << 9); | |
| 2805 | 2805 | bio_add_page(bio, page, page_size, offset); |
| 2806 | 2806 | bio->bi_end_io = end_io_func; |
| 2807 | 2807 | bio->bi_private = tree; |