aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/mesh_pathtbl.c
diff options
context:
space:
mode:
authorJohn W. Linville <linville@tuxdriver.com>2011-08-24 15:12:41 -0400
committerJohn W. Linville <linville@tuxdriver.com>2011-08-29 15:25:28 -0400
commit817a53d9866ab4118e2dd17a9ffe80700eac40ac (patch)
tree2a274e67dc7dc3cf194edadd4105b21d38ff1d45 /net/mac80211/mesh_pathtbl.c
parentnet/mac80211/debugfs: Convert to kstrou8_from_user (diff)
downloadlinux-dev-817a53d9866ab4118e2dd17a9ffe80700eac40ac.tar.xz
linux-dev-817a53d9866ab4118e2dd17a9ffe80700eac40ac.zip
mac80211: refactor skb copy to failq in mesh_path_move_to_queue
This seems a bit less awkward... Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/mesh_pathtbl.c')
-rw-r--r--net/mac80211/mesh_pathtbl.c8
1 files changed, 4 insertions, 4 deletions
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);