On 2/27/2017 2:54 PM, Jean-Philippe Brucker wrote:
> /* Initialise command lazily */
> +             if (!cmd.opcode)
> +                     arm_smmu_atc_invalidate_to_cmd(smmu, iova, size, &cmd);
> +
> +             spin_lock(&smmu_group->devices_lock);
> +
> +             list_for_each_entry(master, &smmu_group->devices, group_head)
> +                     arm_smmu_atc_invalidate_master(master, &cmd);
> +
> +             /*
> +              * TODO: ensure we do a sync whenever we have sent 
> ats_queue_depth
> +              * invalidations to the same device.
> +              */
> +             arm_smmu_cmdq_issue_cmd(smmu, &sync_cmd);
> +

It is possible to observe ATS invalidation timeout up to 90 seconds according 
to PCIe
spec. How does the current code deal with this?

-- 
Sinan Kaya
Qualcomm Datacenter Technologies, Inc. as an affiliate of Qualcomm 
Technologies, Inc.
Qualcomm Technologies, Inc. is a member of the Code Aurora Forum, a Linux 
Foundation Collaborative Project.
_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

Reply via email to