• Francisco Jerez's avatar
    drm/nouveau: Never evict VRAM buffers to system. · 965cf68e
    Francisco Jerez authored
    VRAM->system is a synchronous operation: it involves scheduling a
    VRAM->TT DMA transfer and stalling the CPU until it's finished so that
    we can unbind the new memory from the translation tables. VRAM->TT can
    always be performed asynchronously, even if TT is already full and we
    have to move something out of it.
    
    Additionally, allowing VRAM->system behaves badly under heavy memory
    pressure because once we run out of TT, stuff starts to be moved back
    and forth between VRAM and system, and the TT contents are hardly
    renewed.
    Signed-off-by: default avatarFrancisco Jerez <currojerez@riseup.net>
    Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
    965cf68e
nouveau_bo.c 19.6 KB