Re: [PATCH] kvm: irqchip: fix memory leak

2015-11-04 Thread Paolo Bonzini


On 03/11/2015 22:17, William Dauchy wrote:
> Hi Paolo,
> 
> I was wondering it this could be a valid candidate for -stable, don't you 
> think?
> (commit ba60c41)

Indeed, feel free to propose it!

Paolo

> Best regards,
> 
> On Sep02 12:33, Sudip Mukherjee wrote:
>> We were taking the exit path after checking ue->flags and return value
>> of setup_routing_entry(), but 'e' was not freed incase of a failure.
>>
>> Signed-off-by: Sudip Mukherjee 
>> ---
>>  virt/kvm/irqchip.c | 8 ++--
>>  1 file changed, 6 insertions(+), 2 deletions(-)
>>
>> diff --git a/virt/kvm/irqchip.c b/virt/kvm/irqchip.c
>> index 21c1424..c63e54f 100644
>> --- a/virt/kvm/irqchip.c
>> +++ b/virt/kvm/irqchip.c
>> @@ -213,11 +213,15 @@ int kvm_set_irq_routing(struct kvm *kvm,
>>  goto out;
>>  
>>  r = -EINVAL;
>> -if (ue->flags)
>> +if (ue->flags) {
>> +kfree(e);
>>  goto out;
>> +}
>>  r = setup_routing_entry(new, e, ue);
>> -if (r)
>> +if (r) {
>> +kfree(e);
>>  goto out;
>> +}
>>  ++ue;
>>  }
>>  
>> -- 
>> 1.9.1
>>
>> --
>> To unsubscribe from this list: send the line "unsubscribe kvm" in
>> the body of a message to majord...@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH] kvm: irqchip: fix memory leak

2015-11-04 Thread Paolo Bonzini


On 03/11/2015 22:17, William Dauchy wrote:
> Hi Paolo,
> 
> I was wondering it this could be a valid candidate for -stable, don't you 
> think?
> (commit ba60c41)

Certainly, feel free to propose it to sta...@vger.kernel.org!

Paolo

> Best regards,
> 
> On Sep02 12:33, Sudip Mukherjee wrote:
>> We were taking the exit path after checking ue->flags and return value
>> of setup_routing_entry(), but 'e' was not freed incase of a failure.
>>
>> Signed-off-by: Sudip Mukherjee 
>> ---
>>  virt/kvm/irqchip.c | 8 ++--
>>  1 file changed, 6 insertions(+), 2 deletions(-)
>>
>> diff --git a/virt/kvm/irqchip.c b/virt/kvm/irqchip.c
>> index 21c1424..c63e54f 100644
>> --- a/virt/kvm/irqchip.c
>> +++ b/virt/kvm/irqchip.c
>> @@ -213,11 +213,15 @@ int kvm_set_irq_routing(struct kvm *kvm,
>>  goto out;
>>  
>>  r = -EINVAL;
>> -if (ue->flags)
>> +if (ue->flags) {
>> +kfree(e);
>>  goto out;
>> +}
>>  r = setup_routing_entry(new, e, ue);
>> -if (r)
>> +if (r) {
>> +kfree(e);
>>  goto out;
>> +}
>>  ++ue;
>>  }
>>  
>> -- 
>> 1.9.1
>>
>> --
>> To unsubscribe from this list: send the line "unsubscribe kvm" in
>> the body of a message to majord...@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH] kvm: irqchip: fix memory leak

2015-11-03 Thread William Dauchy
Hi Paolo,

I was wondering it this could be a valid candidate for -stable, don't you think?
(commit ba60c41)

Best regards,

On Sep02 12:33, Sudip Mukherjee wrote:
> We were taking the exit path after checking ue->flags and return value
> of setup_routing_entry(), but 'e' was not freed incase of a failure.
> 
> Signed-off-by: Sudip Mukherjee 
> ---
>  virt/kvm/irqchip.c | 8 ++--
>  1 file changed, 6 insertions(+), 2 deletions(-)
> 
> diff --git a/virt/kvm/irqchip.c b/virt/kvm/irqchip.c
> index 21c1424..c63e54f 100644
> --- a/virt/kvm/irqchip.c
> +++ b/virt/kvm/irqchip.c
> @@ -213,11 +213,15 @@ int kvm_set_irq_routing(struct kvm *kvm,
>   goto out;
>  
>   r = -EINVAL;
> - if (ue->flags)
> + if (ue->flags) {
> + kfree(e);
>   goto out;
> + }
>   r = setup_routing_entry(new, e, ue);
> - if (r)
> + if (r) {
> + kfree(e);
>   goto out;
> + }
>   ++ue;
>   }
>  
> -- 
> 1.9.1
> 
> --
> To unsubscribe from this list: send the line "unsubscribe kvm" in
> the body of a message to majord...@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

-- 
William


signature.asc
Description: PGP signature


Re: [PATCH] kvm: irqchip: fix memory leak

2015-09-07 Thread Paolo Bonzini


On 02/09/2015 09:03, Sudip Mukherjee wrote:
> We were taking the exit path after checking ue->flags and return value
> of setup_routing_entry(), but 'e' was not freed incase of a failure.
> 
> Signed-off-by: Sudip Mukherjee 
> ---
>  virt/kvm/irqchip.c | 8 ++--
>  1 file changed, 6 insertions(+), 2 deletions(-)
> 
> diff --git a/virt/kvm/irqchip.c b/virt/kvm/irqchip.c
> index 21c1424..c63e54f 100644
> --- a/virt/kvm/irqchip.c
> +++ b/virt/kvm/irqchip.c
> @@ -213,11 +213,15 @@ int kvm_set_irq_routing(struct kvm *kvm,
>   goto out;
>  
>   r = -EINVAL;
> - if (ue->flags)
> + if (ue->flags) {
> + kfree(e);
>   goto out;
> + }
>   r = setup_routing_entry(new, e, ue);
> - if (r)
> + if (r) {
> + kfree(e);
>   goto out;
> + }
>   ++ue;
>   }
>  
> 

Queued, thanks.

Paolo
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH] kvm: irqchip: fix memory leak

2015-09-02 Thread Sudip Mukherjee
We were taking the exit path after checking ue->flags and return value
of setup_routing_entry(), but 'e' was not freed incase of a failure.

Signed-off-by: Sudip Mukherjee 
---
 virt/kvm/irqchip.c | 8 ++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/virt/kvm/irqchip.c b/virt/kvm/irqchip.c
index 21c1424..c63e54f 100644
--- a/virt/kvm/irqchip.c
+++ b/virt/kvm/irqchip.c
@@ -213,11 +213,15 @@ int kvm_set_irq_routing(struct kvm *kvm,
goto out;
 
r = -EINVAL;
-   if (ue->flags)
+   if (ue->flags) {
+   kfree(e);
goto out;
+   }
r = setup_routing_entry(new, e, ue);
-   if (r)
+   if (r) {
+   kfree(e);
goto out;
+   }
++ue;
}
 
-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html