IOMMU in bypass mode by default on ARM64, instead of command line option

Sunil Kovvuri sunil.kovvuri at gmail.com
Tue Mar 7 04:59:09 PST 2017


>> locks which are
>> being used for IOVA maintenance and while updating translation tables inside
>> ARM SMMUv2/v3 drivers.

>Yes, we're well aware that there's a whole load of potential lock
>contention where there doesn't really need to be. The performance
>optimisation effort has mostly been waiting for sufficiently big
>systems/workloads to start appearing in order to measure and justify it.
>Consider yourself the winner :)

>> Intel and AMD IOMMU drivers does make use of per-cpu IOVA caches to
>> reduce the impact of 'iova_rbtree_lock' but ARM is yet to catchup.
>> http://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/drivers/iommu/iova.c?id=9257b4a206fc0229dd5f84b78e4d1ebf3f91d270
>>
>> And the other lock is 'pgtbl_lock' used in ARM SMMUv2/V3 drivers.

>Do you have any measurements to show how the contention on those two
>locks compares? That would be useful to start with.

Sure, I will capture a fresh and send you the perf data tomorrow.

Thanks,
Sunil.



More information about the linux-arm-kernel mailing list