diff mbox series

[1/1] iommu: to avoid an unnecessary assignment

Message ID 1486114502-10984-1-git-send-email-thunder.leizhen@huawei.com
State New
Headers show
Series [1/1] iommu: to avoid an unnecessary assignment | expand

Commit Message

Zhen Lei Feb. 3, 2017, 9:35 a.m. UTC
Move the assignment statement into if branch above, where it only
needs to be.

Signed-off-by: Zhen Lei <thunder.leizhen@huawei.com>

---
 drivers/iommu/iommu.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

--
2.5.0

Comments

Robin Murphy Feb. 3, 2017, 11:34 a.m. UTC | #1
On 03/02/17 09:35, Zhen Lei wrote:
> Move the assignment statement into if branch above, where it only

> needs to be.

> 

> Signed-off-by: Zhen Lei <thunder.leizhen@huawei.com>

> ---

>  drivers/iommu/iommu.c | 3 ++-

>  1 file changed, 2 insertions(+), 1 deletion(-)

> 

> diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c

> index dbe7f65..b231400 100644

> --- a/drivers/iommu/iommu.c

> +++ b/drivers/iommu/iommu.c

> @@ -1714,13 +1714,14 @@ int iommu_fwspec_add_ids(struct device *dev, u32 *ids, int num_ids)

>  		fwspec = krealloc(dev->iommu_fwspec, size, GFP_KERNEL);

>  		if (!fwspec)

>  			return -ENOMEM;

> +

> +		dev->iommu_fwspec = fwspec;

>  	}

> 

>  	for (i = 0; i < num_ids; i++)

>  		fwspec->ids[fwspec->num_ids + i] = ids[i];

> 

>  	fwspec->num_ids += num_ids;

> -	dev->iommu_fwspec = fwspec;


Strictly, it was done here because I like following transactional
idioms, i.e. at any point dev->fwspec is either the old one or the
fully-initialised new one. However, since the state of the new one
immediately after realloc isn't uninitialised, but still directly
equivalent to the old one, I don't see an issue with moving the
assignemnt there, plus it does avoid a redundant reassignment the first
time through.

Reviewed-by: Robin Murphy <robin.murphy@arm.com>


>  	return 0;

>  }

>  EXPORT_SYMBOL_GPL(iommu_fwspec_add_ids);

> --

> 2.5.0

> 

> 

> _______________________________________________

> iommu mailing list

> iommu@lists.linux-foundation.org

> https://lists.linuxfoundation.org/mailman/listinfo/iommu

>
Joerg Roedel Feb. 6, 2017, 1:07 p.m. UTC | #2
On Fri, Feb 03, 2017 at 05:35:02PM +0800, Zhen Lei wrote:
> Move the assignment statement into if branch above, where it only

> needs to be.

> 

> Signed-off-by: Zhen Lei <thunder.leizhen@huawei.com>

> ---

>  drivers/iommu/iommu.c | 3 ++-

>  1 file changed, 2 insertions(+), 1 deletion(-)


Applied, thanks.
diff mbox series

Patch

diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c
index dbe7f65..b231400 100644
--- a/drivers/iommu/iommu.c
+++ b/drivers/iommu/iommu.c
@@ -1714,13 +1714,14 @@  int iommu_fwspec_add_ids(struct device *dev, u32 *ids, int num_ids)
 		fwspec = krealloc(dev->iommu_fwspec, size, GFP_KERNEL);
 		if (!fwspec)
 			return -ENOMEM;
+
+		dev->iommu_fwspec = fwspec;
 	}

 	for (i = 0; i < num_ids; i++)
 		fwspec->ids[fwspec->num_ids + i] = ids[i];

 	fwspec->num_ids += num_ids;
-	dev->iommu_fwspec = fwspec;
 	return 0;
 }
 EXPORT_SYMBOL_GPL(iommu_fwspec_add_ids);