[PATCH] drm/ttm: cleanup the resource of ghost objects after locking them

Christian König ckoenig.leichtzumerken at gmail.com
Thu Sep 8 07:51:23 UTC 2022


Am 08.09.22 um 09:46 schrieb Matthew Auld:
> On Wed, 7 Sept 2022 at 11:26, Matthew Auld
> <matthew.william.auld at gmail.com> wrote:
>> On Wed, 7 Sept 2022 at 11:00, Christian König
>> <ckoenig.leichtzumerken at gmail.com> wrote:
>>> Otherwise lockdep will complain about cleaning up the bulk_move.
>>>
>>> Not even compile tested.
>>>
>>> Signed-off-by: Christian König <christian.koenig at amd.com>
>> Looks reasonable to me,
>> Reviewed-by: Matthew Auld <matthew.auld at intel.com>
> Christian, are you going to go ahead and push this one?

Pushed. Thanks for the reminder, just forgot to do that yesterday.

Christian.

>
>>> ---
>>>   drivers/gpu/drm/ttm/ttm_bo_util.c | 10 +++++-----
>>>   1 file changed, 5 insertions(+), 5 deletions(-)
>>>
>>> diff --git a/drivers/gpu/drm/ttm/ttm_bo_util.c b/drivers/gpu/drm/ttm/ttm_bo_util.c
>>> index 57a27847206f..911141d16e95 100644
>>> --- a/drivers/gpu/drm/ttm/ttm_bo_util.c
>>> +++ b/drivers/gpu/drm/ttm/ttm_bo_util.c
>>> @@ -236,6 +236,11 @@ static int ttm_buffer_object_transfer(struct ttm_buffer_object *bo,
>>>          if (bo->type != ttm_bo_type_sg)
>>>                  fbo->base.base.resv = &fbo->base.base._resv;
>>>
>>> +       dma_resv_init(&fbo->base.base._resv);
>>> +       fbo->base.base.dev = NULL;
>>> +       ret = dma_resv_trylock(&fbo->base.base._resv);
>>> +       WARN_ON(!ret);
>>> +
>>>          if (fbo->base.resource) {
>>>                  ttm_resource_set_bo(fbo->base.resource, &fbo->base);
>>>                  bo->resource = NULL;
>>> @@ -244,11 +249,6 @@ static int ttm_buffer_object_transfer(struct ttm_buffer_object *bo,
>>>                  fbo->base.bulk_move = NULL;
>>>          }
>>>
>>> -       dma_resv_init(&fbo->base.base._resv);
>>> -       fbo->base.base.dev = NULL;
>>> -       ret = dma_resv_trylock(&fbo->base.base._resv);
>>> -       WARN_ON(!ret);
>>> -
>>>          ret = dma_resv_reserve_fences(&fbo->base.base._resv, 1);
>>>          if (ret) {
>>>                  kfree(fbo);
>>> --
>>> 2.25.1
>>>



More information about the dri-devel mailing list