From: John W. Linville Date: Wed, 24 Aug 2011 19:12:41 +0000 (-0400) Subject: mac80211: refactor skb copy to failq in mesh_path_move_to_queue X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=817a53d9866ab4118e2dd17a9ffe80700eac40ac;p=linux-beck.git mac80211: refactor skb copy to failq in mesh_path_move_to_queue This seems a bit less awkward... Signed-off-by: John W. Linville --- diff --git a/net/mac80211/mesh_pathtbl.c b/net/mac80211/mesh_pathtbl.c index 3c2bcb2de844..ede4f5242e0b 100644 --- a/net/mac80211/mesh_pathtbl.c +++ b/net/mac80211/mesh_pathtbl.c @@ -307,14 +307,14 @@ static void mesh_path_move_to_queue(struct mesh_path *gate_mpath, while (num_skbs--) { skb = __skb_dequeue(&failq); - if (copy) + if (copy) { cp_skb = skb_copy(skb, GFP_ATOMIC); + if (cp_skb) + __skb_queue_tail(&failq, cp_skb); + } prepare_for_gate(skb, gate_mpath->dst, gate_mpath); __skb_queue_tail(&gateq, skb); - - if (copy && cp_skb) - __skb_queue_tail(&failq, cp_skb); } spin_lock_irqsave(&gate_mpath->frame_queue.lock, flags);