Re: [PATCH 1/2] btrfs-progs: mkfs: Warn user for minimal RAID5/6 devices setup

2016-09-05 Thread David Sterba
On Fri, Sep 02, 2016 at 11:59:07AM +1000, Steven Haigh wrote:
> Is it worthwhile adding a note that RAID5 / RAID6 may very well eat your
> data at this stage?

This depends on the kernel implementation, so it needs to take that into
account. There's a patchset in the works to automatically select mkfs
features based on kernel so a warning for features like raid56 will be
built on top of that.
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 1/2] btrfs-progs: mkfs: Warn user for minimal RAID5/6 devices setup

2016-09-02 Thread Wilson Meier
+1 for the note/warning!



> Am 02.09.2016 um 03:59 schrieb Steven Haigh :
> 
> --7NtBNafxaf8ODulNFrivgmW7Mjs09oWwR
> Content-Type: text/plain; charset=windows-1252
> Content-Transfer-Encoding: quoted-printable
> 
> Is it worthwhile adding a note that RAID5 / RAID6 may very well eat your
> data at this stage?
> 
>> On 02/09/16 11:41, Qu Wenruo wrote:
>> For RAID5, 2 devices setup is just RAID1 with more overhead.
>> For RAID6, 3 devices setup is RAID1 with 3 copies, not what most user
>> want.
>> =20
>> So warn user at mkfs time for such case, and add explain in man pages.
>> =20
>> Signed-off-by: Qu Wenruo 
>> ---
>> Documentation/mkfs.btrfs.asciidoc | 15 +++-
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 1/2] btrfs-progs: mkfs: Warn user for minimal RAID5/6 devices setup

2016-09-01 Thread Steven Haigh
Is it worthwhile adding a note that RAID5 / RAID6 may very well eat your
data at this stage?

On 02/09/16 11:41, Qu Wenruo wrote:
> For RAID5, 2 devices setup is just RAID1 with more overhead.
> For RAID6, 3 devices setup is RAID1 with 3 copies, not what most user
> want.
> 
> So warn user at mkfs time for such case, and add explain in man pages.
> 
> Signed-off-by: Qu Wenruo 
> ---
>  Documentation/mkfs.btrfs.asciidoc | 15 +++
>  utils.c   | 10 --
>  2 files changed, 19 insertions(+), 6 deletions(-)
> 
> diff --git a/Documentation/mkfs.btrfs.asciidoc 
> b/Documentation/mkfs.btrfs.asciidoc
> index 98fe694..846c08f 100644
> --- a/Documentation/mkfs.btrfs.asciidoc
> +++ b/Documentation/mkfs.btrfs.asciidoc
> @@ -263,18 +263,25 @@ There are the following block group types available:
>  .2+^.^.^h| Copies   ^.^h| Parity ^.  | single  | 1||| 1/any
> -| DUP | 2 / 1 device ||| 1/any ^(see note)^
> +| DUP | 2 / 1 device ||| 1/any ^(see note1)^
>  | RAID0   |  || 1 to N | 2/any
>  | RAID1   | 2||| 2/any
>  | RAID10  | 2|| 1 to N | 4/any
> -| RAID5   | 1| 1  | 2 to N - 1 | 2/any
> -| RAID6   | 1| 2  | 3 to N - 2 | 3/any
> +| RAID5   | 1| 1  | 2 to N - 1 | 2/any ^(see note2)^
> +| RAID6   | 1| 2  | 3 to N - 2 | 3/any ^(see note3)^
>  |=
>  
> -'Note:' DUP may exist on more than 1 device if it starts on a single device 
> and
> +'Note1:' DUP may exist on more than 1 device if it starts on a single device 
> and
>  another one is added. Since version 4.5.1, *mkfs.btrfs* will let you create 
> DUP
>  on multiple devices.
>  
> +'Note2:' It's not recommended to use 2 devices RAID5. In that case,
> +parity stripe will contains the same data of data stripe, making RAID5 
> degraded
> +to RAID1 with more overhead.
> +
> +'Note3:' It's also not recommended to use 3 devices RAID6, unless one wants 
> to
> +get 3 copies RAID1, which btrfs doesn't provide yet.
> +
>  DUP PROFILES ON A SINGLE DEVICE
>  ---
>  
> diff --git a/utils.c b/utils.c
> index 82f3376..1d6879a 100644
> --- a/utils.c
> +++ b/utils.c
> @@ -3314,6 +3314,7 @@ int test_num_disk_vs_raid(u64 metadata_profile, u64 
> data_profile,
>   u64 dev_cnt, int mixed, int ssd)
>  {
>   u64 allowed = 0;
> + u64 profile = metadata_profile | data_profile;
>  
>   switch (dev_cnt) {
>   default:
> @@ -3328,8 +3329,7 @@ int test_num_disk_vs_raid(u64 metadata_profile, u64 
> data_profile,
>   allowed |= BTRFS_BLOCK_GROUP_DUP;
>   }
>  
> - if (dev_cnt > 1 &&
> - ((metadata_profile | data_profile) & BTRFS_BLOCK_GROUP_DUP)) {
> + if (dev_cnt > 1 && profile & BTRFS_BLOCK_GROUP_DUP) {
>   warning("DUP is not recommended on filesystem with multiple 
> devices");
>   }
>   if (metadata_profile & ~allowed) {
> @@ -3349,6 +3349,12 @@ int test_num_disk_vs_raid(u64 metadata_profile, u64 
> data_profile,
>   return 1;
>   }
>  
> + if (dev_cnt == 3 && profile & BTRFS_BLOCK_GROUP_RAID6) {
> + warning("RAID6 is not recommended on filesystem with 3 devices 
> only");
> + }
> + if (dev_cnt == 2 && profile & BTRFS_BLOCK_GROUP_RAID5) {
> + warning("RAID5 is not recommended on filesystem with 2 devices 
> only");
> + }
>   warning_on(!mixed && (data_profile & BTRFS_BLOCK_GROUP_DUP) && ssd,
>  "DUP may not actually lead to 2 copies on the device, see 
> manual page");
>  
> 

-- 
Steven Haigh

Email: net...@crc.id.au
Web: https://www.crc.id.au
Phone: (03) 9001 6090 - 0412 935 897



signature.asc
Description: OpenPGP digital signature