On Tue, Apr 21, 2020 at 04:11:07PM -0700, Ralph Campbell wrote: > In nouveau_dmem_init(), a number of struct nouveau_dmem_chunk are allocated > and put on the dmem->chunk_empty list. Then in nouveau_dmem_pages_alloc(), > a nouveau_dmem_chunk is removed from the list and GPU memory is allocated. > However, the nouveau_dmem_chunk is never removed from the chunk_empty > list nor placed on the chunk_free or chunk_full lists. This results > in only one chunk ever being actually used (2MB) and quickly leads to > migration to device private memory failures. > > Fix this by having just one list of free device private pages and if no > pages are free, allocate a chunk of device private pages and GPU memory. > > Signed-off-by: Ralph Campbell <rcampbell@xxxxxxxxxx> > --- > drivers/gpu/drm/nouveau/nouveau_dmem.c | 304 +++++++++---------------- > 1 file changed, 112 insertions(+), 192 deletions(-) Does this generate any conflicts with my series to rework hmm_range_fault? Jason _______________________________________________ Nouveau mailing list Nouveau@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/nouveau