This patchset replaces ttm_bo_{reference/unref} with ttm_bo_{get,put}, which follow Linux' conventions for ref-counting functions.
Thomas Zimmermann (2): drm/virtio: Replace ttm_bo_reference with ttm_bo_get drm/virtio: Replace ttm_bo_unref with ttm_bo_put
drivers/gpu/drm/virtio/virtgpu_drv.h | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-)
-- 2.18.0
The function ttm_bo_get acquires a reference on a TTM buffer object. The function's name is more aligned to the Linux kernel convention of naming ref-counting function _get and _put.
Signed-off-by: Thomas Zimmermann tzimmermann@suse.de --- drivers/gpu/drm/virtio/virtgpu_drv.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/virtio/virtgpu_drv.h b/drivers/gpu/drm/virtio/virtgpu_drv.h index 65605e207bbe..59182975ce16 100644 --- a/drivers/gpu/drm/virtio/virtgpu_drv.h +++ b/drivers/gpu/drm/virtio/virtgpu_drv.h @@ -372,7 +372,7 @@ int virtgpu_gem_prime_mmap(struct drm_gem_object *obj, static inline struct virtio_gpu_object* virtio_gpu_object_ref(struct virtio_gpu_object *bo) { - ttm_bo_reference(&bo->tbo); + ttm_bo_get(&bo->tbo); return bo; }
The function ttm_bo_put releases a reference to a TTM buffer object. The function's name is more aligned to the Linux kernel convention of naming ref-counting function _get and _put.
A call to ttm_bo_unref takes the address of the TTM BO object's pointer and clears the pointer's value to NULL. This is not necessary in most cases and sometimes even worked around by the calling code. A call to ttm_bo_put only releases the reference without clearing the pointer.
The current behaviour of cleaning the pointer is kept in the calling code, but should be removed if not required in a later patch.
Signed-off-by: Thomas Zimmermann tzimmermann@suse.de --- drivers/gpu/drm/virtio/virtgpu_drv.h | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/gpu/drm/virtio/virtgpu_drv.h b/drivers/gpu/drm/virtio/virtgpu_drv.h index 59182975ce16..61767f9589f4 100644 --- a/drivers/gpu/drm/virtio/virtgpu_drv.h +++ b/drivers/gpu/drm/virtio/virtgpu_drv.h @@ -383,9 +383,8 @@ static inline void virtio_gpu_object_unref(struct virtio_gpu_object **bo) if ((*bo) == NULL) return; tbo = &((*bo)->tbo); - ttm_bo_unref(&tbo); - if (tbo == NULL) - *bo = NULL; + ttm_bo_put(tbo); + *bo = NULL; }
static inline u64 virtio_gpu_object_mmap_offset(struct virtio_gpu_object *bo)
dri-devel@lists.freedesktop.org