[PATCH 1/5] swiotlb: suppress warning when __GFP_NOWARN is set.

Michel Dänzer michel at daenzer.net
Wed Dec 20 14:41:21 UTC 2017


On 2017-12-20 02:21 PM, Christian König wrote:
> TTM tries to allocate coherent memory in chunks of 2MB first to improve
> TLB efficiency and falls back to allocating 4K pages if that fails.
> 
> Suppress the warning when the 2MB allocations fails since there is a
> valid fall back path.
> 
> Signed-off-by: Christian König <christian.koenig at amd.com>
> ---
>  lib/swiotlb.c | 8 +++++---
>  1 file changed, 5 insertions(+), 3 deletions(-)
> 
> diff --git a/lib/swiotlb.c b/lib/swiotlb.c
> index cea19aaf303c..63a44fb29ce6 100644
> --- a/lib/swiotlb.c
> +++ b/lib/swiotlb.c
> @@ -769,9 +769,11 @@ swiotlb_alloc_coherent(struct device *hwdev, size_t size,
>  	return ret;
>  
>  err_warn:
> -	pr_warn("swiotlb: coherent allocation failed for device %s size=%zu\n",
> -		dev_name(hwdev), size);
> -	dump_stack();
> +	if (!(flags & __GFP_NOWARN)) {
> +		pr_warn("swiotlb: coherent allocation failed for device %s size=%zu\n",
> +			dev_name(hwdev), size);
> +		dump_stack();
> +	}
>  
>  	return NULL;
>  }
> 

This isn't the only swiotlb message I'm hitting, also this from
swiotlb_tbl_map_single:

 radeon 0000:00:01.0: swiotlb buffer is full (sz: 2097152 bytes)


-- 
Earthling Michel Dänzer               |               http://www.amd.com
Libre software enthusiast             |             Mesa and X developer


More information about the amd-gfx mailing list