[PATCH 1/5] swiotlb: suppress warning when __GFP_NOWARN is set.
Christian König
ckoenig.leichtzumerken at gmail.com
Wed Dec 20 14:49:53 UTC 2017
Am 20.12.2017 um 15:41 schrieb Michel Dänzer:
> 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)
Do you have a full dmesg with that? Cause that is a bit more disturbing.
Christian.
More information about the amd-gfx
mailing list