Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp4279721pxb; Mon, 8 Feb 2021 12:17:11 -0800 (PST) X-Google-Smtp-Source: ABdhPJwDQfPiXv4jk82/yMZabqTCNk7GTOruoEtrSFNjcPAxh701AY950E73qPSl+vm4zqgmbqR2 X-Received: by 2002:a17:906:f2cd:: with SMTP id gz13mr18574921ejb.83.1612815431101; Mon, 08 Feb 2021 12:17:11 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1612815431; cv=none; d=google.com; s=arc-20160816; b=ZxPCZLW2hwwLZITYJJ2RwWEm75triShR8rVvMTgV11XiU2S2i2xokAC0lcuAKbqc2Z PcrRiyr9EvKTVtgfieyAtIHr0lCdsc2DaFFxKq10lq55RDnNwRTxnp+YN2PsvQq2ovQu HvKHZ+AWhVWE22Cb2+Z5Au0nYyv7jSEV+FRi6xbmf/F3sBBNKsetdXd1p3hyR+BfDExd f7T3VR/l9QsMsQNb2Db1/RIyS/1mAXGkGVdBmcwoHZx2I5WFoZJF+ortWzcjgPo5VXfX Prq7N1zfT0Zen/oFSBKy0+m2WyJDJiMxIVdtZ/OvTTp4oqZq1s/Fcqu6aWt4B6O+Ys6u lmbg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :in-reply-to:mime-version:user-agent:date:message-id:from:references :to:subject; bh=VSz770r8bGaEFoyBT0zwr1XRNzFvd57Jxnnex+emvcg=; b=nz7BhcjXFJjypo2vv8vJWWRE8oc74Untc4zKsIhsc5tCTgccT7mq0sJRS7dRD4xFIT Whj0/fgNA4Q0kPjQWH2hahjlgn6aKPLU7ghKlFRSBxtTV2NWGzJImqrgojuUW4MkVS6T GCx0QibxCernnyqqfhmuwV9dkrmowJhwZvdCiV1t7nkl+bUGul8ysZ2zM1mivrcIi6F2 X5IBqtTAdbuZ980K17WIX4zoxIWjtK2xvKue0SRK8P6Nty/WWr2NlUCQkvOGOMO/vZcj pm+nDNk/ZzZuKq0ieQmch31/b/LOdHe3Pn0zLKQYUlwp0ddpEFft20WGV2Y6xtv+q5WR 6GLA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id ku8si12469616ejc.25.2021.02.08.12.16.47; Mon, 08 Feb 2021 12:17:11 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234863AbhBHUQG (ORCPT + 99 others); Mon, 8 Feb 2021 15:16:06 -0500 Received: from mx3.molgen.mpg.de ([141.14.17.11]:58971 "EHLO mx1.molgen.mpg.de" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S235767AbhBHSmH (ORCPT ); Mon, 8 Feb 2021 13:42:07 -0500 Received: from [192.168.0.5] (ip5f5aed2c.dynamic.kabel-deutschland.de [95.90.237.44]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: buczek) by mx.molgen.mpg.de (Postfix) with ESMTPSA id E23A620647914; Mon, 8 Feb 2021 19:41:15 +0100 (CET) Subject: Re: md_raid: mdX_raid6 looping after sync_action "check" to "idle" transition To: Guoqing Jiang , Song Liu , linux-raid@vger.kernel.org, Linux Kernel Mailing List , it+raid@molgen.mpg.de References: <37c158cb-f527-34f5-2482-cae138bc8b07@molgen.mpg.de> <55e30408-ac63-965f-769f-18be5fd5885c@molgen.mpg.de> <30576384-682c-c021-ff16-bebed8251365@molgen.mpg.de> <6c7008df-942e-13b1-2e70-a058e96ab0e9@cloud.ionos.com> <12f09162-c92f-8fbb-8382-cba6188bfb29@molgen.mpg.de> <6757d55d-ada8-9b7e-b7fd-2071fe905466@cloud.ionos.com> <93d8d623-8aec-ad91-490c-a414c4926fb2@molgen.mpg.de> <0bb7c8d8-6b96-ce70-c5ee-ba414de10561@cloud.ionos.com> <1cdfceb6-f39b-70e1-3018-ea14dbe257d9@cloud.ionos.com> From: Donald Buczek Message-ID: <7733de01-d1b0-e56f-db6a-137a752f7236@molgen.mpg.de> Date: Mon, 8 Feb 2021 19:41:14 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: <1cdfceb6-f39b-70e1-3018-ea14dbe257d9@cloud.ionos.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Dear Guoqing, On 08.02.21 15:53, Guoqing Jiang wrote: > > > On 2/8/21 12:38, Donald Buczek wrote: >>> 5. maybe don't hold reconfig_mutex when try to unregister sync_thread, like this. >>> >>>          /* resync has finished, collect result */ >>>          mddev_unlock(mddev); >>>          md_unregister_thread(&mddev->sync_thread); >>>          mddev_lock(mddev); >> >> As above: While we wait for the sync thread to terminate, wouldn't it be a problem, if another user space operation takes the mutex? > > I don't think other places can be blocked while hold mutex, otherwise these places can cause potential deadlock. Please try above two lines change. And perhaps others have better idea. Yes, this works. No deadlock after >11000 seconds, (Time till deadlock from previous runs/seconds: 1723, 37, 434, 1265, 3500, 1136, 109, 1892, 1060, 664, 84, 315, 12, 820 ) Best Donald > > Thanks, > Guoqing