summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorFlorin Malita <fmalita@gmail.com>2007-05-23 01:09:42 +0200
committerJeff Garzik <jeff@garzik.org>2007-05-24 23:25:43 +0200
commit93c1d3b790673bb2a7489d6f165c5c99a7f44baf (patch)
tree08514dbd16c00755818fcece92d2da26df3830c7 /drivers
parentmeth driver renovation (diff)
downloadlinux-93c1d3b790673bb2a7489d6f165c5c99a7f44baf.tar.xz
linux-93c1d3b790673bb2a7489d6f165c5c99a7f44baf.zip
spidernet: skb used after netif_receive_skb
The stats update code in spider_net_pass_skb_up() is touching the skb after it's been passed up to the stack. To avoid that, just update the stats first. Signed-off-by: Florin Malita <fmalita@gmail.com> Signed-off-by: Linas Vepstas <linas@austin.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/spider_net.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/net/spider_net.c b/drivers/net/spider_net.c
index c3964c3d89d9..ef84d7c757a0 100644
--- a/drivers/net/spider_net.c
+++ b/drivers/net/spider_net.c
@@ -1014,12 +1014,12 @@ spider_net_pass_skb_up(struct spider_net_descr *descr,
*/
}
- /* pass skb up to stack */
- netif_receive_skb(skb);
-
/* update netdevice statistics */
card->netdev_stats.rx_packets++;
card->netdev_stats.rx_bytes += skb->len;
+
+ /* pass skb up to stack */
+ netif_receive_skb(skb);
}
#ifdef DEBUG