All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bjorn Helgaas <helgaas@kernel.org>
To: Philipp Stanner <pstanner@redhat.com>
Cc: Jonathan Corbet <corbet@lwn.net>,
	Hans de Goede <hdegoede@redhat.com>,
	Maarten Lankhorst <maarten.lankhorst@linux.intel.com>,
	Maxime Ripard <mripard@kernel.org>,
	Thomas Zimmermann <tzimmermann@suse.de>,
	David Airlie <airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>,
	Bjorn Helgaas <bhelgaas@google.com>,
	Sam Ravnborg <sam@ravnborg.org>,
	dakr@redhat.com, linux-pci@vger.kernel.org,
	linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org,
	linux-doc@vger.kernel.org
Subject: Re: [PATCH 07/10] pci: devres: give mwi its own callback
Date: Tue, 16 Jan 2024 12:35:16 -0600	[thread overview]
Message-ID: <20240116183516.GA101535@bhelgaas> (raw)
In-Reply-To: <20240115144655.32046-9-pstanner@redhat.com>

On Mon, Jan 15, 2024 at 03:46:18PM +0100, Philipp Stanner wrote:
> managing mwi with devres can easily be done with its own callback,
> without the necessity to store any state about it in a device-related
> struct.

s/managing/Managing/

s/mwi/MWI/ since this is an initialism.  Also in subject (but would be
even better if it could mention an actual function name).

> Remove the mwi state from the devres-struct.
> Make the devres-mwi functions set a separate devres-callback.

Wrap to fill 75 columns (or add blank lines if you intend multiple
paragraphs).

s/devres-struct/struct pci_devres/ to make this greppable.

s/the devres-mwi functions/pcim_set_mwi()/ similarly.

> Signed-off-by: Philipp Stanner <pstanner@redhat.com>
> ---
>  drivers/pci/devres.c | 23 +++++++++++------------
>  drivers/pci/pci.h    |  1 -
>  2 files changed, 11 insertions(+), 13 deletions(-)
> 
> diff --git a/drivers/pci/devres.c b/drivers/pci/devres.c
> index de8cf6f87dd7..911c2037d9fd 100644
> --- a/drivers/pci/devres.c
> +++ b/drivers/pci/devres.c
> @@ -378,24 +378,26 @@ void __iomem *devm_pci_remap_cfg_resource(struct device *dev,
>  }
>  EXPORT_SYMBOL(devm_pci_remap_cfg_resource);
>  
> +static void __pcim_clear_mwi(void *pdev_raw)
> +{
> +	struct pci_dev *pdev = pdev_raw;
> +
> +	pci_clear_mwi(pdev);
> +}
> +
>  /**
>   * pcim_set_mwi - a device-managed pci_set_mwi()
> - * @dev: the PCI device for which MWI is enabled
> + * @pdev: the PCI device for which MWI is enabled
>   *
>   * Managed pci_set_mwi().
>   *
>   * RETURNS: An appropriate -ERRNO error value on error, or zero for success.
>   */
> -int pcim_set_mwi(struct pci_dev *dev)
> +int pcim_set_mwi(struct pci_dev *pdev)
>  {
> -	struct pci_devres *dr;
> -
> -	dr = find_pci_dr(dev);
> -	if (!dr)
> -		return -ENOMEM;
> +	devm_add_action(&pdev->dev, __pcim_clear_mwi, pdev);
>  
> -	dr->mwi = 1;
> -	return pci_set_mwi(dev);
> +	return pci_set_mwi(pdev);
>  }
>  EXPORT_SYMBOL(pcim_set_mwi);
>  
> @@ -405,9 +407,6 @@ static void pcim_release(struct device *gendev, void *res)
>  	struct pci_dev *dev = to_pci_dev(gendev);
>  	struct pci_devres *this = res;
>  
> -	if (this->mwi)
> -		pci_clear_mwi(dev);
> -
>  	if (this->restore_intx)
>  		pci_intx(dev, this->orig_intx);
>  
> diff --git a/drivers/pci/pci.h b/drivers/pci/pci.h
> index 3d9908a69ebf..667bfdd61d5e 100644
> --- a/drivers/pci/pci.h
> +++ b/drivers/pci/pci.h
> @@ -811,7 +811,6 @@ static inline pci_power_t mid_pci_get_power_state(struct pci_dev *pdev)
>  struct pci_devres {
>  	unsigned int orig_intx:1;
>  	unsigned int restore_intx:1;
> -	unsigned int mwi:1;
>  };
>  
>  struct pci_devres *find_pci_dr(struct pci_dev *pdev);
> -- 
> 2.43.0
> 

WARNING: multiple messages have this Message-ID (diff)
From: Bjorn Helgaas <helgaas@kernel.org>
To: Philipp Stanner <pstanner@redhat.com>
Cc: Daniel Vetter <daniel@ffwll.ch>, Jonathan Corbet <corbet@lwn.net>,
	Sam Ravnborg <sam@ravnborg.org>,
	linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
	Maxime Ripard <mripard@kernel.org>,
	Hans de Goede <hdegoede@redhat.com>,
	dakr@redhat.com, dri-devel@lists.freedesktop.org,
	Thomas Zimmermann <tzimmermann@suse.de>,
	linux-pci@vger.kernel.org, Bjorn Helgaas <bhelgaas@google.com>,
	David Airlie <airlied@gmail.com>
Subject: Re: [PATCH 07/10] pci: devres: give mwi its own callback
Date: Tue, 16 Jan 2024 12:35:16 -0600	[thread overview]
Message-ID: <20240116183516.GA101535@bhelgaas> (raw)
In-Reply-To: <20240115144655.32046-9-pstanner@redhat.com>

On Mon, Jan 15, 2024 at 03:46:18PM +0100, Philipp Stanner wrote:
> managing mwi with devres can easily be done with its own callback,
> without the necessity to store any state about it in a device-related
> struct.

s/managing/Managing/

s/mwi/MWI/ since this is an initialism.  Also in subject (but would be
even better if it could mention an actual function name).

> Remove the mwi state from the devres-struct.
> Make the devres-mwi functions set a separate devres-callback.

Wrap to fill 75 columns (or add blank lines if you intend multiple
paragraphs).

s/devres-struct/struct pci_devres/ to make this greppable.

s/the devres-mwi functions/pcim_set_mwi()/ similarly.

> Signed-off-by: Philipp Stanner <pstanner@redhat.com>
> ---
>  drivers/pci/devres.c | 23 +++++++++++------------
>  drivers/pci/pci.h    |  1 -
>  2 files changed, 11 insertions(+), 13 deletions(-)
> 
> diff --git a/drivers/pci/devres.c b/drivers/pci/devres.c
> index de8cf6f87dd7..911c2037d9fd 100644
> --- a/drivers/pci/devres.c
> +++ b/drivers/pci/devres.c
> @@ -378,24 +378,26 @@ void __iomem *devm_pci_remap_cfg_resource(struct device *dev,
>  }
>  EXPORT_SYMBOL(devm_pci_remap_cfg_resource);
>  
> +static void __pcim_clear_mwi(void *pdev_raw)
> +{
> +	struct pci_dev *pdev = pdev_raw;
> +
> +	pci_clear_mwi(pdev);
> +}
> +
>  /**
>   * pcim_set_mwi - a device-managed pci_set_mwi()
> - * @dev: the PCI device for which MWI is enabled
> + * @pdev: the PCI device for which MWI is enabled
>   *
>   * Managed pci_set_mwi().
>   *
>   * RETURNS: An appropriate -ERRNO error value on error, or zero for success.
>   */
> -int pcim_set_mwi(struct pci_dev *dev)
> +int pcim_set_mwi(struct pci_dev *pdev)
>  {
> -	struct pci_devres *dr;
> -
> -	dr = find_pci_dr(dev);
> -	if (!dr)
> -		return -ENOMEM;
> +	devm_add_action(&pdev->dev, __pcim_clear_mwi, pdev);
>  
> -	dr->mwi = 1;
> -	return pci_set_mwi(dev);
> +	return pci_set_mwi(pdev);
>  }
>  EXPORT_SYMBOL(pcim_set_mwi);
>  
> @@ -405,9 +407,6 @@ static void pcim_release(struct device *gendev, void *res)
>  	struct pci_dev *dev = to_pci_dev(gendev);
>  	struct pci_devres *this = res;
>  
> -	if (this->mwi)
> -		pci_clear_mwi(dev);
> -
>  	if (this->restore_intx)
>  		pci_intx(dev, this->orig_intx);
>  
> diff --git a/drivers/pci/pci.h b/drivers/pci/pci.h
> index 3d9908a69ebf..667bfdd61d5e 100644
> --- a/drivers/pci/pci.h
> +++ b/drivers/pci/pci.h
> @@ -811,7 +811,6 @@ static inline pci_power_t mid_pci_get_power_state(struct pci_dev *pdev)
>  struct pci_devres {
>  	unsigned int orig_intx:1;
>  	unsigned int restore_intx:1;
> -	unsigned int mwi:1;
>  };
>  
>  struct pci_devres *find_pci_dr(struct pci_dev *pdev);
> -- 
> 2.43.0
> 

  reply	other threads:[~2024-01-16 18:35 UTC|newest]

Thread overview: 58+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-01-15 14:46 [PATCH 00/10] Make PCI's devres API more consistent Philipp Stanner
2024-01-15 14:46 ` Philipp Stanner
2024-01-15 14:46 ` [PATCH 01/10] pci: add new set of devres functions Philipp Stanner
2024-01-15 14:46   ` Philipp Stanner
2024-01-16 18:44   ` Bjorn Helgaas
2024-01-16 18:44     ` Bjorn Helgaas
2024-01-17  8:54     ` Philipp Stanner
2024-01-17  8:54       ` Philipp Stanner
2024-01-19 22:52       ` Bjorn Helgaas
2024-01-19 22:52         ` Bjorn Helgaas
2024-01-16 21:15   ` andy.shevchenko
2024-01-16 21:15     ` andy.shevchenko
2024-01-17  9:21     ` Philipp Stanner
2024-01-17  9:21       ` Philipp Stanner
2024-01-15 14:46 ` [PATCH 02/10] pci: deprecate iomap-table functions Philipp Stanner
2024-01-15 14:46   ` Philipp Stanner
2024-01-16 21:27   ` andy.shevchenko
2024-01-16 21:27     ` andy.shevchenko
2024-01-17  9:40     ` Philipp Stanner
2024-01-17  9:40       ` Philipp Stanner
2024-01-15 14:46 ` [PATCH 03/10] pci: warn users about complicated devres nature Philipp Stanner
2024-01-15 14:46   ` Philipp Stanner
2024-01-15 14:46 ` [PATCH 04/10] pci: devres: make devres region requests consistent Philipp Stanner
2024-01-15 14:46   ` Philipp Stanner
2024-01-16 21:29   ` andy.shevchenko
2024-01-16 21:29     ` andy.shevchenko
2024-01-15 14:46 ` [PATCH 05/10] pci: move enabled status bit to pci_dev struct Philipp Stanner
2024-01-15 14:46   ` Philipp Stanner
2024-01-15 14:46 ` [PATCH 06/10] pci: move pinned " Philipp Stanner
2024-01-15 14:46   ` Philipp Stanner
2024-01-16 21:34   ` andy.shevchenko
2024-01-16 21:34     ` andy.shevchenko
2024-01-17  9:02     ` Philipp Stanner
2024-01-17  9:02       ` Philipp Stanner
2024-01-15 14:46 ` [PATCH 07/10] pci: devres: give mwi its own callback Philipp Stanner
2024-01-15 14:46   ` Philipp Stanner
2024-01-16 18:35   ` Bjorn Helgaas [this message]
2024-01-16 18:35     ` Bjorn Helgaas
2024-01-15 14:46 ` [PATCH 08/10] pci: devres: give pci(m)_intx " Philipp Stanner
2024-01-15 14:46   ` Philipp Stanner
2024-01-16 21:37   ` andy.shevchenko
2024-01-16 21:37     ` andy.shevchenko
2024-01-15 14:46 ` [PATCH 09/10] pci: devres: remove legacy pcim_release() Philipp Stanner
2024-01-15 14:46   ` Philipp Stanner
2024-01-16 21:40   ` andy.shevchenko
2024-01-16 21:40     ` andy.shevchenko
2024-01-17 13:49     ` Philipp Stanner
2024-01-17 13:49       ` Philipp Stanner
2024-01-15 14:46 ` [PATCH 10/10] drm/vboxvideo: fix mapping leaks Philipp Stanner
2024-01-15 14:46   ` Philipp Stanner
2024-01-16 18:29 ` [PATCH 00/10] Make PCI's devres API more consistent Bjorn Helgaas
2024-01-16 18:29   ` Bjorn Helgaas
2024-01-16 21:17 ` andy.shevchenko
2024-01-16 21:17   ` andy.shevchenko
2024-01-17  9:59   ` Philipp Stanner
2024-01-17  9:59     ` Philipp Stanner
2024-01-18  8:48     ` Philipp Stanner
2024-01-18  8:48       ` Philipp Stanner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240116183516.GA101535@bhelgaas \
    --to=helgaas@kernel.org \
    --cc=airlied@gmail.com \
    --cc=bhelgaas@google.com \
    --cc=corbet@lwn.net \
    --cc=dakr@redhat.com \
    --cc=daniel@ffwll.ch \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=hdegoede@redhat.com \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=maarten.lankhorst@linux.intel.com \
    --cc=mripard@kernel.org \
    --cc=pstanner@redhat.com \
    --cc=sam@ravnborg.org \
    --cc=tzimmermann@suse.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.