Pull btrfs updates from David Sterba: "Features or user visible changes: - fallocate: implement zero range mode - avoid losing data raid profile when deleting a device - tree item checker: more checks for directory items and xattrs Notable fixes: - raid56 recovery: don't use cached stripes, that could be potentially changed and a later RMW or recovery would lead to corruptions or failures - let raid56 try harder to rebuild damaged data, reading from all stripes if necessary - fix scrub to repair raid56 in a similar way as in the case above Other: - cleanups: device freeing, removed some call indirections, redundant bio_put/_get, unused parameters, refactorings and renames - RCU list traversal fixups - simplify mount callchain, remove recursing back when mounting a subvolume - plug for fsync, may improve bio merging on multiple devices - compression heurisic: replace heap sort with radix sort, gains some performance - add extent map selftests, buffered write vs dio" * tag 'for-4.16-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux: (155 commits) btrfs: drop devid as device_list_add() arg btrfs: get device pointer from device_list_add() btrfs: set the total_devices in device_list_add() btrfs: move pr_info into device_list_add btrfs: make btrfs_free_stale_devices() to match the path btrfs: rename btrfs_free_stale_devices() arg to skip_dev btrfs: make btrfs_free_stale_devices() argument optional btrfs: make btrfs_free_stale_device() to iterate all stales btrfs: no need to check for btrfs_fs_devices::seeding btrfs: Use IS_ALIGNED in btrfs_truncate_block instead of opencoding it Btrfs: noinline merge_extent_mapping Btrfs: add WARN_ONCE to detect unexpected error from merge_extent_mapping Btrfs: extent map selftest: dio write vs dio read Btrfs: extent map selftest: buffered write vs dio read Btrfs: add extent map selftests Btrfs: move extent map specific code to extent_map.c Btrfs: add helper for em merge logic Btrfs: fix unexpected EEXIST from btrfs_get_extent Btrfs: fix incorrect block_len in merge_extent_mapping btrfs: Remove unused readahead spinlock ...
Showing the changes to include/uapi/linux (2 of 47 files). Show all
Unified · Split
| @@ -33,7 +33,12 @@ struct btrfs_ioctl_vol_args { · 32 unmodified lines | |||
| 33 | char name[BTRFS_PATH_NAME_MAX + 1]; | 33 | char name[BTRFS_PATH_NAME_MAX + 1]; |
| 34 | }; | 34 | }; |
| 35 | 35 | ||
| 36 | #define BTRFS_DEVICE_PATH_NAME_MAX 1024 | 36 | #define BTRFS_DEVICE_PATH_NAME_MAX 1024 |
| 37 | #define BTRFS_SUBVOL_NAME_MAX 4039 | ||
| 38 | |||
| 39 | #define BTRFS_SUBVOL_CREATE_ASYNC (1ULL << 0) | ||
| 40 | #define BTRFS_SUBVOL_RDONLY (1ULL << 1) | ||
| 41 | #define BTRFS_SUBVOL_QGROUP_INHERIT (1ULL << 2) | ||
| 37 | 42 | ||
| 38 | #define BTRFS_DEVICE_SPEC_BY_ID (1ULL << 3) | 43 | #define BTRFS_DEVICE_SPEC_BY_ID (1ULL << 3) |
| 39 | 44 | ||
| @@ -101,11 +106,7 @@ struct btrfs_ioctl_qgroup_limit_args { · 61 unmodified lines | |||
| 101 | * - BTRFS_IOC_SUBVOL_GETFLAGS | 106 | * - BTRFS_IOC_SUBVOL_GETFLAGS |
| 102 | * - BTRFS_IOC_SUBVOL_SETFLAGS | 107 | * - BTRFS_IOC_SUBVOL_SETFLAGS |
| 103 | */ | 108 | */ |
| 104 | #define BTRFS_SUBVOL_CREATE_ASYNC (1ULL << 0) | ||
| 105 | #define BTRFS_SUBVOL_RDONLY (1ULL << 1) | ||
| 106 | #define BTRFS_SUBVOL_QGROUP_INHERIT (1ULL << 2) | ||
| 107 | 109 | ||
| 108 | #define BTRFS_SUBVOL_NAME_MAX 4039 | ||
| 109 | struct btrfs_ioctl_vol_args_v2 { | 110 | struct btrfs_ioctl_vol_args_v2 { |
| 110 | __s64 fd; | 111 | __s64 fd; |
| 111 | __u64 transid; | 112 | __u64 transid; |
| @@ -456,6 +456,8 @@ struct btrfs_free_space_header { · 455 unmodified lines | |||
| 456 | 456 | ||
| 457 | #define BTRFS_SUPER_FLAG_SEEDING (1ULL << 32) | 457 | #define BTRFS_SUPER_FLAG_SEEDING (1ULL << 32) |
| 458 | #define BTRFS_SUPER_FLAG_METADUMP (1ULL << 33) | 458 | #define BTRFS_SUPER_FLAG_METADUMP (1ULL << 33) |
| 459 | #define BTRFS_SUPER_FLAG_METADUMP_V2 (1ULL << 34) | ||
| 460 | #define BTRFS_SUPER_FLAG_CHANGING_FSID (1ULL << 35) | ||
| 459 | 461 | ||
| 460 | 462 | ||
| 461 | /* | 463 | /* |