iommu/arm-smmu-v3: Stop pre-zeroing batch commands in arm_smmu_atc_inv_master()
authorZhen Lei <thunder.leizhen@huawei.com>
Tue, 17 Aug 2021 11:34:11 +0000 (19:34 +0800)
committerWill Deacon <will@kernel.org>
Mon, 4 Oct 2021 11:20:50 +0000 (12:20 +0100)
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@huawei.com>
Reviewed-by: John Garry <john.garry@huawei.com>
Link: https://lore.kernel.org/r/20210817113411.1962-1-thunder.leizhen@huawei.com
Signed-off-by: Will Deacon <will@kernel.org>
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c

index a388e318f86e0bbfdde2aa7023e79dce23f82a99..6340a88a175568b17f76477927f6309268ea47d5 100644 (file)
@@ -1764,10 +1764,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;
        for (i = 0; i < master->num_streams; i++) {
                cmd.atc.sid = master->streams[i].id;
                arm_smmu_cmdq_batch_add(master->smmu, &cmds, &cmd);