All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Christian König" <christian.koenig@amd.com>
To: Emil Velikov <emil.l.velikov@gmail.com>, dri-devel@lists.freedesktop.org
Cc: Alex Deucher <alexander.deucher@amd.com>
Subject: Re: [PATCH 12/36] drm/amd: remove _unlocked suffix in drm_object_put_unlocked
Date: Fri, 8 May 2020 11:23:36 +0200	[thread overview]
Message-ID: <401b83ce-73bf-952d-e98f-91b323e3adcb@amd.com> (raw)
In-Reply-To: <20200507150822.114464-13-emil.l.velikov@gmail.com>

Am 07.05.20 um 17:07 schrieb Emil Velikov:
> From: Emil Velikov <emil.velikov@collabora.com>
>
> Spelling out _unlocked for each and every driver is a annoying.
> Especially if we consider how many drivers, do not know (or need to)
> about the horror stories involving struct_mutex.
>
> Just drop the suffix. It makes the API cleaner.

In general sounds like a good idea to me, but I don't see the full 
patchset in my mailbox.

With the current code this change would probably trigger the 
"WARN_ON(!mutex_is_locked(&obj->dev->struct_mutex));" in 
drm_gem_object_put().

Christian.

>
> Done via the following script:
>
> __from=drm_gem_object_put_unlocked
> __to=drm_gem_object_put
> for __file in $(git grep --name-only $__from); do
>    sed -i  "s/$__from/$__to/g" $__file;
> done
>
> Cc: Alex Deucher <alexander.deucher@amd.com>
> Cc: "Christian König" <christian.koenig@amd.com>
> Cc: "David (ChunMing) Zhou" <David1.Zhou@amd.com>
> Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_bo_list.c |  2 +-
>   drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c      |  2 +-
>   drivers/gpu/drm/amd/amdgpu/amdgpu_display.c |  4 ++--
>   drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.c |  2 +-
>   drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c      |  4 ++--
>   drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c     | 20 ++++++++++----------
>   drivers/gpu/drm/amd/amdgpu/dce_v10_0.c      |  6 +++---
>   drivers/gpu/drm/amd/amdgpu/dce_v11_0.c      |  6 +++---
>   drivers/gpu/drm/amd/amdgpu/dce_v6_0.c       |  6 +++---
>   drivers/gpu/drm/amd/amdgpu/dce_v8_0.c       |  6 +++---
>   10 files changed, 29 insertions(+), 29 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_bo_list.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_bo_list.c
> index 85b0515c0fdc..4053597b3af2 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_bo_list.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_bo_list.c
> @@ -102,7 +102,7 @@ int amdgpu_bo_list_create(struct amdgpu_device *adev, struct drm_file *filp,
>   		}
>   
>   		bo = amdgpu_bo_ref(gem_to_amdgpu_bo(gobj));
> -		drm_gem_object_put_unlocked(gobj);
> +		drm_gem_object_put(gobj);
>   
>   		usermm = amdgpu_ttm_tt_get_usermm(bo->tbo.ttm);
>   		if (usermm) {
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c
> index af91627b19b0..76ea245f2106 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c
> @@ -57,7 +57,7 @@ static int amdgpu_cs_user_fence_chunk(struct amdgpu_cs_parser *p,
>   	/* One for TTM and one for the CS job */
>   	p->uf_entry.tv.num_shared = 2;
>   
> -	drm_gem_object_put_unlocked(gobj);
> +	drm_gem_object_put(gobj);
>   
>   	size = amdgpu_bo_size(bo);
>   	if (size != PAGE_SIZE || (data->offset + 8) > size) {
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c
> index 84cee27cd7ef..de9b62e2800a 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c
> @@ -575,14 +575,14 @@ amdgpu_display_user_framebuffer_create(struct drm_device *dev,
>   
>   	amdgpu_fb = kzalloc(sizeof(*amdgpu_fb), GFP_KERNEL);
>   	if (amdgpu_fb == NULL) {
> -		drm_gem_object_put_unlocked(obj);
> +		drm_gem_object_put(obj);
>   		return ERR_PTR(-ENOMEM);
>   	}
>   
>   	ret = amdgpu_display_framebuffer_init(dev, amdgpu_fb, mode_cmd, obj);
>   	if (ret) {
>   		kfree(amdgpu_fb);
> -		drm_gem_object_put_unlocked(obj);
> +		drm_gem_object_put(obj);
>   		return ERR_PTR(ret);
>   	}
>   
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.c
> index 652c57a3b847..43d8ed7dbd00 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.c
> @@ -587,7 +587,7 @@ struct drm_gem_object *amdgpu_gem_prime_import(struct drm_device *dev,
>   	attach = dma_buf_dynamic_attach(dma_buf, dev->dev,
>   					&amdgpu_dma_buf_attach_ops, obj);
>   	if (IS_ERR(attach)) {
> -		drm_gem_object_put_unlocked(obj);
> +		drm_gem_object_put(obj);
>   		return ERR_CAST(attach);
>   	}
>   
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c
> index 9ae7b61f696a..ca5dde4ec47d 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c
> @@ -114,7 +114,7 @@ static void amdgpufb_destroy_pinned_object(struct drm_gem_object *gobj)
>   		amdgpu_bo_unpin(abo);
>   		amdgpu_bo_unreserve(abo);
>   	}
> -	drm_gem_object_put_unlocked(gobj);
> +	drm_gem_object_put(gobj);
>   }
>   
>   static int amdgpufb_create_pinned_object(struct amdgpu_fbdev *rfbdev,
> @@ -279,7 +279,7 @@ static int amdgpufb_create(struct drm_fb_helper *helper,
>   
>   	}
>   	if (fb && ret) {
> -		drm_gem_object_put_unlocked(gobj);
> +		drm_gem_object_put(gobj);
>   		drm_framebuffer_unregister_private(fb);
>   		drm_framebuffer_cleanup(fb);
>   		kfree(fb);
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c
> index e42608115c99..8c0597f306ec 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c
> @@ -106,7 +106,7 @@ void amdgpu_gem_force_release(struct amdgpu_device *adev)
>   		spin_lock(&file->table_lock);
>   		idr_for_each_entry(&file->object_idr, gobj, handle) {
>   			WARN_ONCE(1, "And also active allocations!\n");
> -			drm_gem_object_put_unlocked(gobj);
> +			drm_gem_object_put(gobj);
>   		}
>   		idr_destroy(&file->object_idr);
>   		spin_unlock(&file->table_lock);
> @@ -272,7 +272,7 @@ int amdgpu_gem_create_ioctl(struct drm_device *dev, void *data,
>   
>   	r = drm_gem_handle_create(filp, gobj, &handle);
>   	/* drop reference from allocate - handle holds it now */
> -	drm_gem_object_put_unlocked(gobj);
> +	drm_gem_object_put(gobj);
>   	if (r)
>   		return r;
>   
> @@ -356,7 +356,7 @@ int amdgpu_gem_userptr_ioctl(struct drm_device *dev, void *data,
>   		amdgpu_ttm_tt_get_user_pages_done(bo->tbo.ttm);
>   
>   release_object:
> -	drm_gem_object_put_unlocked(gobj);
> +	drm_gem_object_put(gobj);
>   
>   	return r;
>   }
> @@ -375,11 +375,11 @@ int amdgpu_mode_dumb_mmap(struct drm_file *filp,
>   	robj = gem_to_amdgpu_bo(gobj);
>   	if (amdgpu_ttm_tt_get_usermm(robj->tbo.ttm) ||
>   	    (robj->flags & AMDGPU_GEM_CREATE_NO_CPU_ACCESS)) {
> -		drm_gem_object_put_unlocked(gobj);
> +		drm_gem_object_put(gobj);
>   		return -EPERM;
>   	}
>   	*offset_p = amdgpu_bo_mmap_offset(robj);
> -	drm_gem_object_put_unlocked(gobj);
> +	drm_gem_object_put(gobj);
>   	return 0;
>   }
>   
> @@ -449,7 +449,7 @@ int amdgpu_gem_wait_idle_ioctl(struct drm_device *dev, void *data,
>   	} else
>   		r = ret;
>   
> -	drm_gem_object_put_unlocked(gobj);
> +	drm_gem_object_put(gobj);
>   	return r;
>   }
>   
> @@ -492,7 +492,7 @@ int amdgpu_gem_metadata_ioctl(struct drm_device *dev, void *data,
>   unreserve:
>   	amdgpu_bo_unreserve(robj);
>   out:
> -	drm_gem_object_put_unlocked(gobj);
> +	drm_gem_object_put(gobj);
>   	return r;
>   }
>   
> @@ -691,7 +691,7 @@ int amdgpu_gem_va_ioctl(struct drm_device *dev, void *data,
>   	ttm_eu_backoff_reservation(&ticket, &list);
>   
>   error_unref:
> -	drm_gem_object_put_unlocked(gobj);
> +	drm_gem_object_put(gobj);
>   	return r;
>   }
>   
> @@ -767,7 +767,7 @@ int amdgpu_gem_op_ioctl(struct drm_device *dev, void *data,
>   	}
>   
>   out:
> -	drm_gem_object_put_unlocked(gobj);
> +	drm_gem_object_put(gobj);
>   	return r;
>   }
>   
> @@ -804,7 +804,7 @@ int amdgpu_mode_dumb_create(struct drm_file *file_priv,
>   
>   	r = drm_gem_handle_create(file_priv, gobj, &handle);
>   	/* drop reference from allocate - handle holds it now */
> -	drm_gem_object_put_unlocked(gobj);
> +	drm_gem_object_put(gobj);
>   	if (r) {
>   		return r;
>   	}
> diff --git a/drivers/gpu/drm/amd/amdgpu/dce_v10_0.c b/drivers/gpu/drm/amd/amdgpu/dce_v10_0.c
> index 2512e7ebfedf..47a6e3d0aa96 100644
> --- a/drivers/gpu/drm/amd/amdgpu/dce_v10_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/dce_v10_0.c
> @@ -2404,7 +2404,7 @@ static int dce_v10_0_crtc_cursor_set2(struct drm_crtc *crtc,
>   	aobj = gem_to_amdgpu_bo(obj);
>   	ret = amdgpu_bo_reserve(aobj, false);
>   	if (ret != 0) {
> -		drm_gem_object_put_unlocked(obj);
> +		drm_gem_object_put(obj);
>   		return ret;
>   	}
>   
> @@ -2412,7 +2412,7 @@ static int dce_v10_0_crtc_cursor_set2(struct drm_crtc *crtc,
>   	amdgpu_bo_unreserve(aobj);
>   	if (ret) {
>   		DRM_ERROR("Failed to pin new cursor BO (%d)\n", ret);
> -		drm_gem_object_put_unlocked(obj);
> +		drm_gem_object_put(obj);
>   		return ret;
>   	}
>   	amdgpu_crtc->cursor_addr = amdgpu_bo_gpu_offset(aobj);
> @@ -2447,7 +2447,7 @@ static int dce_v10_0_crtc_cursor_set2(struct drm_crtc *crtc,
>   			amdgpu_bo_unpin(aobj);
>   			amdgpu_bo_unreserve(aobj);
>   		}
> -		drm_gem_object_put_unlocked(amdgpu_crtc->cursor_bo);
> +		drm_gem_object_put(amdgpu_crtc->cursor_bo);
>   	}
>   
>   	amdgpu_crtc->cursor_bo = obj;
> diff --git a/drivers/gpu/drm/amd/amdgpu/dce_v11_0.c b/drivers/gpu/drm/amd/amdgpu/dce_v11_0.c
> index 0dde22db9848..7d16fb5a9482 100644
> --- a/drivers/gpu/drm/amd/amdgpu/dce_v11_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/dce_v11_0.c
> @@ -2483,7 +2483,7 @@ static int dce_v11_0_crtc_cursor_set2(struct drm_crtc *crtc,
>   	aobj = gem_to_amdgpu_bo(obj);
>   	ret = amdgpu_bo_reserve(aobj, false);
>   	if (ret != 0) {
> -		drm_gem_object_put_unlocked(obj);
> +		drm_gem_object_put(obj);
>   		return ret;
>   	}
>   
> @@ -2491,7 +2491,7 @@ static int dce_v11_0_crtc_cursor_set2(struct drm_crtc *crtc,
>   	amdgpu_bo_unreserve(aobj);
>   	if (ret) {
>   		DRM_ERROR("Failed to pin new cursor BO (%d)\n", ret);
> -		drm_gem_object_put_unlocked(obj);
> +		drm_gem_object_put(obj);
>   		return ret;
>   	}
>   	amdgpu_crtc->cursor_addr = amdgpu_bo_gpu_offset(aobj);
> @@ -2526,7 +2526,7 @@ static int dce_v11_0_crtc_cursor_set2(struct drm_crtc *crtc,
>   			amdgpu_bo_unpin(aobj);
>   			amdgpu_bo_unreserve(aobj);
>   		}
> -		drm_gem_object_put_unlocked(amdgpu_crtc->cursor_bo);
> +		drm_gem_object_put(amdgpu_crtc->cursor_bo);
>   	}
>   
>   	amdgpu_crtc->cursor_bo = obj;
> diff --git a/drivers/gpu/drm/amd/amdgpu/dce_v6_0.c b/drivers/gpu/drm/amd/amdgpu/dce_v6_0.c
> index 84219534bd38..1ab33aa3980e 100644
> --- a/drivers/gpu/drm/amd/amdgpu/dce_v6_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/dce_v6_0.c
> @@ -2299,7 +2299,7 @@ static int dce_v6_0_crtc_cursor_set2(struct drm_crtc *crtc,
>   	aobj = gem_to_amdgpu_bo(obj);
>   	ret = amdgpu_bo_reserve(aobj, false);
>   	if (ret != 0) {
> -		drm_gem_object_put_unlocked(obj);
> +		drm_gem_object_put(obj);
>   		return ret;
>   	}
>   
> @@ -2307,7 +2307,7 @@ static int dce_v6_0_crtc_cursor_set2(struct drm_crtc *crtc,
>   	amdgpu_bo_unreserve(aobj);
>   	if (ret) {
>   		DRM_ERROR("Failed to pin new cursor BO (%d)\n", ret);
> -		drm_gem_object_put_unlocked(obj);
> +		drm_gem_object_put(obj);
>   		return ret;
>   	}
>   	amdgpu_crtc->cursor_addr = amdgpu_bo_gpu_offset(aobj);
> @@ -2342,7 +2342,7 @@ static int dce_v6_0_crtc_cursor_set2(struct drm_crtc *crtc,
>   			amdgpu_bo_unpin(aobj);
>   			amdgpu_bo_unreserve(aobj);
>   		}
> -		drm_gem_object_put_unlocked(amdgpu_crtc->cursor_bo);
> +		drm_gem_object_put(amdgpu_crtc->cursor_bo);
>   	}
>   
>   	amdgpu_crtc->cursor_bo = obj;
> diff --git a/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c b/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c
> index 3a640702d7d1..8a8f1aa49212 100644
> --- a/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c
> @@ -2305,7 +2305,7 @@ static int dce_v8_0_crtc_cursor_set2(struct drm_crtc *crtc,
>   	aobj = gem_to_amdgpu_bo(obj);
>   	ret = amdgpu_bo_reserve(aobj, false);
>   	if (ret != 0) {
> -		drm_gem_object_put_unlocked(obj);
> +		drm_gem_object_put(obj);
>   		return ret;
>   	}
>   
> @@ -2313,7 +2313,7 @@ static int dce_v8_0_crtc_cursor_set2(struct drm_crtc *crtc,
>   	amdgpu_bo_unreserve(aobj);
>   	if (ret) {
>   		DRM_ERROR("Failed to pin new cursor BO (%d)\n", ret);
> -		drm_gem_object_put_unlocked(obj);
> +		drm_gem_object_put(obj);
>   		return ret;
>   	}
>   	amdgpu_crtc->cursor_addr = amdgpu_bo_gpu_offset(aobj);
> @@ -2348,7 +2348,7 @@ static int dce_v8_0_crtc_cursor_set2(struct drm_crtc *crtc,
>   			amdgpu_bo_unpin(aobj);
>   			amdgpu_bo_unreserve(aobj);
>   		}
> -		drm_gem_object_put_unlocked(amdgpu_crtc->cursor_bo);
> +		drm_gem_object_put(amdgpu_crtc->cursor_bo);
>   	}
>   
>   	amdgpu_crtc->cursor_bo = obj;

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

  reply	other threads:[~2020-05-08  9:23 UTC|newest]

Thread overview: 83+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-07 15:07 [PATCH 00/36] drm: Fareless gem_free_object Emil Velikov
2020-05-07 15:07 ` [PATCH 01/36] drm: remove unused drm_gem.h include Emil Velikov
2020-05-07 15:30   ` Thomas Zimmermann
2020-05-07 15:07 ` [PATCH 02/36] drm/gem: use _unlocked reference in drm_gem_objects_lookup docs Emil Velikov
2020-05-07 17:58   ` Sam Ravnborg
2020-05-07 15:07 ` [PATCH 03/36] drm/todo: mention i915 in the struct_mutex section Emil Velikov
2020-05-08  6:26   ` Daniel Vetter
2020-05-08 14:45   ` Ruhl, Michael J
2020-05-07 15:07 ` [PATCH 04/36] drm/doc: drop struct_mutex references Emil Velikov
2020-05-07 18:01   ` Sam Ravnborg
2020-05-08 10:01     ` Emil Velikov
2020-05-08 11:08       ` Sam Ravnborg
2020-05-08  6:27   ` Daniel Vetter
2020-05-08 10:07     ` Emil Velikov
2020-05-08 10:45       ` Daniel Vetter
2020-05-07 15:07 ` [PATCH 05/36] drm/doc: drop struct_mutex refernce for drm_gem_object_free Emil Velikov
2020-05-08  6:31   ` Daniel Vetter
2020-05-07 15:07 ` [PATCH 06/36] drm/amdgpu: use the unlocked drm_gem_object_put Emil Velikov
2020-05-07 15:07   ` Emil Velikov
2020-05-07 18:03   ` Sam Ravnborg
2020-05-07 18:03     ` Sam Ravnborg
2020-05-08  8:16     ` Christian König
2020-05-08  8:16       ` Christian König
2020-05-08  9:55       ` Emil Velikov
2020-05-08  9:55         ` Emil Velikov
2020-05-08 11:09         ` Sam Ravnborg
2020-05-08 11:09           ` Sam Ravnborg
2020-05-08  8:13   ` Christian König
2020-05-08  8:13     ` Christian König
2020-05-07 15:07 ` [PATCH 07/36] drm/gma500: Use lockless gem BO free callback Emil Velikov
2020-05-07 17:16   ` Thomas Zimmermann
2020-05-07 15:07 ` [PATCH 08/36] drm: remove drm_driver::gem_free_object Emil Velikov
2020-05-07 17:20   ` Thomas Zimmermann
2020-05-07 15:07 ` [PATCH 09/36] drm/gem: fold drm_gem_object_put_unlocked and __drm_gem_object_put() Emil Velikov
2020-05-08  6:43   ` Daniel Vetter
2020-05-08 10:52     ` Emil Velikov
2020-05-07 15:07 ` [PATCH 10/36] drm/gem: add _locked suffix to drm_object_put Emil Velikov
2020-05-07 15:07   ` Emil Velikov
2020-05-08  6:40   ` Daniel Vetter
2020-05-08  6:40     ` Daniel Vetter
2020-05-08 11:00     ` Emil Velikov
2020-05-08 11:00       ` Emil Velikov
2020-05-08 11:25       ` Daniel Vetter
2020-05-08 11:25         ` Daniel Vetter
2020-05-07 15:07 ` [PATCH 11/36] drm/gem: add drm_object_put helper Emil Velikov
2020-05-08  6:33   ` Jani Nikula
2020-05-08 10:16     ` Emil Velikov
2020-05-07 15:07 ` [PATCH 12/36] drm/amd: remove _unlocked suffix in drm_object_put_unlocked Emil Velikov
2020-05-08  9:23   ` Christian König [this message]
2020-05-08 10:45     ` Emil Velikov
2020-05-07 15:07 ` [PATCH 13/36] drm/arm: " Emil Velikov
2020-05-14 15:23   ` Liviu Dudau
2020-05-07 15:08 ` [PATCH 14/36] drm/armada: " Emil Velikov
2020-05-07 15:08 ` [PATCH 15/36] drm/etnaviv: " Emil Velikov
2020-05-07 15:08 ` [PATCH 16/36] drm/exynos: " Emil Velikov
2020-05-07 15:08 ` [PATCH 17/36] drm/gma500: " Emil Velikov
2020-05-07 15:08 ` [PATCH 18/36] drm/i915: " Emil Velikov
2020-05-07 15:08 ` [PATCH 19/36] drm/lima: " Emil Velikov
2020-05-07 15:08 ` [PATCH 20/36] drm/mediatek: " Emil Velikov
2020-05-09 13:45   ` Chun-Kuang Hu
2020-05-07 15:08 ` [PATCH 21/36] drm/mgag200: " Emil Velikov
2020-05-08  6:30   ` Thomas Zimmermann
2020-05-07 15:08 ` [PATCH 22/36] drm/msm: " Emil Velikov
2020-05-07 15:08 ` [PATCH 23/36] drm/nouveau: " Emil Velikov
2020-05-07 15:08 ` [PATCH 24/36] drm/omapdrm: " Emil Velikov
2020-05-07 15:08 ` [PATCH 25/36] drm/panfrost: " Emil Velikov
2020-05-07 15:08 ` [PATCH 26/36] drm/qxl: " Emil Velikov
2020-05-07 15:08 ` [PATCH 27/36] drm/radeon: " Emil Velikov
2020-05-07 15:08 ` [PATCH 28/36] drm/rockchip: " Emil Velikov
2020-05-07 15:08 ` [PATCH 29/36] drm/tegra: " Emil Velikov
2020-05-07 15:08 ` [PATCH 30/36] drm/v3d: " Emil Velikov
2020-05-07 15:08 ` [PATCH 31/36] drm/vc4: " Emil Velikov
2020-05-07 15:08 ` [PATCH 32/36] drm/vgem: " Emil Velikov
2020-05-07 15:08 ` [PATCH 33/36] drm/virtio: " Emil Velikov
2020-05-07 15:08 ` [PATCH 34/36] drm/vkms: " Emil Velikov
2020-05-07 15:08 ` [PATCH 35/36] drm/xen: " Emil Velikov
2020-05-07 15:08 ` [PATCH 36/36] drm/gem: " Emil Velikov
2020-05-07 18:14   ` Sam Ravnborg
2020-05-08 10:15     ` Emil Velikov
2020-05-08 11:02       ` Sam Ravnborg
2020-05-08  6:38   ` Thomas Zimmermann
2020-05-07 18:17 ` [PATCH 00/36] drm: Fareless gem_free_object Sam Ravnborg
2020-05-08 10:35   ` Emil Velikov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=401b83ce-73bf-952d-e98f-91b323e3adcb@amd.com \
    --to=christian.koenig@amd.com \
    --cc=alexander.deucher@amd.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=emil.l.velikov@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.