[Intel-gfx] [PATCH 28/65] drm/ttm: WARN_ON non-empty lru when disabling a resource manager
Christian König
christian.koenig at amd.com
Fri Oct 23 14:54:18 UTC 2020
Am 23.10.20 um 14:21 schrieb Daniel Vetter:
> ttm_resource_manager->use_type is only used for runtime changes by
> vmwgfx. I think ideally we'd push this functionality into drivers -
> ttm itself does not provide any locking to guarantee this is safe, so
> the only way this can work at runtime is if the driver does provide
> additional guarantees. vwmgfx does that through the
> vmw_private->reservation_sem. Therefore supporting this feature in
> shared code feels a bit misplaced.
>
> As a first step add a WARN_ON to make sure the resource manager is
> empty. This is just to make sure I actually understand correctly what
> vmwgfx is doing, and to make sure an eventual subsequent refactor
> doesn't break anything.
>
> This check should also be useful for other drivers, to make sure they
> haven't leaked anything.
>
> Signed-off-by: Daniel Vetter <daniel.vetter at intel.com>
> Cc: Christian Koenig <christian.koenig at amd.com>
> Cc: Huang Rui <ray.huang at amd.com>
I'm pretty sure that this will trigger for vmwgfx. But that's what it is
supposed to do, isn't it?
Reviewed-by: Christian König <christian.koenig at amd.com>
> ---
> include/drm/ttm/ttm_resource.h | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/include/drm/ttm/ttm_resource.h b/include/drm/ttm/ttm_resource.h
> index f48a70d39ac5..789ec477b607 100644
> --- a/include/drm/ttm/ttm_resource.h
> +++ b/include/drm/ttm/ttm_resource.h
> @@ -191,6 +191,10 @@ struct ttm_resource {
> static inline void
> ttm_resource_manager_set_used(struct ttm_resource_manager *man, bool used)
> {
> + int i;
> +
> + for (i = 0; i < TTM_MAX_BO_PRIORITY; i++)
> + WARN_ON(!list_empty(&man->lru[i]));
> man->use_type = used;
> }
>
More information about the Intel-gfx
mailing list