[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <23f1cc66-2172-9534-53ef-3d9b2db26bda@huawei.com>
Date: Tue, 17 Aug 2021 12:53:52 +0100
From: John Garry <john.garry@...wei.com>
To: Zhen Lei <thunder.leizhen@...wei.com>,
Will Deacon <will@...nel.org>,
Robin Murphy <robin.murphy@....com>,
Joerg Roedel <joro@...tes.org>,
linux-arm-kernel <linux-arm-kernel@...ts.infradead.org>,
iommu <iommu@...ts.linux-foundation.org>,
<linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] iommu/arm-smmu-v3: Stop pre-zeroing batch commands in
arm_smmu_atc_inv_master()
On 17/08/2021 12:34, Zhen Lei wrote:
> Pre-zeroing the batched commands structure is inefficient, as individual
> commands are zeroed later in arm_smmu_cmdq_build_cmd(). Therefore, only
> the member 'num' needs to be initialized to 0.
>
> Signed-off-by: Zhen Lei <thunder.leizhen@...wei.com>
Reviewed-by: John Garry <john.garry@...wei.com>
> ---
> drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c b/drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c
> index 50a9db5bac466c7..e6882ae81fd08f6 100644
> --- a/drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c
> +++ b/drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c
> @@ -1776,10 +1776,11 @@ static int arm_smmu_atc_inv_master(struct arm_smmu_master *master)
> {
> int i;
> struct arm_smmu_cmdq_ent cmd;
> - struct arm_smmu_cmdq_batch cmds = {};
> + struct arm_smmu_cmdq_batch cmds;
>
> arm_smmu_atc_inv_to_cmd(0, 0, 0, &cmd);
>
> + cmds.num = 0;
We prob should have added a comment why we do this (and at the other
sites). I think Robin said something similar in another patch.
> for (i = 0; i < master->num_streams; i++) {
> cmd.atc.sid = master->streams[i].id;
> arm_smmu_cmdq_batch_add(master->smmu, &cmds, &cmd);
>
Powered by blists - more mailing lists