[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