Patch "drm/nouveau/ttm: wait for bo fence to signal before unmapping vmas" has been added to the 4.8-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    drm/nouveau/ttm: wait for bo fence to signal before unmapping vmas

to the 4.8-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     drm-nouveau-ttm-wait-for-bo-fence-to-signal-before-unmapping-vmas.patch
and it can be found in the queue-4.8 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.


>From 10dcab3e7f477bffee88d518aad57d06777cfdf4 Mon Sep 17 00:00:00 2001
From: Ben Skeggs <bskeggs@xxxxxxxxxx>
Date: Mon, 12 Dec 2016 17:52:45 +1000
Subject: drm/nouveau/ttm: wait for bo fence to signal before unmapping vmas

From: Ben Skeggs <bskeggs@xxxxxxxxxx>

commit 10dcab3e7f477bffee88d518aad57d06777cfdf4 upstream.

TTM was changed a while back to allow for pipelining of buffer moves, and
part of this was the removal of waiting for a BO to idle before calling
move(), placing the responsibility on the driver to do this if required.

That's all well and good, except, we make use of move_notify() to handle
mapping/unmapping from the GPU VMM as move() isn't called on all paths.

This commit adds a wait before unmapping from a VMM in move_notify(), to
prevent GPU page faults where a buffer is still being accessed.

Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

---
 drivers/gpu/drm/nouveau/nouveau_bo.c |    1 +
 1 file changed, 1 insertion(+)

--- a/drivers/gpu/drm/nouveau/nouveau_bo.c
+++ b/drivers/gpu/drm/nouveau/nouveau_bo.c
@@ -1209,6 +1209,7 @@ nouveau_bo_move_ntfy(struct ttm_buffer_o
 			       nvbo->page_shift != vma->vm->mmu->lpg_shift)) {
 			nvkm_vm_map(vma, new_mem->mm_node);
 		} else {
+			WARN_ON(ttm_bo_wait(bo, false, false));
 			nvkm_vm_unmap(vma);
 		}
 	}


Patches currently in stable-queue which might be from bskeggs@xxxxxxxxxx are

queue-4.8/drm-nouveau-ttm-wait-for-bo-fence-to-signal-before-unmapping-vmas.patch
queue-4.8/drm-nouveau-bios-require-checksum-to-match-for-fast-acpi-shadow-method.patch
queue-4.8/drm-nouveau-gr-fallback-to-legacy-paths-during-firmware-lookup.patch
queue-4.8/drm-nouveau-kms-lvds-panel-strap-moved-again-on-maxwell.patch
queue-4.8/drm-nouveau-ltc-protect-clearing-of-comptags-with-mutex.patch
queue-4.8/drm-nouveau-fifo-gf100-protect-channel-preempt-with-subdev-mutex.patch
queue-4.8/drm-nouveau-i2c-gk110b-gm10x-use-the-correct-implementation.patch
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]