On Wed, Jan 18, 2023 at 10:04 AM Christian König <ckoenig.leichtzumerken@xxxxxxxxx> wrote: > > Hi guys, > > another ping for this. It's just a minor cleanup. > Acked-by: Karol Herbst <kherbst@xxxxxxxxxx> Though I'd say that having a wrapper function like that isn't pointless on its own and I kind of fail to see the reason it gets removed in the first place. Also.. I wouldn't call this a "cleanup" because it actually removes something useful. Yes, it's only calling one function, but it's more of a pain to use the wrapped one than the outer one. > Dave/Daniel can you help me out here? > > Thanks, > Christian. > > Am 11.01.23 um 10:52 schrieb Christian König: > > Hi guys, > > > > can I get a quick ack for this? > > > > The patch has no functional change and is just a cleanup. > > > > Thanks, > > Christian. > > > > Am 25.11.22 um 11:21 schrieb Christian König: > >> TTM is just wrapping core DMA functionality here, remove the mid-layer. > >> No functional change. > >> > >> Signed-off-by: Christian König <christian.koenig@xxxxxxx> > >> --- > >> drivers/gpu/drm/nouveau/nouveau_bo.c | 6 +++++- > >> drivers/gpu/drm/nouveau/nouveau_gem.c | 11 ++++++++--- > >> 2 files changed, 13 insertions(+), 4 deletions(-) > >> > >> diff --git a/drivers/gpu/drm/nouveau/nouveau_bo.c > >> b/drivers/gpu/drm/nouveau/nouveau_bo.c > >> index 335fa91ca4ad..288eebc70a67 100644 > >> --- a/drivers/gpu/drm/nouveau/nouveau_bo.c > >> +++ b/drivers/gpu/drm/nouveau/nouveau_bo.c > >> @@ -922,6 +922,7 @@ static void nouveau_bo_move_ntfy(struct > >> ttm_buffer_object *bo, > >> struct nouveau_mem *mem = new_reg ? nouveau_mem(new_reg) : NULL; > >> struct nouveau_bo *nvbo = nouveau_bo(bo); > >> struct nouveau_vma *vma; > >> + long ret; > >> /* ttm can now (stupidly) pass the driver bos it didn't > >> create... */ > >> if (bo->destroy != nouveau_bo_del_ttm) > >> @@ -936,7 +937,10 @@ static void nouveau_bo_move_ntfy(struct > >> ttm_buffer_object *bo, > >> } > >> } else { > >> list_for_each_entry(vma, &nvbo->vma_list, head) { > >> - WARN_ON(ttm_bo_wait(bo, false, false)); > >> + ret = dma_resv_wait_timeout(bo->base.resv, > >> + DMA_RESV_USAGE_BOOKKEEP, > >> + false, 15 * HZ); > >> + WARN_ON(ret <= 0); > >> nouveau_vma_unmap(vma); > >> } > >> } > >> diff --git a/drivers/gpu/drm/nouveau/nouveau_gem.c > >> b/drivers/gpu/drm/nouveau/nouveau_gem.c > >> index ac5793c96957..f77e44958037 100644 > >> --- a/drivers/gpu/drm/nouveau/nouveau_gem.c > >> +++ b/drivers/gpu/drm/nouveau/nouveau_gem.c > >> @@ -645,7 +645,7 @@ nouveau_gem_pushbuf_reloc_apply(struct > >> nouveau_cli *cli, > >> struct drm_nouveau_gem_pushbuf_reloc *reloc, > >> struct drm_nouveau_gem_pushbuf_bo *bo) > >> { > >> - int ret = 0; > >> + long ret = 0; > >> unsigned i; > >> for (i = 0; i < req->nr_relocs; i++) { > >> @@ -703,9 +703,14 @@ nouveau_gem_pushbuf_reloc_apply(struct > >> nouveau_cli *cli, > >> data |= r->vor; > >> } > >> - ret = ttm_bo_wait(&nvbo->bo, false, false); > >> + ret = dma_resv_wait_timeout(nvbo->bo.base.resv, > >> + DMA_RESV_USAGE_BOOKKEEP, > >> + false, 15 * HZ); > >> + if (ret == 0) > >> + ret = -EBUSY; > >> if (ret) { > >> - NV_PRINTK(err, cli, "reloc wait_idle failed: %d\n", ret); > >> + NV_PRINTK(err, cli, "reloc wait_idle failed: %ld\n", > >> + ret); > >> break; > >> } > > >