From: David L Stevens Date: Tue, 9 Dec 2014 02:46:09 +0000 (-0500) Subject: sunvnet: fix incorrect rcu_read_unlock() in vnet_start_xmit() X-Git-Tag: v4.9.8~5202^2~72 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=9cdfe2c709c4f6076249ced6844b2bea420739c4;p=platform%2Fkernel%2Flinux-rpi3.git sunvnet: fix incorrect rcu_read_unlock() in vnet_start_xmit() This patch removes an extra rcu_read_unlock() on an allocation failure in vnet_skb_shape(). The needed rcu_read_unlock() is already done in the out_dropped label. Reported-by: Rashmi Narasimhan Signed-off-by: David L Stevens Signed-off-by: David S. Miller --- diff --git a/drivers/net/ethernet/sun/sunvnet.c b/drivers/net/ethernet/sun/sunvnet.c index aac7d93..90c86cd 100644 --- a/drivers/net/ethernet/sun/sunvnet.c +++ b/drivers/net/ethernet/sun/sunvnet.c @@ -1317,10 +1317,8 @@ static int vnet_start_xmit(struct sk_buff *skb, struct net_device *dev) skb = vnet_skb_shape(skb, 2); - if (unlikely(!skb)) { - rcu_read_unlock(); + if (unlikely(!skb)) goto out_dropped; - } if (skb->ip_summed == CHECKSUM_PARTIAL) vnet_fullcsum(skb);