[PATCH] drm/ttm: stop using GFP_TRANSHUGE_LIGHT
Christian König
ckoenig.leichtzumerken at gmail.com
Fri Jan 15 13:00:59 UTC 2021
Am 15.01.21 um 13:54 schrieb Hans de Goede:
> Hi,
>
> On 1/15/21 1:14 PM, Christian König wrote:
>> Hans do you have any more comments or a tested-by?
> Sorry, I've been busy chasing after another 5.11 regression,
> no comments, also no tested-by, but I do fully expect this to solve
> the issue.
Yeah, I know what you mean :)
>
>> Otherwise I push it to drm-misc-fixes today.
> That sounds good to me.
Thanks, going to do so any moment.
Regards,
Christian.
>
> Regards,
>
> Hans
>
>
>
>
>> Thanks,
>> Christian.
>>
>> Am 13.01.21 um 14:13 schrieb Christian König:
>>> The only flag we really need is __GFP_NOMEMALLOC, highmem depends on
>>> dma32 and moveable/compound should never be set in the first place.
>>>
>>> Signed-off-by: Christian König <christian.koenig at amd.com>
>>> ---
>>> drivers/gpu/drm/ttm/ttm_pool.c | 11 ++++++-----
>>> 1 file changed, 6 insertions(+), 5 deletions(-)
>>>
>>> diff --git a/drivers/gpu/drm/ttm/ttm_pool.c b/drivers/gpu/drm/ttm/ttm_pool.c
>>> index 8cd776adc592..11e0313db0ea 100644
>>> --- a/drivers/gpu/drm/ttm/ttm_pool.c
>>> +++ b/drivers/gpu/drm/ttm/ttm_pool.c
>>> @@ -79,12 +79,13 @@ static struct page *ttm_pool_alloc_page(struct ttm_pool *pool, gfp_t gfp_flags,
>>> struct page *p;
>>> void *vaddr;
>>> - if (order) {
>>> - gfp_flags |= GFP_TRANSHUGE_LIGHT | __GFP_NORETRY |
>>> + /* Don't set the __GFP_COMP flag for higher order allocations.
>>> + * Mapping pages directly into an userspace process and calling
>>> + * put_page() on a TTM allocated page is illegal.
>>> + */
>>> + if (order)
>>> + gfp_flags |= __GFP_NOMEMALLOC | __GFP_NORETRY |
>>> __GFP_KSWAPD_RECLAIM;
>>> - gfp_flags &= ~__GFP_MOVABLE;
>>> - gfp_flags &= ~__GFP_COMP;
>>> - }
>>> if (!pool->use_dma_alloc) {
>>> p = alloc_pages(gfp_flags, order);
More information about the dri-devel
mailing list