Uggh this is part of the mess with the revert, I'm not sure how best to dig out of this one yet. Dave. On Wed, 30 Sep 2020 at 15:55, Dave Airlie <airlied@xxxxxxxxx> wrote: > > From: Dave Airlie <airlied@xxxxxxxxxx> > > This fixes a bug introduced in be1213a341a289afc51f89181c310e368fba0b66 > drm/ttm: remove TTM_MEMTYPE_FLAG_FIXED v2 > > On vmwgfx this causes a Command buffer error WARN to trigger. > > This is because the old code used to check if bo->ttm was true, > and the new code doesn't, fix it code to add back the check resolves > the issue. > > Fixes: be1213a341a2 ("drm/ttm: remove TTM_MEMTYPE_FLAG_FIXED v2") > Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx> > --- > drivers/gpu/drm/ttm/ttm_bo.c | 8 +++++--- > 1 file changed, 5 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/ttm/ttm_bo.c b/drivers/gpu/drm/ttm/ttm_bo.c > index 70b3bee27850..e8aa2fe8e9d1 100644 > --- a/drivers/gpu/drm/ttm/ttm_bo.c > +++ b/drivers/gpu/drm/ttm/ttm_bo.c > @@ -251,9 +251,11 @@ static int ttm_bo_handle_move_mem(struct ttm_buffer_object *bo, > /* Zero init the new TTM structure if the old location should > * have used one as well. > */ > - ret = ttm_tt_create(bo, old_man->use_tt); > - if (ret) > - goto out_err; > + if (!bo->ttm) { > + ret = ttm_tt_create(bo, old_man->use_tt); > + if (ret) > + goto out_err; > + } > > ret = ttm_tt_set_placement_caching(bo->ttm, mem->placement); > if (ret) > -- > 2.20.1 > > _______________________________________________ > dri-devel mailing list > dri-devel@xxxxxxxxxxxxxxxxxxxxx > https://lists.freedesktop.org/mailman/listinfo/dri-devel _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel