[dpdk-dev] [PATCH] bus/pci: support iova=va on PowerNV systems
David Christensen
drc at linux.vnet.ibm.com
Mon Mar 16 17:09:58 CET 2020
>> Bare metal PowerNV systems include a DPDK supported IOMMU that allows
>> IOVA=VA support. Test for the platform type and report virtual address
>> support if running on a PowerNV system.
...
>>
>> +
>> + char *line = 0;
>
> Nit: NULL
Fixed.
>> + /* Check for a PowerNV platform */
>> + while (getline(&line, &len, fp) != -1) {
>
> From here, you leak line.
>
Fixed.
>
> Nit, to avoid multiple level of indent, how about invert the check:
>
> if (strstr(line, "platform") == NULL)
> continue;
Fixed.
>> + if (strstr(line, "PowerNV") != NULL) {
>> + RTE_LOG(DEBUG, EAL, "Running on a PowerNV system\n");
>
> Not really helpful, it does not indicate that this system iommu supports VA.
This is the advice given by the kernel developer who maintains the IOMMU
code for PPC. There's nothing in the /sys filesystem that describes the
IOMMU like there is in x86_64 platforms. All POWER systems supported by
DPDK have an IOMMU (you can't turn it off). This is true for both bare
metal systems like PowerNV (Power Non-Virtualized) as well as
virtualized systems like QEMU/KVM and PowerVM LPARs. In the case of
virtualized systems the IOMMU has different capabilities and is not
currently supported in DPDK. Thus, if I know the platform I'm running
on then I know the IOMMU is present and enabled.
Dave
More information about the dev
mailing list