Am 27.04.2017 um 12:58 schrieb Julien Isorce: > But always print an error. > > Encountered a dozen of exact same backtraces when mesa's > pb_cache_release_all_buffers is called after that a gpu reset failed. > > An other approach would be to check rdev->vm_manager.enabled instead > of rdev->accel_working in the other function radeon_gem_object_close. > But it will only work if the vm_manager succeeded to be re-enabled > after a gpu reset. > > bug: https://bugs.freedesktop.org/show_bug.cgi?id=96271 > > Signed-off-by: Julien Isorce <jisorce at oblong.com> > --- > drivers/gpu/drm/radeon/radeon_object.c | 8 +++++++- > 1 file changed, 7 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/radeon/radeon_object.c b/drivers/gpu/drm/radeon/radeon_object.c > index bec2ec0..76cc039 100644 > --- a/drivers/gpu/drm/radeon/radeon_object.c > +++ b/drivers/gpu/drm/radeon/radeon_object.c > @@ -81,7 +81,13 @@ static void radeon_ttm_bo_destroy(struct ttm_buffer_object *tbo) > list_del_init(&bo->list); > mutex_unlock(&bo->rdev->gem.mutex); > radeon_bo_clear_surface_reg(bo); > - WARN_ON(!list_empty(&bo->va)); > + > + if (!list_empty(&bo->va)) { > + DRM_ERROR("Virtual address list not empty, accel: %d\n", > + bo->rdev->accel_working); > + WARN_ON_ONCE(1); > + } > + The message is superfluous if we initially started up the GPU and found later that we can't get GFX working again after a GPU reset it is pretty much impossible to continue. I would just change the "WARN_ON(!list_empty(&bo->va));" to a "WARN_ON_ONCE(!list_empty(&bo->va));". Regards, Christian. > drm_gem_object_release(&bo->gem_base); > kfree(bo); > }