Re: experimental raid5/6 code in git

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Also, a 2-member raid5 or 3-member raid6 are a raid1 and can be treated as such.

Chris Mason <chris.mason@xxxxxxxxxxxx> wrote:

>On Mon, Feb 04, 2013 at 02:42:24PM -0700, H. Peter Anvin wrote:
>> @@ -1389,6 +1392,14 @@ int btrfs_rm_device(struct btrfs_root *root,
>char
>> *device_path)
>>  	}
>>  	btrfs_dev_replace_unlock(&root->fs_info->dev_replace);
>> 
>> +	if ((all_avail & (BTRFS_BLOCK_GROUP_RAID5 |
>> +			  BTRFS_BLOCK_GROUP_RAID6) && num_devices <= 3)) {
>> +		printk(KERN_ERR "btrfs: unable to go below three devices "
>> +		       "on raid5 or raid6\n");
>> +		ret = -EINVAL;
>> +		goto out;
>> +	}
>> +
>>  	if ((all_avail & BTRFS_BLOCK_GROUP_RAID10) && num_devices <= 4) {
>>  		printk(KERN_ERR "btrfs: unable to go below four devices "
>>  		       "on raid10\n");
>> @@ -1403,6 +1414,21 @@ int btrfs_rm_device(struct btrfs_root *root,
>char
>> *device_path)
>>  		goto out;
>>  	}
>> 
>> +	if ((all_avail & BTRFS_BLOCK_GROUP_RAID5) &&
>> +	    root->fs_info->fs_devices->rw_devices <= 2) {
>> +		printk(KERN_ERR "btrfs: unable to go below two "
>> +		       "devices on raid5\n");
>> +		ret = -EINVAL;
>> +		goto out;
>> +	}
>> +	if ((all_avail & BTRFS_BLOCK_GROUP_RAID6) &&
>> +	    root->fs_info->fs_devices->rw_devices <= 3) {
>> +		printk(KERN_ERR "btrfs: unable to go below three "
>> +		       "devices on raid6\n");
>> +		ret = -EINVAL;
>> +		goto out;
>> +	}
>> +
>>  	if (strcmp(device_path, "missing") == 0) {
>>  		struct list_head *devices;
>>  		struct btrfs_device *tmp;
>> 
>> 
>> This seems inconsistent?
>
>Whoops, missed that one.  Thanks!
>
>-chris

-- 
Sent from my mobile phone. Please excuse brevity and lack of formatting.
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Filesystem Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux