Re: [Libva] [PATCH libva-intel-driver] gen8_mfd: free surface used by JPEG decode

2015-05-20 Thread Sean V Kelley

> On May 19, 2015, at 17:36, Eoff, Ullysses A  wrote:
> 
> On Tue, 2015-05-19 at 15:30 -0700, Sean V Kelley wrote:
>> Artie,
>> 
>>> On May 19, 2015, at 14:59, U. Artie Eoff  wrote:
>>> 
>>> This is a follow up to previous commit:
>>> 
>>> commit 8dda0650b55c467200c34ada127b5d9b54edea5c
>>> Author: Zhao Yakui 
>>> Date:   Tue May 5 17:56:38 2015 +0800
>>> 
>> 
>> 
>> Please resubmit your patch, with you as author as you are accounting for the 
>> GEN8 case
>> of inadvertent WA enabling.  GEN7 changes are already merged.
>> 
>> Thanks,
>> 
>> Sean
>> 
> 
> This patch already has me as author.  The above is just a reference in
> the "commit message" to the original GEN7 case.
> 


You’re right.  I was seeing the comment.  Applied to master, thanks.

Sean

>> 
>>>   Decode: Free the allocated internal surface used by JPEG to avoid memory 
>>> leak
>>> 
>>> For GEN8, this code path is normally disabled by default.
>>> However, one can enable this code path by defining JPEG_WA
>>> during compilation.  In that case, we would enable the
>>> same memory leak.  Thus, apply the same fix in gen8_mfd to
>>> fix it.
>>> 
>>> Signed-off-by: U. Artie Eoff 
>>> ---
>>> src/gen8_mfd.c | 12 
>>> 1 file changed, 12 insertions(+)
>>> 
>>> diff --git a/src/gen8_mfd.c b/src/gen8_mfd.c
>>> index 6618740..f045ca4 100644
>>> --- a/src/gen8_mfd.c
>>> +++ b/src/gen8_mfd.c
>>> @@ -3112,8 +3112,11 @@ out:
>>> static void
>>> gen8_mfd_context_destroy(void *hw_context)
>>> {
>>> +VADriverContextP ctx;
>>>struct gen7_mfd_context *gen7_mfd_context = (struct gen7_mfd_context 
>>> *)hw_context;
>>> 
>>> +ctx = (VADriverContextP)(gen7_mfd_context->driver_context);
>>> +
>>>dri_bo_unreference(gen7_mfd_context->post_deblocking_output.bo);
>>>gen7_mfd_context->post_deblocking_output.bo = NULL;
>>> 
>>> @@ -3140,6 +3143,13 @@ gen8_mfd_context_destroy(void *hw_context)
>>> 
>>>dri_bo_unreference(gen7_mfd_context->jpeg_wa_slice_data_bo);
>>> 
>>> +if (gen7_mfd_context->jpeg_wa_surface_id != VA_INVALID_SURFACE) {
>>> +i965_DestroySurfaces(ctx,
>>> + &gen7_mfd_context->jpeg_wa_surface_id,
>>> + 1);
>>> +gen7_mfd_context->jpeg_wa_surface_object = NULL;
>>> +}
>>> +
>>>intel_batchbuffer_free(gen7_mfd_context->base.batch);
>>>free(gen7_mfd_context);
>>> }
>>> @@ -3188,5 +3198,7 @@ gen8_dec_hw_context_init(VADriverContextP ctx, struct 
>>> object_config *obj_config)
>>>default:
>>>break;
>>>}
>>> +
>>> +gen7_mfd_context->driver_context = ctx;
>>>return (struct hw_context *)gen7_mfd_context;
>>> }
>>> -- 
>>> 1.9.3
>>> 
>>> ___
>>> Libva mailing list
>>> Libva@lists.freedesktop.org
>>> http://lists.freedesktop.org/mailman/listinfo/libva

___
Libva mailing list
Libva@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libva


Re: [Libva] [PATCH libva-intel-driver] gen8_mfd: free surface used by JPEG decode

2015-05-19 Thread Eoff, Ullysses A
On Tue, 2015-05-19 at 15:30 -0700, Sean V Kelley wrote:
> Artie,
> 
> > On May 19, 2015, at 14:59, U. Artie Eoff  wrote:
> > 
> > This is a follow up to previous commit:
> > 
> > commit 8dda0650b55c467200c34ada127b5d9b54edea5c
> > Author: Zhao Yakui 
> > Date:   Tue May 5 17:56:38 2015 +0800
> > 
> 
> 
> Please resubmit your patch, with you as author as you are accounting for the 
> GEN8 case
> of inadvertent WA enabling.  GEN7 changes are already merged.
> 
> Thanks,
> 
> Sean
> 

This patch already has me as author.  The above is just a reference in
the "commit message" to the original GEN7 case.

> 
> >Decode: Free the allocated internal surface used by JPEG to avoid memory 
> > leak
> > 
> > For GEN8, this code path is normally disabled by default.
> > However, one can enable this code path by defining JPEG_WA
> > during compilation.  In that case, we would enable the
> > same memory leak.  Thus, apply the same fix in gen8_mfd to
> > fix it.
> > 
> > Signed-off-by: U. Artie Eoff 
> > ---
> > src/gen8_mfd.c | 12 
> > 1 file changed, 12 insertions(+)
> > 
> > diff --git a/src/gen8_mfd.c b/src/gen8_mfd.c
> > index 6618740..f045ca4 100644
> > --- a/src/gen8_mfd.c
> > +++ b/src/gen8_mfd.c
> > @@ -3112,8 +3112,11 @@ out:
> > static void
> > gen8_mfd_context_destroy(void *hw_context)
> > {
> > +VADriverContextP ctx;
> > struct gen7_mfd_context *gen7_mfd_context = (struct gen7_mfd_context 
> > *)hw_context;
> > 
> > +ctx = (VADriverContextP)(gen7_mfd_context->driver_context);
> > +
> > dri_bo_unreference(gen7_mfd_context->post_deblocking_output.bo);
> > gen7_mfd_context->post_deblocking_output.bo = NULL;
> > 
> > @@ -3140,6 +3143,13 @@ gen8_mfd_context_destroy(void *hw_context)
> > 
> > dri_bo_unreference(gen7_mfd_context->jpeg_wa_slice_data_bo);
> > 
> > +if (gen7_mfd_context->jpeg_wa_surface_id != VA_INVALID_SURFACE) {
> > +i965_DestroySurfaces(ctx,
> > + &gen7_mfd_context->jpeg_wa_surface_id,
> > + 1);
> > +gen7_mfd_context->jpeg_wa_surface_object = NULL;
> > +}
> > +
> > intel_batchbuffer_free(gen7_mfd_context->base.batch);
> > free(gen7_mfd_context);
> > }
> > @@ -3188,5 +3198,7 @@ gen8_dec_hw_context_init(VADriverContextP ctx, struct 
> > object_config *obj_config)
> > default:
> > break;
> > }
> > +
> > +gen7_mfd_context->driver_context = ctx;
> > return (struct hw_context *)gen7_mfd_context;
> > }
> > -- 
> > 1.9.3
> > 
> > ___
> > Libva mailing list
> > Libva@lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/libva
> 

___
Libva mailing list
Libva@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libva


Re: [Libva] [PATCH libva-intel-driver] gen8_mfd: free surface used by JPEG decode

2015-05-19 Thread Sean V Kelley
Artie,

> On May 19, 2015, at 14:59, U. Artie Eoff  wrote:
> 
> This is a follow up to previous commit:
> 
> commit 8dda0650b55c467200c34ada127b5d9b54edea5c
> Author: Zhao Yakui 
> Date:   Tue May 5 17:56:38 2015 +0800
> 


Please resubmit your patch, with you as author as you are accounting for the 
GEN8 case
of inadvertent WA enabling.  GEN7 changes are already merged.

Thanks,

Sean


>Decode: Free the allocated internal surface used by JPEG to avoid memory 
> leak
> 
> For GEN8, this code path is normally disabled by default.
> However, one can enable this code path by defining JPEG_WA
> during compilation.  In that case, we would enable the
> same memory leak.  Thus, apply the same fix in gen8_mfd to
> fix it.
> 
> Signed-off-by: U. Artie Eoff 
> ---
> src/gen8_mfd.c | 12 
> 1 file changed, 12 insertions(+)
> 
> diff --git a/src/gen8_mfd.c b/src/gen8_mfd.c
> index 6618740..f045ca4 100644
> --- a/src/gen8_mfd.c
> +++ b/src/gen8_mfd.c
> @@ -3112,8 +3112,11 @@ out:
> static void
> gen8_mfd_context_destroy(void *hw_context)
> {
> +VADriverContextP ctx;
> struct gen7_mfd_context *gen7_mfd_context = (struct gen7_mfd_context 
> *)hw_context;
> 
> +ctx = (VADriverContextP)(gen7_mfd_context->driver_context);
> +
> dri_bo_unreference(gen7_mfd_context->post_deblocking_output.bo);
> gen7_mfd_context->post_deblocking_output.bo = NULL;
> 
> @@ -3140,6 +3143,13 @@ gen8_mfd_context_destroy(void *hw_context)
> 
> dri_bo_unreference(gen7_mfd_context->jpeg_wa_slice_data_bo);
> 
> +if (gen7_mfd_context->jpeg_wa_surface_id != VA_INVALID_SURFACE) {
> +i965_DestroySurfaces(ctx,
> + &gen7_mfd_context->jpeg_wa_surface_id,
> + 1);
> +gen7_mfd_context->jpeg_wa_surface_object = NULL;
> +}
> +
> intel_batchbuffer_free(gen7_mfd_context->base.batch);
> free(gen7_mfd_context);
> }
> @@ -3188,5 +3198,7 @@ gen8_dec_hw_context_init(VADriverContextP ctx, struct 
> object_config *obj_config)
> default:
> break;
> }
> +
> +gen7_mfd_context->driver_context = ctx;
> return (struct hw_context *)gen7_mfd_context;
> }
> -- 
> 1.9.3
> 
> ___
> Libva mailing list
> Libva@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/libva

___
Libva mailing list
Libva@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libva


[Libva] [PATCH libva-intel-driver] gen8_mfd: free surface used by JPEG decode

2015-05-19 Thread U. Artie Eoff
This is a follow up to previous commit:

commit 8dda0650b55c467200c34ada127b5d9b54edea5c
Author: Zhao Yakui 
Date:   Tue May 5 17:56:38 2015 +0800

Decode: Free the allocated internal surface used by JPEG to avoid memory 
leak

For GEN8, this code path is normally disabled by default.
However, one can enable this code path by defining JPEG_WA
during compilation.  In that case, we would enable the
same memory leak.  Thus, apply the same fix in gen8_mfd to
fix it.

Signed-off-by: U. Artie Eoff 
---
 src/gen8_mfd.c | 12 
 1 file changed, 12 insertions(+)

diff --git a/src/gen8_mfd.c b/src/gen8_mfd.c
index 6618740..f045ca4 100644
--- a/src/gen8_mfd.c
+++ b/src/gen8_mfd.c
@@ -3112,8 +3112,11 @@ out:
 static void
 gen8_mfd_context_destroy(void *hw_context)
 {
+VADriverContextP ctx;
 struct gen7_mfd_context *gen7_mfd_context = (struct gen7_mfd_context 
*)hw_context;
 
+ctx = (VADriverContextP)(gen7_mfd_context->driver_context);
+
 dri_bo_unreference(gen7_mfd_context->post_deblocking_output.bo);
 gen7_mfd_context->post_deblocking_output.bo = NULL;
 
@@ -3140,6 +3143,13 @@ gen8_mfd_context_destroy(void *hw_context)
 
 dri_bo_unreference(gen7_mfd_context->jpeg_wa_slice_data_bo);
 
+if (gen7_mfd_context->jpeg_wa_surface_id != VA_INVALID_SURFACE) {
+i965_DestroySurfaces(ctx,
+ &gen7_mfd_context->jpeg_wa_surface_id,
+ 1);
+gen7_mfd_context->jpeg_wa_surface_object = NULL;
+}
+
 intel_batchbuffer_free(gen7_mfd_context->base.batch);
 free(gen7_mfd_context);
 }
@@ -3188,5 +3198,7 @@ gen8_dec_hw_context_init(VADriverContextP ctx, struct 
object_config *obj_config)
 default:
 break;
 }
+
+gen7_mfd_context->driver_context = ctx;
 return (struct hw_context *)gen7_mfd_context;
 }
-- 
1.9.3

___
Libva mailing list
Libva@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libva