lkml.org 
[lkml]   [2014]   [Apr]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [Xen-devel] [PATCH] xen: fix memory leak in __xen_pcibk_add_pci_dev()
From
2014-04-01 16:23 GMT+09:00 Jan Beulich <JBeulich@suse.com>:
>>>> On 31.03.14 at 12:08, <daeseok.youn@gmail.com> wrote:
>
>> It need to free dev_entry when it failed to assign to a new
>> slot on the virtual PCI bus.
>>
>> smatch says:
>> drivers/xen/xen-pciback/vpci.c:142 __xen_pcibk_add_pci_dev() warn:
>> possible memory leak of 'dev_entry'
>>
>> Signed-off-by: Daeseok Youn <daeseok.youn@gmail.com>
>
> Reviewed-by: Jan Beulich <jbeulich@suse.com>
>
> albeit the solution is not ideal:
>
>> --- a/drivers/xen/xen-pciback/vpci.c
>> +++ b/drivers/xen/xen-pciback/vpci.c
>> @@ -130,6 +130,7 @@ static int __xen_pcibk_add_pci_dev(struct
>> xen_pcibk_device *pdev,
>> err = -ENOMEM;
>> xenbus_dev_fatal(pdev->xdev, err,
>> "No more space on root virtual PCI bus");
>> + kfree(dev_entry);
>>
>> unlock:
>> mutex_unlock(&vpci_dev->lock);
>
> The kfree() invocation would better be placed outside the locked
> region (e.g. in an else to the "if (!err)" a little further down).

You're right.
I will change my patch as your comment and send it again.

Thanks for review.
Daeseok Youn

>
> Jan
>


\
 
 \ /
  Last update: 2014-04-01 11:27    [W:0.101 / U:0.120 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site