dri-devel.lists.freedesktop.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/2] drm/radeon: activate UVD clocks before sending the destroy msg
@ 2013-10-30 11:56 Christian König
  2013-10-30 11:56 ` [PATCH 2/2] drm/radeon: fix UVD destroy IB size Christian König
  2013-10-30 14:29 ` [PATCH 1/2] drm/radeon: activate UVD clocks before sending the destroy msg Alex Deucher
  0 siblings, 2 replies; 5+ messages in thread
From: Christian König @ 2013-10-30 11:56 UTC (permalink / raw)
  To: alexdeucher; +Cc: dri-devel

From: Christian König <christian.koenig@amd.com>

Make sure the UVD clocks are still active before sending
the destroy message, otherwise the hw might hang.

Signed-off-by: Christian König <christian.koenig@amd.com>
Cc: stable@vger.kernel.org
---
 drivers/gpu/drm/radeon/radeon_uvd.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/gpu/drm/radeon/radeon_uvd.c b/drivers/gpu/drm/radeon/radeon_uvd.c
index 308eff5..a56dfe4 100644
--- a/drivers/gpu/drm/radeon/radeon_uvd.c
+++ b/drivers/gpu/drm/radeon/radeon_uvd.c
@@ -240,6 +240,8 @@ void radeon_uvd_free_handles(struct radeon_device *rdev, struct drm_file *filp)
 		if (handle != 0 && rdev->uvd.filp[i] == filp) {
 			struct radeon_fence *fence;
 
+			radeon_uvd_note_usage(rdev);
+
 			r = radeon_uvd_get_destroy_msg(rdev,
 				R600_RING_TYPE_UVD_INDEX, handle, &fence);
 			if (r) {
-- 
1.8.1.2

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

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH 2/2] drm/radeon: fix UVD destroy IB size
  2013-10-30 11:56 [PATCH 1/2] drm/radeon: activate UVD clocks before sending the destroy msg Christian König
@ 2013-10-30 11:56 ` Christian König
  2013-10-30 14:29 ` [PATCH 1/2] drm/radeon: activate UVD clocks before sending the destroy msg Alex Deucher
  1 sibling, 0 replies; 5+ messages in thread
From: Christian König @ 2013-10-30 11:56 UTC (permalink / raw)
  To: alexdeucher; +Cc: dri-devel

From: Christian König <christian.koenig@amd.com>

The parameter is in bytes not dwords.

Signed-off-by: Christian König <christian.koenig@amd.com>
Cc: stable@vger.kernel.org
---
 drivers/gpu/drm/radeon/radeon_uvd.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/radeon/radeon_uvd.c b/drivers/gpu/drm/radeon/radeon_uvd.c
index a56dfe4..ab0a172 100644
--- a/drivers/gpu/drm/radeon/radeon_uvd.c
+++ b/drivers/gpu/drm/radeon/radeon_uvd.c
@@ -622,7 +622,7 @@ static int radeon_uvd_send_msg(struct radeon_device *rdev,
 	if (r) 
 		goto err;
 
-	r = radeon_ib_get(rdev, ring, &ib, NULL, 16);
+	r = radeon_ib_get(rdev, ring, &ib, NULL, 64);
 	if (r)
 		goto err;
 
-- 
1.8.1.2

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

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH 1/2] drm/radeon: activate UVD clocks before sending the destroy msg
  2013-10-30 11:56 [PATCH 1/2] drm/radeon: activate UVD clocks before sending the destroy msg Christian König
  2013-10-30 11:56 ` [PATCH 2/2] drm/radeon: fix UVD destroy IB size Christian König
@ 2013-10-30 14:29 ` Alex Deucher
  2013-11-11  8:54   ` Christian König
  1 sibling, 1 reply; 5+ messages in thread
From: Alex Deucher @ 2013-10-30 14:29 UTC (permalink / raw)
  To: Christian König; +Cc: Maling list - DRI developers

On Wed, Oct 30, 2013 at 7:56 AM, Christian König
<deathsimple@vodafone.de> wrote:
> From: Christian König <christian.koenig@amd.com>
>
> Make sure the UVD clocks are still active before sending
> the destroy message, otherwise the hw might hang.
>
> Signed-off-by: Christian König <christian.koenig@amd.com>
> Cc: stable@vger.kernel.org

Both applied!

Alex

> ---
>  drivers/gpu/drm/radeon/radeon_uvd.c | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/drivers/gpu/drm/radeon/radeon_uvd.c b/drivers/gpu/drm/radeon/radeon_uvd.c
> index 308eff5..a56dfe4 100644
> --- a/drivers/gpu/drm/radeon/radeon_uvd.c
> +++ b/drivers/gpu/drm/radeon/radeon_uvd.c
> @@ -240,6 +240,8 @@ void radeon_uvd_free_handles(struct radeon_device *rdev, struct drm_file *filp)
>                 if (handle != 0 && rdev->uvd.filp[i] == filp) {
>                         struct radeon_fence *fence;
>
> +                       radeon_uvd_note_usage(rdev);
> +
>                         r = radeon_uvd_get_destroy_msg(rdev,
>                                 R600_RING_TYPE_UVD_INDEX, handle, &fence);
>                         if (r) {
> --
> 1.8.1.2
>

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 1/2] drm/radeon: activate UVD clocks before sending the destroy msg
  2013-10-30 14:29 ` [PATCH 1/2] drm/radeon: activate UVD clocks before sending the destroy msg Alex Deucher
@ 2013-11-11  8:54   ` Christian König
  2013-11-11 13:26     ` Alex Deucher
  0 siblings, 1 reply; 5+ messages in thread
From: Christian König @ 2013-11-11  8:54 UTC (permalink / raw)
  To: Alex Deucher; +Cc: Maling list - DRI developers

Am 30.10.2013 15:29, schrieb Alex Deucher:
> On Wed, Oct 30, 2013 at 7:56 AM, Christian König
> <deathsimple@vodafone.de> wrote:
>> From: Christian König <christian.koenig@amd.com>
>>
>> Make sure the UVD clocks are still active before sending
>> the destroy message, otherwise the hw might hang.
>>
>> Signed-off-by: Christian König <christian.koenig@amd.com>
>> Cc: stable@vger.kernel.org
> Both applied!

On which branch? Those two where intended for drm-fixes-3.12, but they 
didn't showed up in 3.12.0.

Could you apply them to drm-fixes-3.12 as well? They prevent hw lockups 
in case of crashed userspace applications and should also go into older 
stable kernels.

Christian.

> Alex
>
>> ---
>>   drivers/gpu/drm/radeon/radeon_uvd.c | 2 ++
>>   1 file changed, 2 insertions(+)
>>
>> diff --git a/drivers/gpu/drm/radeon/radeon_uvd.c b/drivers/gpu/drm/radeon/radeon_uvd.c
>> index 308eff5..a56dfe4 100644
>> --- a/drivers/gpu/drm/radeon/radeon_uvd.c
>> +++ b/drivers/gpu/drm/radeon/radeon_uvd.c
>> @@ -240,6 +240,8 @@ void radeon_uvd_free_handles(struct radeon_device *rdev, struct drm_file *filp)
>>                  if (handle != 0 && rdev->uvd.filp[i] == filp) {
>>                          struct radeon_fence *fence;
>>
>> +                       radeon_uvd_note_usage(rdev);
>> +
>>                          r = radeon_uvd_get_destroy_msg(rdev,
>>                                  R600_RING_TYPE_UVD_INDEX, handle, &fence);
>>                          if (r) {
>> --
>> 1.8.1.2
>>

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 1/2] drm/radeon: activate UVD clocks before sending the destroy msg
  2013-11-11  8:54   ` Christian König
@ 2013-11-11 13:26     ` Alex Deucher
  0 siblings, 0 replies; 5+ messages in thread
From: Alex Deucher @ 2013-11-11 13:26 UTC (permalink / raw)
  To: Christian König; +Cc: Maling list - DRI developers

On Mon, Nov 11, 2013 at 3:54 AM, Christian König
<deathsimple@vodafone.de> wrote:
> Am 30.10.2013 15:29, schrieb Alex Deucher:
>>
>> On Wed, Oct 30, 2013 at 7:56 AM, Christian König
>> <deathsimple@vodafone.de> wrote:
>>>
>>> From: Christian König <christian.koenig@amd.com>
>>>
>>> Make sure the UVD clocks are still active before sending
>>> the destroy message, otherwise the hw might hang.
>>>
>>> Signed-off-by: Christian König <christian.koenig@amd.com>
>>> Cc: stable@vger.kernel.org
>>
>> Both applied!
>
>
> On which branch? Those two where intended for drm-fixes-3.12, but they
> didn't showed up in 3.12.0.
>
> Could you apply them to drm-fixes-3.12 as well? They prevent hw lockups in
> case of crashed userspace applications and should also go into older stable
> kernels.

It was too late for 3.12.  They'll be in 3.13 and I cc'ed stable:
http://cgit.freedesktop.org/~airlied/linux/commit/?h=drm-next&id=c154a76311293f9671439286834aa325b7ef59fe
http://cgit.freedesktop.org/~airlied/linux/commit/?h=drm-next&id=727ddc84a1373bf06b2fa261f44e38fb0faf5340

I can push to my fdo drm-fixes-3.12 branch too if you want.

Alex

>
> Christian.
>
>> Alex
>>
>>> ---
>>>   drivers/gpu/drm/radeon/radeon_uvd.c | 2 ++
>>>   1 file changed, 2 insertions(+)
>>>
>>> diff --git a/drivers/gpu/drm/radeon/radeon_uvd.c
>>> b/drivers/gpu/drm/radeon/radeon_uvd.c
>>> index 308eff5..a56dfe4 100644
>>> --- a/drivers/gpu/drm/radeon/radeon_uvd.c
>>> +++ b/drivers/gpu/drm/radeon/radeon_uvd.c
>>> @@ -240,6 +240,8 @@ void radeon_uvd_free_handles(struct radeon_device
>>> *rdev, struct drm_file *filp)
>>>                  if (handle != 0 && rdev->uvd.filp[i] == filp) {
>>>                          struct radeon_fence *fence;
>>>
>>> +                       radeon_uvd_note_usage(rdev);
>>> +
>>>                          r = radeon_uvd_get_destroy_msg(rdev,
>>>                                  R600_RING_TYPE_UVD_INDEX, handle,
>>> &fence);
>>>                          if (r) {
>>> --
>>> 1.8.1.2
>>>
>

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2013-11-11 13:26 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-10-30 11:56 [PATCH 1/2] drm/radeon: activate UVD clocks before sending the destroy msg Christian König
2013-10-30 11:56 ` [PATCH 2/2] drm/radeon: fix UVD destroy IB size Christian König
2013-10-30 14:29 ` [PATCH 1/2] drm/radeon: activate UVD clocks before sending the destroy msg Alex Deucher
2013-11-11  8:54   ` Christian König
2013-11-11 13:26     ` Alex Deucher

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).