On Fri, Aug 07, 2026 at 02:56:12PM +0530, Aneesh Kumar K.V (Arm) wrote:
> Realm guests and protected KVM guests may require swiotlb for device DMA
> even when all system RAM is addressable by the DMA zones.
> 
> Do not reduce the SWIOTLB buffer to the kmalloc-bouncing size for these
> guests, as the reduced number of slots can be exhausted during CCA guest
> operation.
> 
> Fixes: 30c5e45ee2c5 ("dma-direct: make dma_direct_map_phys() honor 
> DMA_ATTR_CC_SHARED")
> Signed-off-by: Aneesh Kumar K.V (Arm) <[email protected]>
> ---
>  arch/arm64/mm/init.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/arch/arm64/mm/init.c b/arch/arm64/mm/init.c
> index e308a7cabd12..24caaf10e755 100644
> --- a/arch/arm64/mm/init.c
> +++ b/arch/arm64/mm/init.c
> @@ -339,7 +339,8 @@ void __init arch_mm_preinit(void)
>  {
>       unsigned int flags = SWIOTLB_VERBOSE;
>  
> -     if (max_pfn <= PFN_DOWN(arm64_dma_phys_limit)) {
> +     if (!cc_platform_has(CC_ATTR_GUEST_MEM_ENCRYPT) &&
> +         max_pfn <= PFN_DOWN(arm64_dma_phys_limit)) {

Protected guests under pKVM rely on restricted DMA, so won't this just
waste memory for them?

Will

Reply via email to