Corey,
That makes sense, my fault. I can send in a v2 later today if you want.
Sorry,
Nick

On 2015-01-23 12:07 PM, Corey Minyard wrote:
> On 01/23/2015 10:35 AM, nick wrote:
>> Sasha,
>> How is this patch broken? It builds and clearly frees 
>> the list entries. Please explain how to me.
>> Nick
> 
> Oh, it does not free priv.  That code should not have been removed.
> 
> -corey
> 
>> On 2015-01-22 11:50 PM, Sasha Levin wrote:
>>> On 01/22/2015 08:05 AM, Corey Minyard wrote:
>>>> Patch is queued for 3.20.  Thanks.
>>> That patch is horribly broken.
>>>
>>>
>>> Thanks,
>>> Sasha
>>>
>>>> -corey
>>>>
>>>> On 01/19/2015 09:14 PM, Nicholas Krause wrote:
>>>>> This adds a loop through the elements in the linked list, recv_msgs using
>>>>> list_for_entry_safe in order to free messages in this list.  In addition
>>>>> we are using the safe version of this marco in order to prevent use after
>>>>> bugs related to deleting the element we are on currently by holding a
>>>>> pointer to the next element after the current one we are on and freeing
>>>>> with the function, ipmi_free_recv_msg internally in this loop.
>>>>>
>>>>> Signed-off-by: Nicholas Krause <[email protected]>
>>>>> ---
>>>>>  drivers/char/ipmi/ipmi_devintf.c | 7 ++++---
>>>>>  1 file changed, 4 insertions(+), 3 deletions(-)
>>>>>
>>>>> diff --git a/drivers/char/ipmi/ipmi_devintf.c 
>>>>> b/drivers/char/ipmi/ipmi_devintf.c
>>>>> index ec318bf..d2af38a 100644
>>>>> --- a/drivers/char/ipmi/ipmi_devintf.c
>>>>> +++ b/drivers/char/ipmi/ipmi_devintf.c
>>>>> @@ -157,14 +157,15 @@ static int ipmi_release(struct inode *inode, struct 
>>>>> file *file)
>>>>>  {
>>>>>   struct ipmi_file_private *priv = file->private_data;
>>>>>   int                      rv;
>>>>> + struct  ipmi_recv_msg *msg, *next;
>>>>>  
>>>>>   rv = ipmi_destroy_user(priv->user);
>>>>>   if (rv)
>>>>>           return rv;
>>>>>  
>>>>> - /* FIXME - free the messages in the list. */
>>>>> - kfree(priv);
>>>>> -
>>>>> + list_for_each_entry_safe(msg, next, &priv->recv_msgs, link) {
>>>>> +         ipmi_free_recv_msg(msg);
>>>>> + }
>>>>>   return 0;
>>>>>  }
>>>>>  
>>>> --
>>>> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
>>>> the body of a message to [email protected]
>>>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>>>> Please read the FAQ at  http://www.tux.org/lkml/
>>>>
> 

------------------------------------------------------------------------------
New Year. New Location. New Benefits. New Data Center in Ashburn, VA.
GigeNET is offering a free month of service with a new server in Ashburn.
Choose from 2 high performing configs, both with 100TB of bandwidth.
Higher redundancy.Lower latency.Increased capacity.Completely compliant.
http://p.sf.net/sfu/gigenet
_______________________________________________
Openipmi-developer mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openipmi-developer

Reply via email to