From ae4eed4ced4798f9ddb8ec19bd8585432e86b7cf Mon Sep 17 00:00:00 2001 From: Ben Hutchings Date: Sun, 4 Jun 2017 01:20:23 +0100 Subject: [PATCH] btrfs: warn about RAID5/6 being experimental at mount time (Closes: #863290) --- debian/changelog | 1 + ...-raid5-6-being-experimental-at-mount.patch | 35 +++++++++++++++++++ debian/patches/series | 1 + 3 files changed, 37 insertions(+) create mode 100644 debian/patches/debian/btrfs-warn-about-raid5-6-being-experimental-at-mount.patch diff --git a/debian/changelog b/debian/changelog index aa265abb1..e6e8d5bc0 100644 --- a/debian/changelog +++ b/debian/changelog @@ -414,6 +414,7 @@ linux (4.9.30-1) UNRELEASED; urgency=medium * debian/control: Fix compiler build-dependencies for cross-building (Closes: #863907) * Add Debian package version to "hung task" log messages + * btrfs: warn about RAID5/6 being experimental at mount time (Closes: #863290) [ Salvatore Bonaccorso ] * tracing: Use strlcpy() instead of strcpy() in __trace_find_cmdline() diff --git a/debian/patches/debian/btrfs-warn-about-raid5-6-being-experimental-at-mount.patch b/debian/patches/debian/btrfs-warn-about-raid5-6-being-experimental-at-mount.patch new file mode 100644 index 000000000..533feafcc --- /dev/null +++ b/debian/patches/debian/btrfs-warn-about-raid5-6-being-experimental-at-mount.patch @@ -0,0 +1,35 @@ +From: Adam Borowski +Date: Tue, 28 Mar 2017 16:55:05 +0200 +Subject: btrfs: warn about RAID5/6 being experimental at mount time +Bug-Debian: https://bugs.debian.org/863290 +Origin: https://bugs.debian.org/863290#5 + +Too many people come complaining about losing their data -- and indeed, +there's no warning outside a wiki and the mailing list tribal knowledge. +Message severity chosen for consistency with XFS -- "alert" makes dmesg +produce nice red background which should get the point across. + +Signed-off-by: Adam Borowski +[bwh: Also add_taint() so this is flagged in bug reports] +--- + fs/btrfs/disk-io.c | 8 ++++++++ + 1 file changed, 8 insertions(+) + +--- a/fs/btrfs/disk-io.c ++++ b/fs/btrfs/disk-io.c +@@ -3098,6 +3098,15 @@ retry_root_backup: + btrfs_set_opt(fs_info->mount_opt, SSD); + } + ++ if ((fs_info->avail_data_alloc_bits | ++ fs_info->avail_metadata_alloc_bits | ++ fs_info->avail_system_alloc_bits) & ++ BTRFS_BLOCK_GROUP_RAID56_MASK) { ++ btrfs_alert(fs_info, ++ "btrfs RAID5/6 is EXPERIMENTAL and has known data-loss bugs"); ++ add_taint(TAINT_USER, LOCKDEP_STILL_OK); ++ } ++ + /* + * Mount does not set all options immediately, we can do it now and do + * not have to wait for transaction commit diff --git a/debian/patches/series b/debian/patches/series index 7b504fc4f..71f171420 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -46,6 +46,7 @@ debian/fjes-disable-autoload.patch # Taint if dangerous features are used debian/fanotify-taint-on-use-of-fanotify_access_permissions.patch +debian/btrfs-warn-about-raid5-6-being-experimental-at-mount.patch # Reduce noise for bug #852324 debian/amd64-don-t-warn-about-expected-w+x-pages-on-xen.patch