Received: by 2002:a05:6a11:4021:0:0:0:0 with SMTP id ky33csp3602456pxb; Sun, 26 Sep 2021 21:05:02 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyux57bK3Tt4ByS75+VjF7BY7dwxr6JuZQ2ne89uRkEd3+6XBD1ysb6+tyBGYwJO7CseUUP X-Received: by 2002:a17:906:3157:: with SMTP id e23mr25263227eje.29.1632715502778; Sun, 26 Sep 2021 21:05:02 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1632715502; cv=none; d=google.com; s=arc-20160816; b=d2+isDvT3RAdKwgJH0hT8RFdGMD+V/FAYYvnSj9rlR6tfuydp2fCvZoGxfO0rwlpBE 4i+44zEKAm+ZNyE4jUFY3DDl9WRk1ALSm32Os/7Ad84O8i//F+LMo6/uQZ7nq3oKeYZZ VLSowEsMV3JwAPnK89k7IomEHFWx7a3siU5MP5541h/2VjCMChXMYDW4Ke4DQjG/Gnoe 1J4KMfCqcO6KN3I9QiwVUtedIXNA5x1mIVwnfsMaQNKwcdPmaEiDclXYX+UGMnMZSO9p EhXpUAjBIWeYh0QAso8dYTzPa2gZTE3pGTnnudcNNrYdgNimsws7Ww27Dx9kIo6njLPK wUsw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-transfer-encoding :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dkim-signature; bh=vZ2odNmYBK9Ffz6tKxazPC9Xphr7G2gQJWszDUZEmPU=; b=b2ji2U4U1SG4YKy5ftS7dZGSE/6IJglw4pcRQfSOLiXlaltsVygP9jb00vXkY+JT9E jJoKS6FbqReQ03hsKo70E4KSoF8MxGTMI6x86Fi2i55NgTxNnoSUR3NCiqEAEkQFCGNd LvrucalwdSRHOkBacGAAQyzEThA7rS9k1S8bqSYwexaPfwQ5JPXTggsz886ELPMvrb8T SYL7TbhLxuREIapupopexU24hG5p7ClKBo9WiDQdiAmkTTTtXVCsjbzoNca3w0uAq3uE 3nk4Uye84m5Qi/FHqlDEdMt4S87GEpNSoZKYl7iXo/i6f1cDy1BVG1jRlHIBL0nK/2d1 teHw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=N8sUpJWZ; 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=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id e11si7388184edz.42.2021.09.26.21.04.39; Sun, 26 Sep 2021 21:05:02 -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; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=N8sUpJWZ; 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=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229921AbhI0EEs (ORCPT + 99 others); Mon, 27 Sep 2021 00:04:48 -0400 Received: from mail.kernel.org ([198.145.29.99]:48242 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229445AbhI0EEs (ORCPT ); Mon, 27 Sep 2021 00:04:48 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 0CA9960F58; Mon, 27 Sep 2021 04:03:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1632715390; bh=mRuC96Zj8HKwRVxgwL86lhq6ERtGrM3ClP5WU5GbLw4=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=N8sUpJWZoUGNwzTmbSXlpykWbXcz28yLbc061+LpUXZ8SmS888gckdIXkOGJW5d1+ fDwNx0QG93WitEX+iR8dSVlv8Zl+wxVxzMQ9jFxpf4kw27AcWUjr2s62slwo2RdqOB GDFn/5rIsywz92My5EYlLENdVbKG6Qd1xV7gj2tc= Date: Mon, 27 Sep 2021 06:03:06 +0200 From: Greg KH To: "David E. Box" Cc: lee.jones@linaro.org, hdegoede@redhat.com, mgross@linux.intel.com, andriy.shevchenko@linux.intel.com, srinivas.pandruvada@intel.com, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, platform-driver-x86@vger.kernel.org Subject: Re: [PATCH 2/2] platform/x86: Add Intel Software Defined Silicon driver Message-ID: References: <20210924213157.3584061-1-david.e.box@linux.intel.com> <20210924213157.3584061-2-david.e.box@linux.intel.com> <3392aea6b112926b063bbe46b1decaad4c9f9e6e.camel@linux.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <3392aea6b112926b063bbe46b1decaad4c9f9e6e.camel@linux.intel.com> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sun, Sep 26, 2021 at 06:15:16PM -0700, David E. Box wrote: > > > +static int sdsi_remove(struct platform_device *pdev) > > > +{ > > > +???????struct sdsi_priv *priv = platform_get_drvdata(pdev); > > > + > > > +???????priv->dev_present = false; > > > +???????sysfs_remove_bin_file(&priv->pdev->dev.kobj, &priv->registers_bin_attr); > > > +???????misc_deregister(&priv->miscdev); > > > +???????kref_put(&priv->kref, sdsi_priv_release); > > > > Why do you need a kref for a structure that already can be controlled by > > a different lifetime rule? > > Which rule am I missing? This kref allows the structure to remain in case the device is removed > while the file is open. This device is on a hardware bus that allows removal? Anyway, you now are dealing with lifetime rules of 3 structures all at once, and the interactions between them is not very obvious. It would probably be simpler just to stick with 2, right? You really only care about the misc structure here. thanks, greg k-h