From: Joerg Roedel <jroedel@suse.de>
To: Bjorn Helgaas <bhelgaas@google.com>
Cc: linux-pci@vger.kernel.org, David Woodhouse <dwmw2@infradead.org>,
Gregor Dick <gdick@solarflare.com>,
iommu@lists.linux-foundation.org, Yinghai Lu <yinghai@kernel.org>
Subject: Re: [PATCH v3 08/11] PCI: Clean up ATS error handling
Date: Thu, 13 Aug 2015 09:57:17 +0200 [thread overview]
Message-ID: <20150813075717.GG12342@suse.de> (raw)
In-Reply-To: <20150811155202.21078.33427.stgit@bhelgaas-glaptop2.roam.corp.google.com>
Hi Bjoern,
On Tue, Aug 11, 2015 at 10:52:02AM -0500, Bjorn Helgaas wrote:
> There's no need to BUG() if we enable ATS when it's already enabled. We
> don't need to BUG() when disabling ATS on a device that doesn't support ATS
> or if it's already disabled. If ATS is enabled, certainly we found an ATS
> capability in the past, so it should still be there now.
>
> Clean up these error paths.
>
> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Two comments inline. With these changes:
Reviewed-by: Joerg Roedel <jroedel@suse.de>
> ---
> drivers/pci/ats.c | 11 ++++++-----
> 1 file changed, 6 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/pci/ats.c b/drivers/pci/ats.c
> index 0b5b0ed..0f05274 100644
> --- a/drivers/pci/ats.c
> +++ b/drivers/pci/ats.c
> @@ -44,11 +44,13 @@ int pci_enable_ats(struct pci_dev *dev, int ps)
> u16 ctrl;
> struct pci_dev *pdev;
>
> - BUG_ON(dev->ats_cap && dev->ats_enabled);
> -
> if (!dev->ats_cap)
> return -EINVAL;
>
> + WARN_ON(pci_ats_enabled(dev));
> + if (pci_ats_enabled(dev))
> + return -EBUSY;
> +
Could be written as
if (WARN_ON(pci_ats_enabled(dev)))
return -EBUSY;
> if (ps < PCI_ATS_MIN_STU)
> return -EINVAL;
>
> @@ -83,7 +85,8 @@ void pci_disable_ats(struct pci_dev *dev)
> struct pci_dev *pdev;
> u16 ctrl;
>
> - BUG_ON(!dev->ats_cap || !dev->ats_enabled);
> + if (!pci_ats_enabled(dev))
> + return;
Probably also:
if (WARN_ON(!pci_ats_enabled(dev)))
?
next prev parent reply other threads:[~2015-08-13 7:57 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-08-11 15:50 [PATCH v3 00/11] PCI: Fix ATS deadlock Bjorn Helgaas
2015-08-11 15:51 ` [PATCH v3 01/11] iommu/vt-d: Cache PCI ATS state and Invalidate Queue Depth Bjorn Helgaas
2015-08-13 7:53 ` Joerg Roedel
2015-08-11 15:51 ` [PATCH v3 02/11] PCI: Allocate ATS struct during enumeration Bjorn Helgaas
2015-08-11 15:51 ` [PATCH v3 03/11] PCI: Embed ATS info directly into struct pci_dev Bjorn Helgaas
2015-08-11 15:51 ` [PATCH v3 04/11] PCI: Reduce size of ATS structure elements Bjorn Helgaas
2015-08-11 15:51 ` [PATCH v3 05/11] PCI: Rationalize pci_ats_queue_depth() error checking Bjorn Helgaas
2015-08-11 15:51 ` [PATCH v3 06/11] PCI: Inline the ATS setup code into pci_ats_init() Bjorn Helgaas
2015-08-11 15:51 ` [PATCH v3 07/11] PCI: Use pci_physfn() rather than looking up physfn by hand Bjorn Helgaas
2015-08-11 15:52 ` [PATCH v3 08/11] PCI: Clean up ATS error handling Bjorn Helgaas
2015-08-13 7:57 ` Joerg Roedel [this message]
2015-08-11 15:52 ` [PATCH v3 09/11] PCI: Move ATS declarations to linux/pci.h so they're all together Bjorn Helgaas
2015-08-11 15:52 ` [PATCH v3 10/11] PCI: Stop caching ATS Invalidate Queue Depth Bjorn Helgaas
[not found] ` <20150811154525.21078.85310.stgit-1RhO1Y9PlrlHTL0Zs8A6p/gx64E7kk8eUsxypvmhUTTZJqsBc5GL+g@public.gmane.org>
2015-08-11 15:52 ` [PATCH v3 11/11] PCI: Remove pci_ats_enabled() Bjorn Helgaas
2015-08-11 15:52 ` Bjorn Helgaas
2015-08-14 14:40 ` [PATCH v3 00/11] PCI: Fix ATS deadlock Bjorn Helgaas
2015-08-14 14:40 ` Bjorn Helgaas
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=20150813075717.GG12342@suse.de \
--to=jroedel@suse.de \
--cc=bhelgaas@google.com \
--cc=dwmw2@infradead.org \
--cc=gdick@solarflare.com \
--cc=iommu@lists.linux-foundation.org \
--cc=linux-pci@vger.kernel.org \
--cc=yinghai@kernel.org \
/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.