Re: [PATCH v5 01/14] md: don't ignore suspended array in md_check_recovery()
From: Xiao Ni
Date: Sat Feb 17 2024 - 21:28:07 EST
On Sun, Feb 18, 2024 at 9:46 AM Yu Kuai <yukuai1@xxxxxxxxxxxxxxx> wrote:
>
> Hi,
>
> 在 2024/02/18 9:33, Xiao Ni 写道:
> > The deadlock problem mentioned in this patch should not be right?
>
> No, I think it's right. Looks like you are expecting other problems,
> like mentioned in patch 6, to be fixed by this patch.
Hi Kuai
Could you explain why step1 and step2 from this comment can happen
simultaneously? From the log, the process should be
The process is :
dev_remove->dm_destroy->__dm_destroy->dm_table_postsuspend_targets(raid_postsuspend)
-> dm_table_destroy(raid_dtr).
After suspending the array, it calls raid_dtr. So these two functions
can't happen simultaneously.
>
> Noted that this patch just fix one case that MD_RECOVERY_RUNNING can't
> be cleared, I you are testing this patch alone, please make sure that
> you still triggered the exactly same case:
>
> - MD_RCOVERY_RUNNING can't be cleared while array is suspended.
I'm not testing this patch. I want to understand the patch well. So I
need to understand the issue first. I can't understand how this
deadlock (step1,step2) happens.
Regards
Xiao
>
> Thanks,
> Kuai
>