[PATCH] drm/nouveau: fix dma syncing for loops (v2)

Ruhl, Michael J michael.j.ruhl at intel.com
Thu Mar 11 12:42:40 UTC 2021


>-----Original Message-----
>From: Dave Airlie <airlied at gmail.com>
>Sent: Wednesday, March 10, 2021 11:35 PM
>To: dri-devel at lists.freedesktop.org
>Cc: Ruhl, Michael J <michael.j.ruhl at intel.com>; skeggsb at gmail.com
>Subject: [PATCH] drm/nouveau: fix dma syncing for loops (v2)
>
>From: Dave Airlie <airlied at redhat.com>
>
>The index variable should only be increased in one place.
>
>Noticed this while trying to track down another oops.
>
>v2: use while loop.

Ok, that makes it more obvious for me. 

Thanks.

Reviewed-by: Michael J. Ruhl <michael.j.ruhl at intel.com>

M

>Fixes: f295c8cfec83 ("drm/nouveau: fix dma syncing warning with debugging
>on.")
>Signed-off-by: Dave Airlie <airlied at redhat.com>
>---
> drivers/gpu/drm/nouveau/nouveau_bo.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
>diff --git a/drivers/gpu/drm/nouveau/nouveau_bo.c
>b/drivers/gpu/drm/nouveau/nouveau_bo.c
>index 2375711877cf..fabb314a0b2f 100644
>--- a/drivers/gpu/drm/nouveau/nouveau_bo.c
>+++ b/drivers/gpu/drm/nouveau/nouveau_bo.c
>@@ -556,7 +556,8 @@ nouveau_bo_sync_for_device(struct nouveau_bo
>*nvbo)
> 	if (nvbo->force_coherent)
> 		return;
>
>-	for (i = 0; i < ttm_dma->num_pages; ++i) {
>+	i = 0;
>+	while (i < ttm_dma->num_pages) {
> 		struct page *p = ttm_dma->pages[i];
> 		size_t num_pages = 1;
>
>@@ -587,7 +588,8 @@ nouveau_bo_sync_for_cpu(struct nouveau_bo
>*nvbo)
> 	if (nvbo->force_coherent)
> 		return;
>
>-	for (i = 0; i < ttm_dma->num_pages; ++i) {
>+	i = 0;
>+	while (i < ttm_dma->num_pages) {
> 		struct page *p = ttm_dma->pages[i];
> 		size_t num_pages = 1;
>
>--
>2.27.0



More information about the dri-devel mailing list