Received: by 2002:a05:6a10:f3d0:0:0:0:0 with SMTP id a16csp625175pxv; Wed, 14 Jul 2021 11:28:14 -0700 (PDT) X-Google-Smtp-Source: ABdhPJz9CxC+gdLN3qINhppt8GmO028JcnnrVZsEEskSBqcuCGtp4Aoi5VgEDo7JDxqrtXprkccI X-Received: by 2002:a17:907:2067:: with SMTP id qp7mr13811677ejb.225.1626287294328; Wed, 14 Jul 2021 11:28:14 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1626287294; cv=none; d=google.com; s=arc-20160816; b=bOGw8oR335OdlibKO5dpxV+93UU1YGTVfBSfRpsbWtgIUlmIy3AKNbKFItwl6R/nIP C+deEoGYSUXCsub5vqKEf7tPZuFljMD3eGwEJ4RfSwNah8oygbzpGGhYOfR114CsqYdA V3wHzrthf/BhUK50C11LMlWTqYFzVWNcfGN7x/Ldyr8EYnlTkVZWoHofuJXADC4aIDSR x9c/FRROo8ddCOFmdglfRpgfa8MQFCFLbJbTvnyWILLBXwF3j6+eNXqrbmwUXJPA7ORp wvEWMZZoi0Ng63wq1hqj+0rwRbZOi5nXckz3foR2EFyOSmLYkAxY61v737xYCLaoicCL ZC9A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version; bh=L5C7sNY8TB8NPeFGL9sYtQQ8gOiI4hebauC48DXYqLw=; b=UEUKVWP+TYMguWmq+lM/vFEQnFQo6GXSAQNiZMVQHNji/bAK3/KsLo6VALSDrpq4wa q+K2dDGN2E5zVPGw19hyqdLrHe9sjd08oh9H3d2U7AJNW55+8hdtPf/NxXPah1XNRqgo Ff8+0yFmNFaKM/KEGa94urltDKBHgndczzrzX024CpRC3C4BL//aW45j/h3idknfdXDW sbU+tMGb6k8A41JYwdVnhdsZp/O9DvIryJZ+vB9VjPNurvwm+A/K26LXWX/Nc0vHaz+Q TVWXecIBh8sm2b1vfDHT3yv2hew3VSMZK0XOKey9STEkucblCU22HcXPU85xibS8B+0n 69BA== 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id y21si3477158edv.562.2021.07.14.11.27.51; Wed, 14 Jul 2021 11:28:14 -0700 (PDT) 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229936AbhGNS3U (ORCPT + 99 others); Wed, 14 Jul 2021 14:29:20 -0400 Received: from mail-oi1-f169.google.com ([209.85.167.169]:40915 "EHLO mail-oi1-f169.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S240069AbhGNS3S (ORCPT ); Wed, 14 Jul 2021 14:29:18 -0400 Received: by mail-oi1-f169.google.com with SMTP id l26so3314214oic.7; Wed, 14 Jul 2021 11:26:25 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=L5C7sNY8TB8NPeFGL9sYtQQ8gOiI4hebauC48DXYqLw=; b=qNzqeJCaD6KrKxNweCdDhWl3hVReBqg8TLQKLlDZ6Frypg4GnaicU9dj+dXpepQNfj CYWw4reeK2USblBevTB2fcSLkeMf0SET7cOa0QsGaz11jC1Xv5xvbAukn7QnWqAVVxWc zoADW4XfS0Cze1VIAGUO20YoFfp91dLPKh4uGgf4wwGIaNP0uweCfOMEmlKknX+1/6Ic feIAV8hoY2gVzJDDpIe4JP6a2C2geL+/0CDIYTYrYFb4mMtYgyYzH3kCAHYyL2GPy3Sr CiZ4FFVUcNzibZuwfNPWTlEOsy/c6gmeZk6UktiTee4/6V6aZpa0fLQBBhMEHfYWwiM/ I5qA== X-Gm-Message-State: AOAM5327q5nWk2JXnZ4dgjU9KZ41G0FkAIpRAqq2pdT229EnUQ60ZVaI cG1gf1ryEWQEf+/CMuUFlzTxBtYZqyAVfJGe2cc= X-Received: by 2002:aca:3502:: with SMTP id c2mr1867706oia.157.1626287185145; Wed, 14 Jul 2021 11:26:25 -0700 (PDT) MIME-Version: 1.0 References: <20210710103819.12532-1-adrian.hunter@intel.com> <20210710103819.12532-3-adrian.hunter@intel.com> In-Reply-To: <20210710103819.12532-3-adrian.hunter@intel.com> From: "Rafael J. Wysocki" Date: Wed, 14 Jul 2021 20:26:14 +0200 Message-ID: Subject: Re: [PATCH V3 2/3] driver core: Add ability to delete device links of unregistered devices To: Adrian Hunter Cc: "Rafael J . Wysocki" , Greg Kroah-Hartman , Saravana Kannan , "Martin K . Petersen" , "James E . J . Bottomley" , "open list:TARGET SUBSYSTEM" , Avri Altman , Bean Huo , Can Guo , Asutosh Das , Bart Van Assche , Linux PM , Linux Kernel Mailing List Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sat, Jul 10, 2021 at 12:38 PM Adrian Hunter wrote: > > Managed device links are deleted by device_del(). However it is possible to > add a device link to a consumer before device_add(), and then discover an I would say "discovering an error" > error prevents the device from being used. In that case normally references > to the device would be dropped and the device would be deleted. However the > device link holds a reference to the device, so the device link and device > remain indefinitely (unless the supplier is deleted). > > Amend device link removal to accept removal of a link with an > unregistered consumer device. > > Suggested-by: Rafael J. Wysocki > Fixes: b294ff3e34490 ("scsi: ufs: core: Enable power management for wlun") This patch by itself doesn't fix the above one, so the tag doesn't seem to be suitable here. Frankly, I would consider folding it into the third patch in the series in which case please feel free to add Reviewed-by: Rafael J. Wysocki to the resulting combo patch. > Signed-off-by: Adrian Hunter > --- > drivers/base/core.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/base/core.c b/drivers/base/core.c > index 2de8f7d8cf54..983e895d4ced 100644 > --- a/drivers/base/core.c > +++ b/drivers/base/core.c > @@ -887,6 +887,8 @@ static void device_link_put_kref(struct device_link *link) > { > if (link->flags & DL_FLAG_STATELESS) > kref_put(&link->kref, __device_link_del); > + else if (!device_is_registered(link->consumer)) > + __device_link_del(&link->kref); > else > WARN(1, "Unable to drop a managed device link reference\n"); > } > -- > 2.17.1 >