All of lore.kernel.org
 help / color / mirror / Atom feed
From: Will Deacon <will.deacon-5wv7dgnIgG8@public.gmane.org>
To: Robin Murphy <robin.murphy-5wv7dgnIgG8@public.gmane.org>
Cc: devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	punit.agrawal-5wv7dgnIgG8@public.gmane.org,
	iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org,
	thunder.leizhen-hv44wF8Li93QT0dZR+AlfA@public.gmane.org
Subject: Re: [PATCH v5 15/19] iommu/arm-smmu: Convert to iommu_fwspec
Date: Thu, 1 Sep 2016 19:53:45 +0100	[thread overview]
Message-ID: <20160901185344.GW6721@arm.com> (raw)
In-Reply-To: <221f668d606abdfb4d6ee6da2c5f568c57ceccdd.1471975357.git.robin.murphy-5wv7dgnIgG8@public.gmane.org>

On Tue, Aug 23, 2016 at 08:05:26PM +0100, Robin Murphy wrote:
> In the final step of preparation for full generic configuration support,
> swap our fixed-size master_cfg for the generic iommu_fwspec. For the
> legacy DT bindings, the driver simply gets to act as its own 'firmware'.
> Farewell, arbitrary MAX_MASTER_STREAMIDS!
> 
> Signed-off-by: Robin Murphy <robin.murphy-5wv7dgnIgG8@public.gmane.org>
> ---
>  drivers/iommu/arm-smmu.c | 139 ++++++++++++++++++++++++++---------------------
>  1 file changed, 77 insertions(+), 62 deletions(-)

[...]

>  static int arm_smmu_attach_dev(struct iommu_domain *domain, struct device *dev)
>  {
>  	int ret;
> +	struct iommu_fwspec *fwspec = dev_iommu_fwspec(dev);
> +	struct arm_smmu_device *smmu = fwspec_smmu(fwspec);
>  	struct arm_smmu_domain *smmu_domain = to_smmu_domain(domain);
> -	struct arm_smmu_master_cfg *cfg = dev->archdata.iommu;
>  
> -	if (!cfg) {
> +	if (!fwspec || fwspec->iommu_ops != &arm_smmu_ops) {

As mentioned off-list, you have already dereferenced fwspec before this
NULL check.

Will

  parent reply	other threads:[~2016-09-01 18:53 UTC|newest]

Thread overview: 61+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-23 19:05 [PATCH v5 00/19] Generic DT bindings for PCI IOMMUs and ARM SMMU Robin Murphy
     [not found] ` <cover.1471975357.git.robin.murphy-5wv7dgnIgG8@public.gmane.org>
2016-08-23 19:05   ` [PATCH v5 01/19] Docs: dt: add PCI IOMMU map bindings Robin Murphy
2016-08-23 19:05   ` [PATCH v5 02/19] of/irq: Break out msi-map lookup (again) Robin Murphy
2016-08-23 19:05   ` [PATCH v5 03/19] iommu/of: Handle iommu-map property for PCI Robin Murphy
     [not found]     ` <93909648835867008b21cb688a1d7db238d3641a.1471975357.git.robin.murphy-5wv7dgnIgG8@public.gmane.org>
2016-08-31 15:43       ` Will Deacon
2016-08-23 19:05   ` [PATCH v5 04/19] iommu/of: Introduce iommu_fwspec Robin Murphy
     [not found]     ` <3e8eaf4fd65833fecc62828214aee81f6ca6c190.1471975357.git.robin.murphy-5wv7dgnIgG8@public.gmane.org>
2016-08-31 17:28       ` Will Deacon
     [not found]         ` <20160831172856.GI29505-5wv7dgnIgG8@public.gmane.org>
2016-09-01 12:07           ` Robin Murphy
     [not found]             ` <900f3dcb-217c-4fb3-2f7d-15572f31a0c0-5wv7dgnIgG8@public.gmane.org>
2016-09-01 12:31               ` Will Deacon
     [not found]                 ` <20160901123158.GE6721-5wv7dgnIgG8@public.gmane.org>
2016-09-01 13:25                   ` Robin Murphy
2016-08-23 19:05   ` [PATCH v5 05/19] iommu/arm-smmu: Implement of_xlate() for SMMUv3 Robin Murphy
     [not found]     ` <6088007f60a24b36a3bf965b62521f99cd908019.1471975357.git.robin.murphy-5wv7dgnIgG8@public.gmane.org>
2016-09-01 17:06       ` Will Deacon
     [not found]         ` <20160901170604.GP6721-5wv7dgnIgG8@public.gmane.org>
2016-09-01 17:40           ` Robin Murphy
2016-08-23 19:05   ` [PATCH v5 06/19] iommu/arm-smmu: Support non-PCI devices with SMMUv3 Robin Murphy
     [not found]     ` <207d0ae38c5b01b7cf7e48231a4d01bac453b57c.1471975357.git.robin.murphy-5wv7dgnIgG8@public.gmane.org>
2016-09-01 17:08       ` Will Deacon
2016-08-23 19:05   ` [PATCH v5 07/19] iommu/arm-smmu: Set PRIVCFG in stage 1 STEs Robin Murphy
     [not found]     ` <1cda9861ce3ede6c2de9c6c4f2294549808b421b.1471975357.git.robin.murphy-5wv7dgnIgG8@public.gmane.org>
2016-09-01 17:19       ` Will Deacon
2016-08-23 19:05   ` [PATCH v5 08/19] iommu/arm-smmu: Handle stream IDs more dynamically Robin Murphy
     [not found]     ` <36f71a07fbc6037ca664bdcc540650f893081dd1.1471975357.git.robin.murphy-5wv7dgnIgG8@public.gmane.org>
2016-09-01 18:17       ` Will Deacon
2016-08-23 19:05   ` [PATCH v5 09/19] iommu/arm-smmu: Consolidate stream map entry state Robin Murphy
     [not found]     ` <26fcf7d3138816b9546a3dcc2bbbc2f229f34c91.1471975357.git.robin.murphy-5wv7dgnIgG8@public.gmane.org>
2016-09-01 18:32       ` Will Deacon
     [not found]         ` <20160901183257.GT6721-5wv7dgnIgG8@public.gmane.org>
2016-09-01 18:45           ` Robin Murphy
     [not found]             ` <6d3209ff-51ad-30ca-867b-ce62105e6699-5wv7dgnIgG8@public.gmane.org>
2016-09-01 18:54               ` Will Deacon
2016-08-23 19:05   ` [PATCH v5 10/19] iommu/arm-smmu: Keep track of S2CR state Robin Murphy
     [not found]     ` <e086741acfd0959671d184203ef758c824c8d7da.1471975357.git.robin.murphy-5wv7dgnIgG8@public.gmane.org>
2016-09-01 18:42       ` Will Deacon
     [not found]         ` <20160901184259.GU6721-5wv7dgnIgG8@public.gmane.org>
2016-09-01 19:00           ` Robin Murphy
2016-08-23 19:05   ` [PATCH v5 11/19] iommu/arm-smmu: Refactor mmu-masters handling Robin Murphy
     [not found]     ` <00301aa60323bb94588d078f2962feea0cb45c72.1471975357.git.robin.murphy-5wv7dgnIgG8@public.gmane.org>
2016-09-01 18:47       ` Will Deacon
2016-08-23 19:05   ` [PATCH v5 12/19] iommu/arm-smmu: Streamline SMMU data lookups Robin Murphy
2016-08-23 19:05   ` [PATCH v5 13/19] iommu/arm-smmu: Add a stream map entry iterator Robin Murphy
2016-08-23 19:05   ` [PATCH v5 14/19] iommu/arm-smmu: Intelligent SMR allocation Robin Murphy
     [not found]     ` <693b7fdd58be254297eb43ac8f5e035beb5226b2.1471975357.git.robin.murphy-5wv7dgnIgG8@public.gmane.org>
2016-09-01 15:17       ` Lorenzo Pieralisi
2016-09-01 17:59         ` Robin Murphy
2016-08-23 19:05   ` [PATCH v5 15/19] iommu/arm-smmu: Convert to iommu_fwspec Robin Murphy
     [not found]     ` <221f668d606abdfb4d6ee6da2c5f568c57ceccdd.1471975357.git.robin.murphy-5wv7dgnIgG8@public.gmane.org>
2016-09-01 18:53       ` Will Deacon [this message]
2016-08-23 19:05   ` [PATCH v5 16/19] Docs: dt: document ARM SMMU generic binding usage Robin Murphy
     [not found]     ` <b4f0eca93ac944c3430297b97c703e1bc54846d7.1471975357.git.robin.murphy-5wv7dgnIgG8@public.gmane.org>
2016-08-29 15:44       ` Rob Herring
2016-08-23 19:05   ` [PATCH v5 17/19] iommu/arm-smmu: Wire up generic configuration support Robin Murphy
     [not found]     ` <4439250e01ac071bae8f03a5ccf107ed7ddc0b49.1471975357.git.robin.murphy-5wv7dgnIgG8@public.gmane.org>
2016-09-01 19:02       ` Will Deacon
2016-08-23 19:05   ` [PATCH v5 18/19] iommu/arm-smmu: Set domain geometry Robin Murphy
     [not found]     ` <d6cedec16fe96a081ea2f9f27378dd1a6f406c72.1471975357.git.robin.murphy-5wv7dgnIgG8@public.gmane.org>
2016-08-31 21:00       ` Auger Eric
2016-08-23 19:05   ` [PATCH v5 19/19] iommu/dma: Add support for mapping MSIs Robin Murphy
2016-08-23 19:05     ` Robin Murphy
     [not found]     ` <4c901ff0f6355039de55b0bc0df283065f02efa1.1471975357.git.robin.murphy-5wv7dgnIgG8@public.gmane.org>
2016-08-24  8:16       ` Thomas Gleixner
2016-08-24  8:16         ` Thomas Gleixner
2016-08-24 10:06         ` Robin Murphy
2016-08-24 10:06           ` Robin Murphy
2016-08-25 22:25       ` Auger Eric
2016-08-25 22:25         ` Auger Eric
     [not found]         ` <5d8d4ae0-846a-2499-eb46-6f215b87ebd4-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2016-08-26  1:17           ` Robin Murphy
2016-08-26  1:17             ` Robin Murphy
     [not found]             ` <20160826021736.571a732f-h2/QxWiDqNo@public.gmane.org>
2016-08-31 20:51               ` Auger Eric
2016-08-31 20:51                 ` Auger Eric
2016-08-23 19:15   ` [PATCH v5 00/19] Generic DT bindings for PCI IOMMUs and ARM SMMU Robin Murphy
2016-08-23 19:15     ` Robin Murphy
     [not found]     ` <3a9a9369-d8cd-66f4-9344-965c80894bb6-5wv7dgnIgG8@public.gmane.org>
2016-09-01  3:49       ` Anup Patel
2016-09-01  3:49         ` Anup Patel
     [not found]         ` <CAALAos-OzPG=+aU8eKEZtx6EFXytPXq09k3QweHvtYCD=mN0mQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-09-01 10:10           ` Robin Murphy
2016-09-01 10:10             ` Robin Murphy
2016-09-01 15:22   ` Lorenzo Pieralisi
2016-09-01 19:05   ` Will Deacon

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=20160901185344.GW6721@arm.com \
    --to=will.deacon-5wv7dgnigg8@public.gmane.org \
    --cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org \
    --cc=punit.agrawal-5wv7dgnIgG8@public.gmane.org \
    --cc=robin.murphy-5wv7dgnIgG8@public.gmane.org \
    --cc=thunder.leizhen-hv44wF8Li93QT0dZR+AlfA@public.gmane.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.