Re: [PATCH v8 1/7] iommu: enhance IOMMU default DMA mode build options

From: Leizhen (ThunderTown)
Date: Thu Jun 13 2019 - 12:35:45 EST




On 2019/5/31 18:42, John Garry wrote:
>
>>>> -config IOMMU_DEFAULT_PASSTHROUGH
>>>> -ÂÂÂ bool "IOMMU passthrough by default"
>>>> +choice
>>>> +ÂÂÂ prompt "IOMMU default DMA mode"
>>>> ÂÂÂÂ depends on IOMMU_API
>>>> -ÂÂÂÂÂÂÂ help
>>>> -ÂÂÂÂÂ Enable passthrough by default, removing the need to pass in
>>>> -ÂÂÂÂÂ iommu.passthrough=on or iommu=pt through command line. If this
>>>> -ÂÂÂÂÂ is enabled, you can still disable with iommu.passthrough=off
>>>> -ÂÂÂÂÂ or iommu=nopt depending on the architecture.
>>>> +ÂÂÂ default IOMMU_DEFAULT_STRICT
>>>> +ÂÂÂ help
>>>> +ÂÂÂÂÂ This option allows IOMMU DMA mode to be chose at build time, to
>>>
>>> As before:
>>> /s/chose/chosen/, /s/allows IOMMU/allows an IOMMU/
>> I'm sorry that the previous version was not modified.
>>
>>>
>>>> +ÂÂÂÂÂ override the default DMA mode of each ARCHs, removing the need to
>>>
>>> Again, as before:
>>> ARCHs should be singular
>> OK
>>
>>>
>>>> +ÂÂÂÂÂ pass in kernel parameters through command line. You can still use
>>>> +ÂÂÂÂÂ ARCHs specific boot options to override this option again.
>
> *
>
>>>> +
>>>> +config IOMMU_DEFAULT_PASSTHROUGH
>>>> +ÂÂÂ bool "passthrough"
>>>> +ÂÂÂ help
>>>> +ÂÂÂÂÂ In this mode, the DMA access through IOMMU without any addresses
>>>> +ÂÂÂÂÂ translation. That means, the wrong or illegal DMA access can not
>>>> +ÂÂÂÂÂ be caught, no error information will be reported.
>>>>
>>>> ÂÂÂÂÂÂ If unsure, say N here.
>>>>
>>>> +config IOMMU_DEFAULT_LAZY
>>>> +ÂÂÂ bool "lazy"
>>>> +ÂÂÂ help
>>>> +ÂÂÂÂÂ Support lazy mode, where for every IOMMU DMA unmap operation, the
>>>> +ÂÂÂÂÂ flush operation of IOTLB and the free operation of IOVA are deferred.
>>>> +ÂÂÂÂÂ They are only guaranteed to be done before the related IOVA will be
>>>> +ÂÂÂÂÂ reused.
>>>
>>> why no advisory on how to set if unsure?
>> Because the LAZY and STRICT have their own advantages and disadvantages.
>>
>> Should I say: If unsure, keep the defaultã
>
> Maybe. So you could put this in the help for the choice, * above, and remove the advisory on IOMMU_DEFAULT_PASSTHROUGH.

OK, I'll revise it according to this idea in v9.

>
> However the maintainer may have a different view.
>
> Thanks,
> John
>
>>
>>>
>>>> +
>>>> +config IOMMU_DEFAULT_STRICT
>>>> +ÂÂÂ bool "strict"
>>>> +ÂÂÂ help
>>>> +ÂÂÂÂÂ For every IOMMU DMA unmap operation, the flush operation of IOTLB and
>>>> +ÂÂÂÂÂ the free operation of IOVA are guaranteed to be done in the unmap
>>>> +ÂÂÂÂÂ function.
>>>> +
>>>> +ÂÂÂÂÂ This mode is safer than the two above, but it maybe slower in some
>>>> +ÂÂÂÂÂ high performace scenarios.
>>>
>>> and here?
>
>
> .
>