On Wed, Jan 13, 2021 at 3:46 PM Christian König <ckoenig.leichtzumerken@xxxxxxxxx> wrote: > > Am 13.01.21 um 14:27 schrieb Daniel Vetter: > > On Wed, Jan 13, 2021 at 02:13:25PM +0100, Christian König wrote: > >> 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@xxxxxxx> > > Needs Fixes: line and References to the GFP_TRANSHUGE_LIGHT report from > > Hans and for the chromium report for the mmap fail. > > Which tag should I use for this? Just Link:? Link: is for the patch submission itself (to link to archives with the review&discussions), usually it's References is for bug reports and anything else. I think at least. You can have multiple Link: tags too, if you record all the previous submissions, that's a bit up to subsystems and how they all roll. -Daniel > > With those: > > > > Reviewed-by: Daniel Vetter <daniel.vetter@xxxxxxxx> > > > > Also I guess really time for me to stitch together that hack to catch > > dma-buf sglist struct page abusers ... > > Oh, yes please. > > Christian. > > > -Daniel > > > >> --- > >> 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); > >> -- > >> 2.25.1 > >> > -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel