lkml.org 
[lkml]   [2013]   [May]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] kernel/workqueue.c: kfree issue, need check flag 'WQ_UNBOUND' when processing failure.
On 05/16/2013 05:11 AM, Tejun Heo wrote:
> On Wed, May 15, 2013 at 09:34:36AM +0800, Chen Gang wrote:
>> On 05/14/2013 11:20 PM, Tejun Heo wrote:
>>> On Tue, May 14, 2013 at 09:06:40PM +0800, Chen Gang wrote:
>>>> err_destroy:
>>>> destroy_workqueue(wq);
>>>> + if (flags & WQ_UNBOUND) {
>>>> +err_free_wq:
>>>> + free_workqueue_attrs(wq->unbound_attrs);
>>>> + kfree(wq);
>>>> + }
>>>
>>> Doesn't the above make the code free wq twice on after err_destroy?
>>>
>>
>> Oh, it is my fault. I did not see the put_pwq_unlocked() in details,
>> next I should read the code carefully.
>
> We're still leaking unbound_attrs in the failure path, right? We can
> probably just add unconditional free_workqueue_attrs() in err_free_wq?
>

It seems that it already done, the related patch is provided by you :
"6029a91 workqueue: add workqueue->unbound_attrs".

Please check.


Thanks.
--
Chen Gang

Asianux Corporation


\
 
 \ /
  Last update: 2013-05-16 04:21    [W:0.041 / U:0.228 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site