Re: [REGRESSION] Cannot start degraded RAID1 array with device with write-mostly flag
From: Mateusz Jończyk
Date: Mon Jul 08 2024 - 16:10:16 EST
W dniu 8.07.2024 o 03:54, Yu Kuai pisze:
> Hi,
>
> 在 2024/07/06 22:30, Mateusz Jończyk 写道:
>> Subject: [RFC PATCH] md/raid1: fill in max_sectors
>>
>>
>>
>> Not yet fully tested or carefully investigated.
>>
>>
>>
>> Signed-off-by: Mateusz Jo艅czyk<mat.jonczyk@xxxxx>
>>
>>
>>
>> ---
>>
>> drivers/md/raid1.c | 1 +
>>
>> 1 file changed, 1 insertion(+)
>>
>>
>>
>> diff --git a/drivers/md/raid1.c b/drivers/md/raid1.c
>>
>> index 7b8a71ca66dd..82f70a4ce6ed 100644
>>
>> --- a/drivers/md/raid1.c
>>
>> +++ b/drivers/md/raid1.c
>>
>> @@ -680,6 +680,7 @@ static int choose_slow_rdev(struct r1conf *conf, struct r1bio *r1_bio,
>>
>> len = r1_bio->sectors;
>>
>> read_len = raid1_check_read_range(rdev, this_sector, &len);
>>
>> if (read_len == r1_bio->sectors) {
>>
>> + *max_sectors = read_len;
>>
>> update_read_sectors(conf, disk, this_sector, read_len);
>>
>> return disk;
>>
>> }
>
> This looks correct, can you give it a test and cook a patch?
>
> Thanks,
> Kuai
Hello,
Yes, I'm working on it. Patch description is nearly done.
Kernel with this patch works well with normal usage and
fsstress, except when modifying the array, as I have written
in my previous email. Will test some more.
I'm feeling nervous working on such sensitive code as md, though.
I'm not an experienced kernel dev.
Greetings,
Mateusz