Re: [PATCH v3 3/6] dma-mapping: Remove dma_check_mask()

From: Lendacky, Thomas
Date: Thu Jul 18 2019 - 13:29:37 EST


On 7/17/19 10:28 PM, Thiago Jung Bauermann wrote:
> sme_active() is an x86-specific function so it's better not to call it from
> generic code. Christoph Hellwig mentioned that "There is no reason why we
> should have a special debug printk just for one specific reason why there
> is a requirement for a large DMA mask.", so just remove dma_check_mask().
>
> Signed-off-by: Thiago Jung Bauermann <bauerman@xxxxxxxxxxxxx>

Reviewed-by: Tom Lendacky <thomas.lendacky@xxxxxxx>

> ---
> kernel/dma/mapping.c | 8 --------
> 1 file changed, 8 deletions(-)
>
> diff --git a/kernel/dma/mapping.c b/kernel/dma/mapping.c
> index 1f628e7ac709..61eeefbfcb36 100644
> --- a/kernel/dma/mapping.c
> +++ b/kernel/dma/mapping.c
> @@ -291,12 +291,6 @@ void dma_free_attrs(struct device *dev, size_t size, void *cpu_addr,
> }
> EXPORT_SYMBOL(dma_free_attrs);
>
> -static inline void dma_check_mask(struct device *dev, u64 mask)
> -{
> - if (sme_active() && (mask < (((u64)sme_get_me_mask() << 1) - 1)))
> - dev_warn(dev, "SME is active, device will require DMA bounce buffers\n");
> -}
> -
> int dma_supported(struct device *dev, u64 mask)
> {
> const struct dma_map_ops *ops = get_dma_ops(dev);
> @@ -327,7 +321,6 @@ int dma_set_mask(struct device *dev, u64 mask)
> return -EIO;
>
> arch_dma_set_mask(dev, mask);
> - dma_check_mask(dev, mask);
> *dev->dma_mask = mask;
> return 0;
> }
> @@ -345,7 +338,6 @@ int dma_set_coherent_mask(struct device *dev, u64 mask)
> if (!dma_supported(dev, mask))
> return -EIO;
>
> - dma_check_mask(dev, mask);
> dev->coherent_dma_mask = mask;
> return 0;
> }
>