History

Merge branch 'for-linus-4.9' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs

Pull btrfs fixes from Chris Mason: "Some fixes from Omar and Dave Sterba for our new free space tree. This isn't heavily used yet, but as we move toward making it the new default we wanted to nail down an endian bug" * 'for-linus-4.9' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs: btrfs: tests: uninline member definitions in free_space_extent btrfs: tests: constify free space extent specs Btrfs: expand free space tree sanity tests to catch endianness bug Btrfs: fix extent buffer bitmap tests on big-endian systems Btrfs: catch invalid free space trees Btrfs: fix mount -o clear_cache,space_cache=v2 Btrfs: fix free space tree bitmaps on big-endian systems

Linus Torvalds committed 10 years ago

Commit d3304ca2 parents 1a892b4 d9ed71e8 files · +272 −157Browse files

Showing the changes to include/uapi (1 of 8 files). Show all

Unified · Split

include/uapi/linux/btrfs.h+11−1
@@ -239,7 +239,17 @@ struct btrfs_ioctl_fs_info_args { · 238 unmodified lines
239 * Used by:239 * Used by:
240 * struct btrfs_ioctl_feature_flags240 * struct btrfs_ioctl_feature_flags
241 */241 */
242#define BTRFS_FEATURE_COMPAT_RO_FREE_SPACE_TREE (1ULL << 0)242#define BTRFS_FEATURE_COMPAT_RO_FREE_SPACE_TREE (1ULL << 0)
243/*
244 * Older kernels (< 4.9) on big-endian systems produced broken free space tree
245 * bitmaps, and btrfs-progs also used to corrupt the free space tree (versions
246 * < 4.7.3). If this bit is clear, then the free space tree cannot be trusted.
247 * btrfs-progs can also intentionally clear this bit to ask the kernel to
248 * rebuild the free space tree, however this might not work on older kernels
249 * that do not know about this bit. If not sure, clear the cache manually on
250 * first mount when booting older kernel versions.
251 */
252#define BTRFS_FEATURE_COMPAT_RO_FREE_SPACE_TREE_VALID (1ULL << 1)
243 253
244#define BTRFS_FEATURE_INCOMPAT_MIXED_BACKREF (1ULL << 0)254#define BTRFS_FEATURE_INCOMPAT_MIXED_BACKREF (1ULL << 0)
245#define BTRFS_FEATURE_INCOMPAT_DEFAULT_SUBVOL (1ULL << 1)255#define BTRFS_FEATURE_INCOMPAT_DEFAULT_SUBVOL (1ULL << 1)