From: 张胜举 <zhangshen...@cmss.chinamobile.com>
Date: Mon, 29 Feb 2016 22:16:37 +0800

>> On Mon, 2016-02-29 at 12:22 +0000, Zhang Shengju wrote:
>> > If skb_reorder_vlan_header() failed, skb is freed and NULL is returned.
>> > Then at skb_vlan_untag(), it will free skbuff again which cause double
>> > free.
>> 
>> On skb_reorder_vlan_header() failure, skb_vlan_untag() will call
>> kfree_skb() using the return value of skb_reorder_vlan_header(), that is
>> NULL. kfree_skb() is a noop when the argument is NULL.
>> 
>> The current code seams safe.
>> 
>> Paolo
> Hi Paolo, even current code is safe, this's still a potential problem. We 
> should make an
> assumption that inner function doesn't free skb, and let outside function 
> take care of this.

No, the current code is intentional and perfectly fine.

Fix real bugs, not imaginary ones.

Thanks.

Reply via email to