diff options
author | David S. Miller <davem@davemloft.net> | 2008-11-04 00:11:17 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-11-04 00:11:17 -0500 |
commit | babcda74e9d96bb58fd9c6c5112dbdbff169e695 (patch) | |
tree | fcbe5e70f1fff01ad49504171e964c387a5ad7f8 /drivers | |
parent | ab2910921064b657610a3b501358a305e13087ea (diff) |
drivers/net: Kill now superfluous ->last_rx stores.
The generic packet receive code takes care of setting
netdev->last_rx when necessary, for the sake of the
bonding ARP monitor.
Drivers need not do it any more.
Some cases had to be skipped over because the drivers
were making use of the ->last_rx value themselves.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
211 files changed, 1 insertions, 276 deletions
diff --git a/drivers/net/3c501.c b/drivers/net/3c501.c index 7d15e7c6bcad..3a44db1ed749 100644 --- a/drivers/net/3c501.c +++ b/drivers/net/3c501.c | |||
@@ -725,7 +725,6 @@ static void el_receive(struct net_device *dev) | |||
725 | insb(DATAPORT, skb_put(skb, pkt_len), pkt_len); | 725 | insb(DATAPORT, skb_put(skb, pkt_len), pkt_len); |
726 | skb->protocol = eth_type_trans(skb, dev); | 726 | skb->protocol = eth_type_trans(skb, dev); |
727 | netif_rx(skb); | 727 | netif_rx(skb); |
728 | dev->last_rx = jiffies; | ||
729 | dev->stats.rx_packets++; | 728 | dev->stats.rx_packets++; |
730 | dev->stats.rx_bytes += pkt_len; | 729 | dev->stats.rx_bytes += pkt_len; |
731 | } | 730 | } |
diff --git a/drivers/net/3c505.c b/drivers/net/3c505.c index 6ecb4188b451..e669da76ed09 100644 --- a/drivers/net/3c505.c +++ b/drivers/net/3c505.c | |||
@@ -672,7 +672,6 @@ static irqreturn_t elp_interrupt(int irq, void *dev_id) | |||
672 | skb->protocol = eth_type_trans(skb,dev); | 672 | skb->protocol = eth_type_trans(skb,dev); |
673 | dev->stats.rx_bytes += skb->len; | 673 | dev->stats.rx_bytes += skb->len; |
674 | netif_rx(skb); | 674 | netif_rx(skb); |
675 | dev->last_rx = jiffies; | ||
676 | } | 675 | } |
677 | } | 676 | } |
678 | adapter->dmaing = 0; | 677 | adapter->dmaing = 0; |
diff --git a/drivers/net/3c507.c b/drivers/net/3c507.c index 66fd505788f4..b8585ecd1d78 100644 --- a/drivers/net/3c507.c +++ b/drivers/net/3c507.c | |||
@@ -865,7 +865,6 @@ static void el16_rx(struct net_device *dev) | |||
865 | 865 | ||
866 | skb->protocol=eth_type_trans(skb,dev); | 866 | skb->protocol=eth_type_trans(skb,dev); |
867 | netif_rx(skb); | 867 | netif_rx(skb); |
868 | dev->last_rx = jiffies; | ||
869 | dev->stats.rx_packets++; | 868 | dev->stats.rx_packets++; |
870 | dev->stats.rx_bytes += pkt_len; | 869 | dev->stats.rx_bytes += pkt_len; |
871 | } | 870 | } |
diff --git a/drivers/net/3c509.c b/drivers/net/3c509.c index cc970c49fb34..226a017a9991 100644 --- a/drivers/net/3c509.c +++ b/drivers/net/3c509.c | |||
@@ -1074,7 +1074,6 @@ el3_rx(struct net_device *dev) | |||
1074 | outw(RxDiscard, ioaddr + EL3_CMD); /* Pop top Rx packet. */ | 1074 | outw(RxDiscard, ioaddr + EL3_CMD); /* Pop top Rx packet. */ |
1075 | skb->protocol = eth_type_trans(skb,dev); | 1075 | skb->protocol = eth_type_trans(skb,dev); |
1076 | netif_rx(skb); | 1076 | netif_rx(skb); |
1077 | dev->last_rx = jiffies; | ||
1078 | dev->stats.rx_bytes += pkt_len; | 1077 | dev->stats.rx_bytes += pkt_len; |
1079 | dev->stats.rx_packets++; | 1078 | dev->stats.rx_packets++; |
1080 | continue; | 1079 | continue; |
diff --git a/drivers/net/3c515.c b/drivers/net/3c515.c index a2c24684a44a..7f995008a45c 100644 --- a/drivers/net/3c515.c +++ b/drivers/net/3c515.c | |||
@@ -1301,7 +1301,6 @@ static int corkscrew_rx(struct net_device *dev) | |||
1301 | outw(RxDiscard, ioaddr + EL3_CMD); /* Pop top Rx packet. */ | 1301 | outw(RxDiscard, ioaddr + EL3_CMD); /* Pop top Rx packet. */ |
1302 | skb->protocol = eth_type_trans(skb, dev); | 1302 | skb->protocol = eth_type_trans(skb, dev); |
1303 | netif_rx(skb); | 1303 | netif_rx(skb); |
1304 | dev->last_rx = jiffies; | ||
1305 | dev->stats.rx_packets++; | 1304 | dev->stats.rx_packets++; |
1306 | dev->stats.rx_bytes += pkt_len; | 1305 | dev->stats.rx_bytes += pkt_len; |
1307 | /* Wait a limited time to go to next packet. */ | 1306 | /* Wait a limited time to go to next packet. */ |
@@ -1388,7 +1387,6 @@ static int boomerang_rx(struct net_device *dev) | |||
1388 | } | 1387 | } |
1389 | skb->protocol = eth_type_trans(skb, dev); | 1388 | skb->protocol = eth_type_trans(skb, dev); |
1390 | netif_rx(skb); | 1389 | netif_rx(skb); |
1391 | dev->last_rx = jiffies; | ||
1392 | dev->stats.rx_packets++; | 1390 | dev->stats.rx_packets++; |
1393 | } | 1391 | } |
1394 | entry = (++vp->cur_rx) % RX_RING_SIZE; | 1392 | entry = (++vp->cur_rx) % RX_RING_SIZE; |
diff --git a/drivers/net/3c523.c b/drivers/net/3c523.c index 23a31232326c..0885aeeac98a 100644 --- a/drivers/net/3c523.c +++ b/drivers/net/3c523.c | |||
@@ -983,7 +983,6 @@ static void elmc_rcv_int(struct net_device *dev) | |||
983 | skb_copy_to_linear_data(skb, (char *) p->base+(unsigned long) rbd->buffer,totlen); | 983 | skb_copy_to_linear_data(skb, (char *) p->base+(unsigned long) rbd->buffer,totlen); |
984 | skb->protocol = eth_type_trans(skb, dev); | 984 | skb->protocol = eth_type_trans(skb, dev); |
985 | netif_rx(skb); | 985 | netif_rx(skb); |
986 | dev->last_rx = jiffies; | ||
987 | dev->stats.rx_packets++; | 986 | dev->stats.rx_packets++; |
988 | dev->stats.rx_bytes += totlen; | 987 | dev->stats.rx_bytes += totlen; |
989 | } else { | 988 | } else { |
diff --git a/drivers/net/3c527.c b/drivers/net/3c527.c index 0f4cabb4cc29..2df3af3b9b20 100644 --- a/drivers/net/3c527.c +++ b/drivers/net/3c527.c | |||
@@ -1186,7 +1186,6 @@ static void mc32_rx_ring(struct net_device *dev) | |||
1186 | } | 1186 | } |
1187 | 1187 | ||
1188 | skb->protocol=eth_type_trans(skb,dev); | 1188 | skb->protocol=eth_type_trans(skb,dev); |
1189 | dev->last_rx = jiffies; | ||
1190 | dev->stats.rx_packets++; | 1189 | dev->stats.rx_packets++; |
1191 | dev->stats.rx_bytes += length; | 1190 | dev->stats.rx_bytes += length; |
1192 | netif_rx(skb); | 1191 | netif_rx(skb); |
diff --git a/drivers/net/3c59x.c b/drivers/net/3c59x.c index 38d58fd9c18d..b4168dfd6893 100644 --- a/drivers/net/3c59x.c +++ b/drivers/net/3c59x.c | |||
@@ -2446,7 +2446,6 @@ static int vortex_rx(struct net_device *dev) | |||
2446 | iowrite16(RxDiscard, ioaddr + EL3_CMD); /* Pop top Rx packet. */ | 2446 | iowrite16(RxDiscard, ioaddr + EL3_CMD); /* Pop top Rx packet. */ |
2447 | skb->protocol = eth_type_trans(skb, dev); | 2447 | skb->protocol = eth_type_trans(skb, dev); |
2448 | netif_rx(skb); | 2448 | netif_rx(skb); |
2449 | dev->last_rx = jiffies; | ||
2450 | dev->stats.rx_packets++; | 2449 | dev->stats.rx_packets++; |
2451 | /* Wait a limited time to go to next packet. */ | 2450 | /* Wait a limited time to go to next packet. */ |
2452 | for (i = 200; i >= 0; i--) | 2451 | for (i = 200; i >= 0; i--) |
@@ -2529,7 +2528,6 @@ boomerang_rx(struct net_device *dev) | |||
2529 | } | 2528 | } |
2530 | } | 2529 | } |
2531 | netif_rx(skb); | 2530 | netif_rx(skb); |
2532 | dev->last_rx = jiffies; | ||
2533 | dev->stats.rx_packets++; | 2531 | dev->stats.rx_packets++; |
2534 | } | 2532 | } |
2535 | entry = (++vp->cur_rx) % RX_RING_SIZE; | 2533 | entry = (++vp->cur_rx) % RX_RING_SIZE; |
diff --git a/drivers/net/7990.c b/drivers/net/7990.c index ad6b8a5b6574..7a331acc34ad 100644 --- a/drivers/net/7990.c +++ b/drivers/net/7990.c | |||
@@ -336,7 +336,6 @@ static int lance_rx (struct net_device *dev) | |||
336 | len); | 336 | len); |
337 | skb->protocol = eth_type_trans (skb, dev); | 337 | skb->protocol = eth_type_trans (skb, dev); |
338 | netif_rx (skb); | 338 | netif_rx (skb); |
339 | dev->last_rx = jiffies; | ||
340 | dev->stats.rx_packets++; | 339 | dev->stats.rx_packets++; |
341 | dev->stats.rx_bytes += len; | 340 | dev->stats.rx_bytes += len; |
342 | } | 341 | } |
diff --git a/drivers/net/8139cp.c b/drivers/net/8139cp.c index 9e90d411e0ad..664bd73645cb 100644 --- a/drivers/net/8139cp.c +++ b/drivers/net/8139cp.c | |||
@@ -457,7 +457,6 @@ static inline void cp_rx_skb (struct cp_private *cp, struct sk_buff *skb, | |||
457 | 457 | ||
458 | cp->dev->stats.rx_packets++; | 458 | cp->dev->stats.rx_packets++; |
459 | cp->dev->stats.rx_bytes += skb->len; | 459 | cp->dev->stats.rx_bytes += skb->len; |
460 | cp->dev->last_rx = jiffies; | ||
461 | 460 | ||
462 | #if CP_VLAN_TAG_USED | 461 | #if CP_VLAN_TAG_USED |
463 | if (cp->vlgrp && (desc->opts2 & cpu_to_le32(RxVlanTagged))) { | 462 | if (cp->vlgrp && (desc->opts2 & cpu_to_le32(RxVlanTagged))) { |
diff --git a/drivers/net/8139too.c b/drivers/net/8139too.c index 96841e40bd46..37456ada44cf 100644 --- a/drivers/net/8139too.c +++ b/drivers/net/8139too.c | |||
@@ -2025,7 +2025,6 @@ no_early_rx: | |||
2025 | 2025 | ||
2026 | skb->protocol = eth_type_trans (skb, dev); | 2026 | skb->protocol = eth_type_trans (skb, dev); |
2027 | 2027 | ||
2028 | dev->last_rx = jiffies; | ||
2029 | dev->stats.rx_bytes += pkt_size; | 2028 | dev->stats.rx_bytes += pkt_size; |
2030 | dev->stats.rx_packets++; | 2029 | dev->stats.rx_packets++; |
2031 | 2030 | ||
diff --git a/drivers/net/82596.c b/drivers/net/82596.c index 1d97bb5377a8..717fe2f7c66a 100644 --- a/drivers/net/82596.c +++ b/drivers/net/82596.c | |||
@@ -841,7 +841,6 @@ memory_squeeze: | |||
841 | pkt_len); | 841 | pkt_len); |
842 | #endif | 842 | #endif |
843 | netif_rx(skb); | 843 | netif_rx(skb); |
844 | dev->last_rx = jiffies; | ||
845 | dev->stats.rx_packets++; | 844 | dev->stats.rx_packets++; |
846 | dev->stats.rx_bytes+=pkt_len; | 845 | dev->stats.rx_bytes+=pkt_len; |
847 | } | 846 | } |
diff --git a/drivers/net/a2065.c b/drivers/net/a2065.c index 48965de794bb..7a60bdd9a242 100644 --- a/drivers/net/a2065.c +++ b/drivers/net/a2065.c | |||
@@ -324,7 +324,6 @@ static int lance_rx (struct net_device *dev) | |||
324 | len); | 324 | len); |
325 | skb->protocol = eth_type_trans (skb, dev); | 325 | skb->protocol = eth_type_trans (skb, dev); |
326 | netif_rx (skb); | 326 | netif_rx (skb); |
327 | dev->last_rx = jiffies; | ||
328 | dev->stats.rx_packets++; | 327 | dev->stats.rx_packets++; |
329 | dev->stats.rx_bytes += len; | 328 | dev->stats.rx_bytes += len; |
330 | } | 329 | } |
diff --git a/drivers/net/acenic.c b/drivers/net/acenic.c index 6eefd93a08f3..b9d35f6786b3 100644 --- a/drivers/net/acenic.c +++ b/drivers/net/acenic.c | |||
@@ -2033,7 +2033,6 @@ static void ace_rx_int(struct net_device *dev, u32 rxretprd, u32 rxretcsm) | |||
2033 | #endif | 2033 | #endif |
2034 | netif_rx(skb); | 2034 | netif_rx(skb); |
2035 | 2035 | ||
2036 | dev->last_rx = jiffies; | ||
2037 | dev->stats.rx_packets++; | 2036 | dev->stats.rx_packets++; |
2038 | dev->stats.rx_bytes += retdesc->size; | 2037 | dev->stats.rx_bytes += retdesc->size; |
2039 | 2038 | ||
diff --git a/drivers/net/amd8111e.c b/drivers/net/amd8111e.c index 4a2ef838fed6..0bc4f54d5db9 100644 --- a/drivers/net/amd8111e.c +++ b/drivers/net/amd8111e.c | |||
@@ -809,7 +809,6 @@ static int amd8111e_rx_poll(struct napi_struct *napi, int budget) | |||
809 | lp->coal_conf.rx_packets++; | 809 | lp->coal_conf.rx_packets++; |
810 | lp->coal_conf.rx_bytes += pkt_len; | 810 | lp->coal_conf.rx_bytes += pkt_len; |
811 | num_rx_pkt++; | 811 | num_rx_pkt++; |
812 | dev->last_rx = jiffies; | ||
813 | 812 | ||
814 | err_next_pkt: | 813 | err_next_pkt: |
815 | lp->rx_ring[rx_index].buff_phy_addr | 814 | lp->rx_ring[rx_index].buff_phy_addr |
diff --git a/drivers/net/appletalk/cops.c b/drivers/net/appletalk/cops.c index 735fc9476403..0c4e3c5ac49c 100644 --- a/drivers/net/appletalk/cops.c +++ b/drivers/net/appletalk/cops.c | |||
@@ -851,7 +851,6 @@ static void cops_rx(struct net_device *dev) | |||
851 | 851 | ||
852 | /* Send packet to a higher place. */ | 852 | /* Send packet to a higher place. */ |
853 | netif_rx(skb); | 853 | netif_rx(skb); |
854 | dev->last_rx = jiffies; | ||
855 | } | 854 | } |
856 | 855 | ||
857 | static void cops_timeout(struct net_device *dev) | 856 | static void cops_timeout(struct net_device *dev) |
diff --git a/drivers/net/appletalk/ltpc.c b/drivers/net/appletalk/ltpc.c index fef5560bc7a2..8d109a5f5571 100644 --- a/drivers/net/appletalk/ltpc.c +++ b/drivers/net/appletalk/ltpc.c | |||
@@ -783,7 +783,6 @@ static int sendup_buffer (struct net_device *dev) | |||
783 | 783 | ||
784 | /* toss it onwards */ | 784 | /* toss it onwards */ |
785 | netif_rx(skb); | 785 | netif_rx(skb); |
786 | dev->last_rx = jiffies; | ||
787 | return 0; | 786 | return 0; |
788 | } | 787 | } |
789 | 788 | ||
diff --git a/drivers/net/arcnet/arc-rawmode.c b/drivers/net/arcnet/arc-rawmode.c index e0a18e7c73cb..60088b3b61c4 100644 --- a/drivers/net/arcnet/arc-rawmode.c +++ b/drivers/net/arcnet/arc-rawmode.c | |||
@@ -125,7 +125,6 @@ static void rx(struct net_device *dev, int bufnum, | |||
125 | skb->protocol = __constant_htons(ETH_P_ARCNET); | 125 | skb->protocol = __constant_htons(ETH_P_ARCNET); |
126 | ; | 126 | ; |
127 | netif_rx(skb); | 127 | netif_rx(skb); |
128 | dev->last_rx = jiffies; | ||
129 | } | 128 | } |
130 | 129 | ||
131 | 130 | ||
diff --git a/drivers/net/arcnet/capmode.c b/drivers/net/arcnet/capmode.c index 02cb8f1c1148..67bc47aa6904 100644 --- a/drivers/net/arcnet/capmode.c +++ b/drivers/net/arcnet/capmode.c | |||
@@ -151,7 +151,6 @@ static void rx(struct net_device *dev, int bufnum, | |||
151 | skb->protocol = __constant_htons(ETH_P_ARCNET); | 151 | skb->protocol = __constant_htons(ETH_P_ARCNET); |
152 | ; | 152 | ; |
153 | netif_rx(skb); | 153 | netif_rx(skb); |
154 | dev->last_rx = jiffies; | ||
155 | } | 154 | } |
156 | 155 | ||
157 | 156 | ||
diff --git a/drivers/net/arcnet/rfc1051.c b/drivers/net/arcnet/rfc1051.c index dab185bc51f1..994be4970a57 100644 --- a/drivers/net/arcnet/rfc1051.c +++ b/drivers/net/arcnet/rfc1051.c | |||
@@ -159,7 +159,6 @@ static void rx(struct net_device *dev, int bufnum, | |||
159 | 159 | ||
160 | skb->protocol = type_trans(skb, dev); | 160 | skb->protocol = type_trans(skb, dev); |
161 | netif_rx(skb); | 161 | netif_rx(skb); |
162 | dev->last_rx = jiffies; | ||
163 | } | 162 | } |
164 | 163 | ||
165 | 164 | ||
diff --git a/drivers/net/arcnet/rfc1201.c b/drivers/net/arcnet/rfc1201.c index 6d6d95cc4404..962641e96450 100644 --- a/drivers/net/arcnet/rfc1201.c +++ b/drivers/net/arcnet/rfc1201.c | |||
@@ -230,7 +230,6 @@ static void rx(struct net_device *dev, int bufnum, | |||
230 | 230 | ||
231 | skb->protocol = type_trans(skb, dev); | 231 | skb->protocol = type_trans(skb, dev); |
232 | netif_rx(skb); | 232 | netif_rx(skb); |
233 | dev->last_rx = jiffies; | ||
234 | } else { /* split packet */ | 233 | } else { /* split packet */ |
235 | /* | 234 | /* |
236 | * NOTE: MSDOS ARP packet correction should only need to apply to | 235 | * NOTE: MSDOS ARP packet correction should only need to apply to |
@@ -366,7 +365,6 @@ static void rx(struct net_device *dev, int bufnum, | |||
366 | 365 | ||
367 | skb->protocol = type_trans(skb, dev); | 366 | skb->protocol = type_trans(skb, dev); |
368 | netif_rx(skb); | 367 | netif_rx(skb); |
369 | dev->last_rx = jiffies; | ||
370 | } | 368 | } |
371 | } | 369 | } |
372 | } | 370 | } |
diff --git a/drivers/net/ariadne.c b/drivers/net/ariadne.c index 2903191f4b7a..e1d72e06f3e1 100644 --- a/drivers/net/ariadne.c +++ b/drivers/net/ariadne.c | |||
@@ -753,7 +753,6 @@ static int ariadne_rx(struct net_device *dev) | |||
753 | #endif | 753 | #endif |
754 | 754 | ||
755 | netif_rx(skb); | 755 | netif_rx(skb); |
756 | dev->last_rx = jiffies; | ||
757 | dev->stats.rx_packets++; | 756 | dev->stats.rx_packets++; |
758 | dev->stats.rx_bytes += pkt_len; | 757 | dev->stats.rx_bytes += pkt_len; |
759 | } | 758 | } |
diff --git a/drivers/net/arm/am79c961a.c b/drivers/net/arm/am79c961a.c index 645915553182..0c628a9e5339 100644 --- a/drivers/net/arm/am79c961a.c +++ b/drivers/net/arm/am79c961a.c | |||
@@ -532,7 +532,6 @@ am79c961_rx(struct net_device *dev, struct dev_priv *priv) | |||
532 | am_writeword(dev, hdraddr + 2, RMD_OWN); | 532 | am_writeword(dev, hdraddr + 2, RMD_OWN); |
533 | skb->protocol = eth_type_trans(skb, dev); | 533 | skb->protocol = eth_type_trans(skb, dev); |
534 | netif_rx(skb); | 534 | netif_rx(skb); |
535 | dev->last_rx = jiffies; | ||
536 | priv->stats.rx_bytes += len; | 535 | priv->stats.rx_bytes += len; |
537 | priv->stats.rx_packets ++; | 536 | priv->stats.rx_packets ++; |
538 | } else { | 537 | } else { |
diff --git a/drivers/net/arm/at91_ether.c b/drivers/net/arm/at91_ether.c index e21dc2075ed8..442938d50380 100644 --- a/drivers/net/arm/at91_ether.c +++ b/drivers/net/arm/at91_ether.c | |||
@@ -893,7 +893,6 @@ static void at91ether_rx(struct net_device *dev) | |||
893 | memcpy(skb_put(skb, pktlen), p_recv, pktlen); | 893 | memcpy(skb_put(skb, pktlen), p_recv, pktlen); |
894 | 894 | ||
895 | skb->protocol = eth_type_trans(skb, dev); | 895 | skb->protocol = eth_type_trans(skb, dev); |
896 | dev->last_rx = jiffies; | ||
897 | dev->stats.rx_bytes += pktlen; | 896 | dev->stats.rx_bytes += pktlen; |
898 | netif_rx(skb); | 897 | netif_rx(skb); |
899 | } | 898 | } |
diff --git a/drivers/net/arm/ep93xx_eth.c b/drivers/net/arm/ep93xx_eth.c index 1267444d79da..588c9739d13d 100644 --- a/drivers/net/arm/ep93xx_eth.c +++ b/drivers/net/arm/ep93xx_eth.c | |||
@@ -259,8 +259,6 @@ static int ep93xx_rx(struct net_device *dev, int processed, int budget) | |||
259 | skb_put(skb, length); | 259 | skb_put(skb, length); |
260 | skb->protocol = eth_type_trans(skb, dev); | 260 | skb->protocol = eth_type_trans(skb, dev); |
261 | 261 | ||
262 | dev->last_rx = jiffies; | ||
263 | |||
264 | netif_receive_skb(skb); | 262 | netif_receive_skb(skb); |
265 | 263 | ||
266 | ep->stats.rx_packets++; | 264 | ep->stats.rx_packets++; |
diff --git a/drivers/net/arm/ixp4xx_eth.c b/drivers/net/arm/ixp4xx_eth.c index e2d702b8b2e4..14ffa2a61890 100644 --- a/drivers/net/arm/ixp4xx_eth.c +++ b/drivers/net/arm/ixp4xx_eth.c | |||
@@ -588,7 +588,6 @@ static int eth_poll(struct napi_struct *napi, int budget) | |||
588 | debug_pkt(dev, "eth_poll", skb->data, skb->len); | 588 | debug_pkt(dev, "eth_poll", skb->data, skb->len); |
589 | 589 | ||
590 | skb->protocol = eth_type_trans(skb, dev); | 590 | skb->protocol = eth_type_trans(skb, dev); |
591 | dev->last_rx = jiffies; | ||
592 | port->stat.rx_packets++; | 591 | port->stat.rx_packets++; |
593 | port->stat.rx_bytes += skb->len; | 592 | port->stat.rx_bytes += skb->len; |
594 | netif_receive_skb(skb); | 593 | netif_receive_skb(skb); |
diff --git a/drivers/net/at1700.c b/drivers/net/at1700.c index 18f724581841..2d4b5c31652e 100644 --- a/drivers/net/at1700.c +++ b/drivers/net/at1700.c | |||
@@ -767,7 +767,6 @@ net_rx(struct net_device *dev) | |||
767 | insw(ioaddr + DATAPORT, skb_put(skb,pkt_len), (pkt_len + 1) >> 1); | 767 | insw(ioaddr + DATAPORT, skb_put(skb,pkt_len), (pkt_len + 1) >> 1); |
768 | skb->protocol=eth_type_trans(skb, dev); | 768 | skb->protocol=eth_type_trans(skb, dev); |
769 | netif_rx(skb); | 769 | netif_rx(skb); |
770 | dev->last_rx = jiffies; | ||
771 | dev->stats.rx_packets++; | 770 | dev->stats.rx_packets++; |
772 | dev->stats.rx_bytes += pkt_len; | 771 | dev->stats.rx_bytes += pkt_len; |
773 | } | 772 | } |
diff --git a/drivers/net/atarilance.c b/drivers/net/atarilance.c index 5a94c49b4c45..701214b3b261 100644 --- a/drivers/net/atarilance.c +++ b/drivers/net/atarilance.c | |||
@@ -1030,7 +1030,6 @@ static int lance_rx( struct net_device *dev ) | |||
1030 | lp->memcpy_f( skb->data, PKTBUF_ADDR(head), pkt_len ); | 1030 | lp->memcpy_f( skb->data, PKTBUF_ADDR(head), pkt_len ); |
1031 | skb->protocol = eth_type_trans( skb, dev ); | 1031 | skb->protocol = eth_type_trans( skb, dev ); |
1032 | netif_rx( skb ); | 1032 | netif_rx( skb ); |
1033 | dev->last_rx = jiffies; | ||
1034 | dev->stats.rx_packets++; | 1033 | dev->stats.rx_packets++; |
1035 | dev->stats.rx_bytes += pkt_len; | 1034 | dev->stats.rx_bytes += pkt_len; |
1036 | } | 1035 | } |
diff --git a/drivers/net/atl1e/atl1e_main.c b/drivers/net/atl1e/atl1e_main.c index 9b603528143d..0f8c7525620c 100644 --- a/drivers/net/atl1e/atl1e_main.c +++ b/drivers/net/atl1e/atl1e_main.c | |||
@@ -1460,7 +1460,6 @@ static void atl1e_clean_rx_irq(struct atl1e_adapter *adapter, u8 que, | |||
1460 | netif_receive_skb(skb); | 1460 | netif_receive_skb(skb); |
1461 | } | 1461 | } |
1462 | 1462 | ||
1463 | netdev->last_rx = jiffies; | ||
1464 | skip_pkt: | 1463 | skip_pkt: |
1465 | /* skip current packet whether it's ok or not. */ | 1464 | /* skip current packet whether it's ok or not. */ |
1466 | rx_page->read_offset += | 1465 | rx_page->read_offset += |
diff --git a/drivers/net/atlx/atl1.c b/drivers/net/atlx/atl1.c index 3836e625ba58..09ed2fdd585b 100644 --- a/drivers/net/atlx/atl1.c +++ b/drivers/net/atlx/atl1.c | |||
@@ -2028,8 +2028,6 @@ rrd_ok: | |||
2028 | buffer_info->skb = NULL; | 2028 | buffer_info->skb = NULL; |
2029 | buffer_info->alloced = 0; | 2029 | buffer_info->alloced = 0; |
2030 | rrd->xsz.valid = 0; | 2030 | rrd->xsz.valid = 0; |
2031 | |||
2032 | adapter->netdev->last_rx = jiffies; | ||
2033 | } | 2031 | } |
2034 | 2032 | ||
2035 | atomic_set(&rrd_ring->next_to_clean, rrd_next_to_clean); | 2033 | atomic_set(&rrd_ring->next_to_clean, rrd_next_to_clean); |
diff --git a/drivers/net/atlx/atl2.c b/drivers/net/atlx/atl2.c index 21ca6dd78b18..60c9e5375eed 100644 --- a/drivers/net/atlx/atl2.c +++ b/drivers/net/atlx/atl2.c | |||
@@ -437,7 +437,6 @@ static void atl2_intr_rx(struct atl2_adapter *adapter) | |||
437 | netif_rx(skb); | 437 | netif_rx(skb); |
438 | netdev->stats.rx_bytes += rx_size; | 438 | netdev->stats.rx_bytes += rx_size; |
439 | netdev->stats.rx_packets++; | 439 | netdev->stats.rx_packets++; |
440 | netdev->last_rx = jiffies; | ||
441 | } else { | 440 | } else { |
442 | netdev->stats.rx_errors++; | 441 | netdev->stats.rx_errors++; |
443 | 442 | ||
diff --git a/drivers/net/au1000_eth.c b/drivers/net/au1000_eth.c index 019b13c08ae6..2b69b2bbd14c 100644 --- a/drivers/net/au1000_eth.c +++ b/drivers/net/au1000_eth.c | |||
@@ -1240,7 +1240,6 @@ static int au1000_rx(struct net_device *dev) | |||
1240 | /* next descriptor */ | 1240 | /* next descriptor */ |
1241 | prxd = aup->rx_dma_ring[aup->rx_head]; | 1241 | prxd = aup->rx_dma_ring[aup->rx_head]; |
1242 | buff_stat = prxd->buff_stat; | 1242 | buff_stat = prxd->buff_stat; |
1243 | dev->last_rx = jiffies; | ||
1244 | } | 1243 | } |
1245 | return 0; | 1244 | return 0; |
1246 | } | 1245 | } |
diff --git a/drivers/net/b44.c b/drivers/net/b44.c index 1978d25920d9..2c7a32eb92a5 100644 --- a/drivers/net/b44.c +++ b/drivers/net/b44.c | |||
@@ -829,7 +829,6 @@ static int b44_rx(struct b44 *bp, int budget) | |||
829 | skb->ip_summed = CHECKSUM_NONE; | 829 | skb->ip_summed = CHECKSUM_NONE; |
830 | skb->protocol = eth_type_trans(skb, bp->dev); | 830 | skb->protocol = eth_type_trans(skb, bp->dev); |
831 | netif_receive_skb(skb); | 831 | netif_receive_skb(skb); |
832 | bp->dev->last_rx = jiffies; | ||
833 | received++; | 832 | received++; |
834 | budget--; | 833 | budget--; |
835 | next_pkt: | 834 | next_pkt: |
diff --git a/drivers/net/bfin_mac.c b/drivers/net/bfin_mac.c index b458d607a9c6..78e31aa861e0 100644 --- a/drivers/net/bfin_mac.c +++ b/drivers/net/bfin_mac.c | |||
@@ -741,7 +741,6 @@ static void bfin_mac_rx(struct net_device *dev) | |||
741 | blackfin_dcache_invalidate_range((unsigned long)skb->head, | 741 | blackfin_dcache_invalidate_range((unsigned long)skb->head, |
742 | (unsigned long)skb->tail); | 742 | (unsigned long)skb->tail); |
743 | 743 | ||
744 | dev->last_rx = jiffies; | ||
745 | skb->protocol = eth_type_trans(skb, dev); | 744 | skb->protocol = eth_type_trans(skb, dev); |
746 | #if defined(BFIN_MAC_CSUM_OFFLOAD) | 745 | #if defined(BFIN_MAC_CSUM_OFFLOAD) |
747 | skb->csum = current_rx_ptr->status.ip_payload_csum; | 746 | skb->csum = current_rx_ptr->status.ip_payload_csum; |
diff --git a/drivers/net/bmac.c b/drivers/net/bmac.c index b141d0234e21..8a546a33d581 100644 --- a/drivers/net/bmac.c +++ b/drivers/net/bmac.c | |||
@@ -716,13 +716,11 @@ static irqreturn_t bmac_rxdma_intr(int irq, void *dev_id) | |||
716 | skb_put(skb, nb); | 716 | skb_put(skb, nb); |
717 | skb->protocol = eth_type_trans(skb, dev); | 717 | skb->protocol = eth_type_trans(skb, dev); |
718 | netif_rx(skb); | 718 | netif_rx(skb); |
719 | dev->last_rx = jiffies; | ||
720 | ++dev->stats.rx_packets; | 719 | ++dev->stats.rx_packets; |
721 | dev->stats.rx_bytes += nb; | 720 | dev->stats.rx_bytes += nb; |
722 | } else { | 721 | } else { |
723 | ++dev->stats.rx_dropped; | 722 | ++dev->stats.rx_dropped; |
724 | } | 723 | } |
725 | dev->last_rx = jiffies; | ||
726 | if ((skb = bp->rx_bufs[i]) == NULL) { | 724 | if ((skb = bp->rx_bufs[i]) == NULL) { |
727 | bp->rx_bufs[i] = skb = dev_alloc_skb(RX_BUFLEN+2); | 725 | bp->rx_bufs[i] = skb = dev_alloc_skb(RX_BUFLEN+2); |
728 | if (skb != NULL) | 726 | if (skb != NULL) |
diff --git a/drivers/net/bnx2.c b/drivers/net/bnx2.c index f2e8c3b3ee04..51b163a75aed 100644 --- a/drivers/net/bnx2.c +++ b/drivers/net/bnx2.c | |||
@@ -3000,7 +3000,6 @@ bnx2_rx_int(struct bnx2 *bp, struct bnx2_napi *bnapi, int budget) | |||
3000 | #endif | 3000 | #endif |
3001 | netif_receive_skb(skb); | 3001 | netif_receive_skb(skb); |
3002 | 3002 | ||
3003 | bp->dev->last_rx = jiffies; | ||
3004 | rx_pkt++; | 3003 | rx_pkt++; |
3005 | 3004 | ||
3006 | next_rx: | 3005 | next_rx: |
diff --git a/drivers/net/bnx2x_main.c b/drivers/net/bnx2x_main.c index 42965ad54f08..68d0ed3a50d7 100644 --- a/drivers/net/bnx2x_main.c +++ b/drivers/net/bnx2x_main.c | |||
@@ -1328,7 +1328,6 @@ static void bnx2x_tpa_stop(struct bnx2x *bp, struct bnx2x_fastpath *fp, | |||
1328 | dev_kfree_skb(skb); | 1328 | dev_kfree_skb(skb); |
1329 | } | 1329 | } |
1330 | 1330 | ||
1331 | bp->dev->last_rx = jiffies; | ||
1332 | 1331 | ||
1333 | /* put new skb in bin */ | 1332 | /* put new skb in bin */ |
1334 | fp->tpa_pool[queue].skb = new_skb; | 1333 | fp->tpa_pool[queue].skb = new_skb; |
@@ -1557,7 +1556,6 @@ reuse_rx: | |||
1557 | #endif | 1556 | #endif |
1558 | netif_receive_skb(skb); | 1557 | netif_receive_skb(skb); |
1559 | 1558 | ||
1560 | bp->dev->last_rx = jiffies; | ||
1561 | 1559 | ||
1562 | next_rx: | 1560 | next_rx: |
1563 | rx_buf->skb = NULL; | 1561 | rx_buf->skb = NULL; |
@@ -8767,7 +8765,6 @@ static int bnx2x_run_loopback(struct bnx2x *bp, int loopback_mode, u8 link_up) | |||
8767 | rc = 0; | 8765 | rc = 0; |
8768 | 8766 | ||
8769 | test_loopback_rx_exit: | 8767 | test_loopback_rx_exit: |
8770 | bp->dev->last_rx = jiffies; | ||
8771 | 8768 | ||
8772 | fp->rx_bd_cons = NEXT_RX_IDX(fp->rx_bd_cons); | 8769 | fp->rx_bd_cons = NEXT_RX_IDX(fp->rx_bd_cons); |
8773 | fp->rx_bd_prod = NEXT_RX_IDX(fp->rx_bd_prod); | 8770 | fp->rx_bd_prod = NEXT_RX_IDX(fp->rx_bd_prod); |
diff --git a/drivers/net/cassini.c b/drivers/net/cassini.c index a06931d76f94..bc84c4ca898e 100644 --- a/drivers/net/cassini.c +++ b/drivers/net/cassini.c | |||
@@ -2405,7 +2405,6 @@ static int cas_rx_ringN(struct cas *cp, int ring, int budget) | |||
2405 | cp->net_stats[ring].rx_packets++; | 2405 | cp->net_stats[ring].rx_packets++; |
2406 | cp->net_stats[ring].rx_bytes += len; | 2406 | cp->net_stats[ring].rx_bytes += len; |
2407 | spin_unlock(&cp->stat_lock[ring]); | 2407 | spin_unlock(&cp->stat_lock[ring]); |
2408 | cp->dev->last_rx = jiffies; | ||
2409 | 2408 | ||
2410 | next: | 2409 | next: |
2411 | npackets++; | 2410 | npackets++; |
diff --git a/drivers/net/chelsio/sge.c b/drivers/net/chelsio/sge.c index d6c7d2aa761b..fa0a1f129d37 100644 --- a/drivers/net/chelsio/sge.c +++ b/drivers/net/chelsio/sge.c | |||
@@ -1385,7 +1385,6 @@ static void sge_rx(struct sge *sge, struct freelQ *fl, unsigned int len) | |||
1385 | st = per_cpu_ptr(sge->port_stats[p->iff], smp_processor_id()); | 1385 | st = per_cpu_ptr(sge->port_stats[p->iff], smp_processor_id()); |
1386 | 1386 | ||
1387 | skb->protocol = eth_type_trans(skb, adapter->port[p->iff].dev); | 1387 | skb->protocol = eth_type_trans(skb, adapter->port[p->iff].dev); |
1388 | skb->dev->last_rx = jiffies; | ||
1389 | if ((adapter->flags & RX_CSUM_ENABLED) && p->csum == 0xffff && | 1388 | if ((adapter->flags & RX_CSUM_ENABLED) && p->csum == 0xffff && |
1390 | skb->protocol == htons(ETH_P_IP) && | 1389 | skb->protocol == htons(ETH_P_IP) && |
1391 | (skb->data[9] == IPPROTO_TCP || skb->data[9] == IPPROTO_UDP)) { | 1390 | (skb->data[9] == IPPROTO_TCP || skb->data[9] == IPPROTO_UDP)) { |
diff --git a/drivers/net/cs89x0.c b/drivers/net/cs89x0.c index 65174d3b9026..b063395c4a96 100644 --- a/drivers/net/cs89x0.c +++ b/drivers/net/cs89x0.c | |||
@@ -1024,7 +1024,6 @@ skip_this_frame: | |||
1024 | } | 1024 | } |
1025 | skb->protocol=eth_type_trans(skb,dev); | 1025 | skb->protocol=eth_type_trans(skb,dev); |
1026 | netif_rx(skb); | 1026 | netif_rx(skb); |
1027 | dev->last_rx = jiffies; | ||
1028 | lp->stats.rx_packets++; | 1027 | lp->stats.rx_packets++; |
1029 | lp->stats.rx_bytes += length; | 1028 | lp->stats.rx_bytes += length; |
1030 | } | 1029 | } |
@@ -1718,7 +1717,6 @@ net_rx(struct net_device *dev) | |||
1718 | 1717 | ||
1719 | skb->protocol=eth_type_trans(skb,dev); | 1718 | skb->protocol=eth_type_trans(skb,dev); |
1720 | netif_rx(skb); | 1719 | netif_rx(skb); |
1721 | dev->last_rx = jiffies; | ||
1722 | lp->stats.rx_packets++; | 1720 | lp->stats.rx_packets++; |
1723 | lp->stats.rx_bytes += length; | 1721 | lp->stats.rx_bytes += length; |
1724 | } | 1722 | } |
diff --git a/drivers/net/cxgb3/sge.c b/drivers/net/cxgb3/sge.c index c6480be0bc1f..268f15801ec6 100644 --- a/drivers/net/cxgb3/sge.c +++ b/drivers/net/cxgb3/sge.c | |||
@@ -1876,7 +1876,6 @@ static void rx_eth(struct adapter *adap, struct sge_rspq *rq, | |||
1876 | 1876 | ||
1877 | skb_pull(skb, sizeof(*p) + pad); | 1877 | skb_pull(skb, sizeof(*p) + pad); |
1878 | skb->protocol = eth_type_trans(skb, adap->port[p->iff]); | 1878 | skb->protocol = eth_type_trans(skb, adap->port[p->iff]); |
1879 | skb->dev->last_rx = jiffies; | ||
1880 | pi = netdev_priv(skb->dev); | 1879 | pi = netdev_priv(skb->dev); |
1881 | if (pi->rx_csum_offload && p->csum_valid && p->csum == htons(0xffff) && | 1880 | if (pi->rx_csum_offload && p->csum_valid && p->csum == htons(0xffff) && |
1882 | !p->fragment) { | 1881 | !p->fragment) { |
diff --git a/drivers/net/de600.c b/drivers/net/de600.c index 2826c7473e5e..970f820ba814 100644 --- a/drivers/net/de600.c +++ b/drivers/net/de600.c | |||
@@ -369,7 +369,6 @@ static void de600_rx_intr(struct net_device *dev) | |||
369 | netif_rx(skb); | 369 | netif_rx(skb); |
370 | 370 | ||
371 | /* update stats */ | 371 | /* update stats */ |
372 | dev->last_rx = jiffies; | ||
373 | dev->stats.rx_packets++; /* count all receives */ | 372 | dev->stats.rx_packets++; /* count all receives */ |
374 | dev->stats.rx_bytes += size; /* count all received bytes */ | 373 | dev->stats.rx_bytes += size; /* count all received bytes */ |
375 | 374 | ||
diff --git a/drivers/net/de620.c b/drivers/net/de620.c index 643b1ea08414..0d4b6acc11a6 100644 --- a/drivers/net/de620.c +++ b/drivers/net/de620.c | |||
@@ -686,7 +686,6 @@ static int de620_rx_intr(struct net_device *dev) | |||
686 | PRINTK(("Read %d bytes\n", size)); | 686 | PRINTK(("Read %d bytes\n", size)); |
687 | skb->protocol=eth_type_trans(skb,dev); | 687 | skb->protocol=eth_type_trans(skb,dev); |
688 | netif_rx(skb); /* deliver it "upstairs" */ | 688 | netif_rx(skb); /* deliver it "upstairs" */ |
689 | dev->last_rx = jiffies; | ||
690 | /* count all receives */ | 689 | /* count all receives */ |
691 | dev->stats.rx_packets++; | 690 | dev->stats.rx_packets++; |
692 | dev->stats.rx_bytes += size; | 691 | dev->stats.rx_bytes += size; |
diff --git a/drivers/net/declance.c b/drivers/net/declance.c index df01ad3e7984..f6988d7fb618 100644 --- a/drivers/net/declance.c +++ b/drivers/net/declance.c | |||
@@ -622,7 +622,6 @@ static int lance_rx(struct net_device *dev) | |||
622 | 622 | ||
623 | skb->protocol = eth_type_trans(skb, dev); | 623 | skb->protocol = eth_type_trans(skb, dev); |
624 | netif_rx(skb); | 624 | netif_rx(skb); |
625 | dev->last_rx = jiffies; | ||
626 | dev->stats.rx_packets++; | 625 | dev->stats.rx_packets++; |
627 | } | 626 | } |
628 | 627 | ||
diff --git a/drivers/net/defxx.c b/drivers/net/defxx.c index c062aacf229c..f07887435247 100644 --- a/drivers/net/defxx.c +++ b/drivers/net/defxx.c | |||
@@ -3103,7 +3103,6 @@ static void dfx_rcv_queue_process( | |||
3103 | netif_rx(skb); | 3103 | netif_rx(skb); |
3104 | 3104 | ||
3105 | /* Update the rcv counters */ | 3105 | /* Update the rcv counters */ |
3106 | bp->dev->last_rx = jiffies; | ||
3107 | bp->rcv_total_frames++; | 3106 | bp->rcv_total_frames++; |
3108 | if (*(p_buff + RCV_BUFF_K_DA) & 0x01) | 3107 | if (*(p_buff + RCV_BUFF_K_DA) & 0x01) |
3109 | bp->rcv_multicast_frames++; | 3108 | bp->rcv_multicast_frames++; |
diff --git a/drivers/net/depca.c b/drivers/net/depca.c index bf6401f8d144..fda1226d8ec1 100644 --- a/drivers/net/depca.c +++ b/drivers/net/depca.c | |||
@@ -1056,7 +1056,6 @@ static int depca_rx(struct net_device *dev) | |||
1056 | /* | 1056 | /* |
1057 | ** Update stats | 1057 | ** Update stats |
1058 | */ | 1058 | */ |
1059 | dev->last_rx = jiffies; | ||
1060 | dev->stats.rx_packets++; | 1059 | dev->stats.rx_packets++; |
1061 | dev->stats.rx_bytes += pkt_len; | 1060 | dev->stats.rx_bytes += pkt_len; |
1062 | for (i = 1; i < DEPCA_PKT_STAT_SZ - 1; i++) { | 1061 | for (i = 1; i < DEPCA_PKT_STAT_SZ - 1; i++) { |
diff --git a/drivers/net/dl2k.c b/drivers/net/dl2k.c index f9e405a8a844..9ec9785a9fc3 100644 --- a/drivers/net/dl2k.c +++ b/drivers/net/dl2k.c | |||
@@ -891,7 +891,6 @@ receive_packet (struct net_device *dev) | |||
891 | } | 891 | } |
892 | #endif | 892 | #endif |
893 | netif_rx (skb); | 893 | netif_rx (skb); |
894 | dev->last_rx = jiffies; | ||
895 | } | 894 | } |
896 | entry = (entry + 1) % RX_RING_SIZE; | 895 | entry = (entry + 1) % RX_RING_SIZE; |
897 | } | 896 | } |
diff --git a/drivers/net/e100.c b/drivers/net/e100.c index 084127fe0813..62cdefa2a4f0 100644 --- a/drivers/net/e100.c +++ b/drivers/net/e100.c | |||
@@ -1880,7 +1880,6 @@ static int e100_rx_indicate(struct nic *nic, struct rx *rx, | |||
1880 | } else { | 1880 | } else { |
1881 | dev->stats.rx_packets++; | 1881 | dev->stats.rx_packets++; |
1882 | dev->stats.rx_bytes += actual_size; | 1882 | dev->stats.rx_bytes += actual_size; |
1883 | nic->netdev->last_rx = jiffies; | ||
1884 | netif_receive_skb(skb); | 1883 | netif_receive_skb(skb); |
1885 | if(work_done) | 1884 | if(work_done) |
1886 | (*work_done)++; | 1885 | (*work_done)++; |
diff --git a/drivers/net/e1000/e1000_main.c b/drivers/net/e1000/e1000_main.c index 07b38fbe4e03..78a4250e004f 100644 --- a/drivers/net/e1000/e1000_main.c +++ b/drivers/net/e1000/e1000_main.c | |||
@@ -4099,8 +4099,6 @@ static bool e1000_clean_rx_irq(struct e1000_adapter *adapter, | |||
4099 | netif_receive_skb(skb); | 4099 | netif_receive_skb(skb); |
4100 | } | 4100 | } |
4101 | 4101 | ||
4102 | netdev->last_rx = jiffies; | ||
4103 | |||
4104 | next_desc: | 4102 | next_desc: |
4105 | rx_desc->status = 0; | 4103 | rx_desc->status = 0; |
4106 | 4104 | ||
diff --git a/drivers/net/e1000e/netdev.c b/drivers/net/e1000e/netdev.c index a5c9266cd7ce..63e5688011e8 100644 --- a/drivers/net/e1000e/netdev.c +++ b/drivers/net/e1000e/netdev.c | |||
@@ -103,8 +103,6 @@ static void e1000_receive_skb(struct e1000_adapter *adapter, | |||
103 | le16_to_cpu(vlan)); | 103 | le16_to_cpu(vlan)); |
104 | else | 104 | else |
105 | netif_receive_skb(skb); | 105 | netif_receive_skb(skb); |
106 | |||
107 | netdev->last_rx = jiffies; | ||
108 | } | 106 | } |
109 | 107 | ||
110 | /** | 108 | /** |
diff --git a/drivers/net/eepro.c b/drivers/net/eepro.c index 5f72362b782d..93387f16c2ea 100644 --- a/drivers/net/eepro.c +++ b/drivers/net/eepro.c | |||
@@ -1580,7 +1580,6 @@ eepro_rx(struct net_device *dev) | |||
1580 | 1580 | ||
1581 | skb->protocol = eth_type_trans(skb,dev); | 1581 | skb->protocol = eth_type_trans(skb,dev); |
1582 | netif_rx(skb); | 1582 | netif_rx(skb); |
1583 | dev->last_rx = jiffies; | ||
1584 | dev->stats.rx_packets++; | 1583 | dev->stats.rx_packets++; |
1585 | } | 1584 | } |
1586 | 1585 | ||
diff --git a/drivers/net/eexpress.c b/drivers/net/eexpress.c index b751c1b96cfa..a125e41240f5 100644 --- a/drivers/net/eexpress.c +++ b/drivers/net/eexpress.c | |||
@@ -967,7 +967,6 @@ static void eexp_hw_rx_pio(struct net_device *dev) | |||
967 | insw(ioaddr+DATAPORT, skb_put(skb,pkt_len),(pkt_len+1)>>1); | 967 | insw(ioaddr+DATAPORT, skb_put(skb,pkt_len),(pkt_len+1)>>1); |
968 | skb->protocol = eth_type_trans(skb,dev); | 968 | skb->protocol = eth_type_trans(skb,dev); |
969 | netif_rx(skb); | 969 | netif_rx(skb); |
970 | dev->last_rx = jiffies; | ||
971 | dev->stats.rx_packets++; | 970 | dev->stats.rx_packets++; |
972 | dev->stats.rx_bytes += pkt_len; | 971 | dev->stats.rx_bytes += pkt_len; |
973 | } | 972 | } |
diff --git a/drivers/net/ehea/ehea_main.c b/drivers/net/ehea/ehea_main.c index 422fcb93e2c3..44c9ae18383f 100644 --- a/drivers/net/ehea/ehea_main.c +++ b/drivers/net/ehea/ehea_main.c | |||
@@ -728,7 +728,6 @@ static int ehea_proc_rwqes(struct net_device *dev, | |||
728 | } | 728 | } |
729 | 729 | ||
730 | ehea_proc_skb(pr, cqe, skb); | 730 | ehea_proc_skb(pr, cqe, skb); |
731 | dev->last_rx = jiffies; | ||
732 | } else { | 731 | } else { |
733 | pr->p_stats.poll_receive_errors++; | 732 | pr->p_stats.poll_receive_errors++; |
734 | port_reset = ehea_treat_poll_error(pr, rq, cqe, | 733 | port_reset = ehea_treat_poll_error(pr, rq, cqe, |
diff --git a/drivers/net/enc28j60.c b/drivers/net/enc28j60.c index a5c7bd4532d0..d186a52cdb62 100644 --- a/drivers/net/enc28j60.c +++ b/drivers/net/enc28j60.c | |||
@@ -944,7 +944,6 @@ static void enc28j60_hw_rx(struct net_device *ndev) | |||
944 | /* update statistics */ | 944 | /* update statistics */ |
945 | ndev->stats.rx_packets++; | 945 | ndev->stats.rx_packets++; |
946 | ndev->stats.rx_bytes += len; | 946 | ndev->stats.rx_bytes += len; |
947 | ndev->last_rx = jiffies; | ||
948 | netif_rx(skb); | 947 | netif_rx(skb); |
949 | } | 948 | } |
950 | } | 949 | } |
diff --git a/drivers/net/enic/enic_main.c b/drivers/net/enic/enic_main.c index 180e968dc54d..8594d7f8fe66 100644 --- a/drivers/net/enic/enic_main.c +++ b/drivers/net/enic/enic_main.c | |||
@@ -951,7 +951,6 @@ static void enic_rq_indicate_buf(struct vnic_rq *rq, | |||
951 | } | 951 | } |
952 | 952 | ||
953 | skb->dev = enic->netdev; | 953 | skb->dev = enic->netdev; |
954 | enic->netdev->last_rx = jiffies; | ||
955 | 954 | ||
956 | if (enic->vlan_group && vlan_stripped) { | 955 | if (enic->vlan_group && vlan_stripped) { |
957 | 956 | ||
diff --git a/drivers/net/epic100.c b/drivers/net/epic100.c index 65a404076abe..6f399bdc5f72 100644 --- a/drivers/net/epic100.c +++ b/drivers/net/epic100.c | |||
@@ -1222,7 +1222,6 @@ static int epic_rx(struct net_device *dev, int budget) | |||
1222 | } | 1222 | } |
1223 | skb->protocol = eth_type_trans(skb, dev); | 1223 | skb->protocol = eth_type_trans(skb, dev); |
1224 | netif_receive_skb(skb); | 1224 | netif_receive_skb(skb); |
1225 | dev->last_rx = jiffies; | ||
1226 | ep->stats.rx_packets++; | 1225 | ep->stats.rx_packets++; |
1227 | ep->stats.rx_bytes += pkt_len; | 1226 | ep->stats.rx_bytes += pkt_len; |
1228 | } | 1227 | } |
diff --git a/drivers/net/eth16i.c b/drivers/net/eth16i.c index bee8b3fbc565..88b1be05d428 100644 --- a/drivers/net/eth16i.c +++ b/drivers/net/eth16i.c | |||
@@ -1205,7 +1205,6 @@ static void eth16i_rx(struct net_device *dev) | |||
1205 | printk(KERN_DEBUG ".\n"); | 1205 | printk(KERN_DEBUG ".\n"); |
1206 | } | 1206 | } |
1207 | netif_rx(skb); | 1207 | netif_rx(skb); |
1208 | dev->last_rx = jiffies; | ||
1209 | dev->stats.rx_packets++; | 1208 | dev->stats.rx_packets++; |
1210 | dev->stats.rx_bytes += pkt_len; | 1209 | dev->stats.rx_bytes += pkt_len; |
1211 | 1210 | ||
diff --git a/drivers/net/ewrk3.c b/drivers/net/ewrk3.c index 3ab2156905f0..f3b664aafb82 100644 --- a/drivers/net/ewrk3.c +++ b/drivers/net/ewrk3.c | |||
@@ -1026,7 +1026,6 @@ static int ewrk3_rx(struct net_device *dev) | |||
1026 | /* | 1026 | /* |
1027 | ** Update stats | 1027 | ** Update stats |
1028 | */ | 1028 | */ |
1029 | dev->last_rx = jiffies; | ||
1030 | dev->stats.rx_packets++; | 1029 | dev->stats.rx_packets++; |
1031 | dev->stats.rx_bytes += pkt_len; | 1030 | dev->stats.rx_bytes += pkt_len; |
1032 | } else { | 1031 | } else { |
diff --git a/drivers/net/fealnx.c b/drivers/net/fealnx.c index 61c7cbba88be..31ab1ff623fc 100644 --- a/drivers/net/fealnx.c +++ b/drivers/net/fealnx.c | |||
@@ -1726,7 +1726,6 @@ static int netdev_rx(struct net_device *dev) | |||
1726 | } | 1726 | } |
1727 | skb->protocol = eth_type_trans(skb, dev); | 1727 | skb->protocol = eth_type_trans(skb, dev); |
1728 | netif_rx(skb); | 1728 | netif_rx(skb); |
1729 | dev->last_rx = jiffies; | ||
1730 | np->stats.rx_packets++; | 1729 | np->stats.rx_packets++; |
1731 | np->stats.rx_bytes += pkt_len; | 1730 | np->stats.rx_bytes += pkt_len; |
1732 | } | 1731 | } |
diff --git a/drivers/net/fec_mpc52xx.c b/drivers/net/fec_mpc52xx.c index aec3b97e794d..94054b4981f3 100644 --- a/drivers/net/fec_mpc52xx.c +++ b/drivers/net/fec_mpc52xx.c | |||
@@ -487,7 +487,6 @@ static irqreturn_t mpc52xx_fec_rx_interrupt(int irq, void *dev_id) | |||
487 | rskb->protocol = eth_type_trans(rskb, dev); | 487 | rskb->protocol = eth_type_trans(rskb, dev); |
488 | 488 | ||
489 | netif_rx(rskb); | 489 | netif_rx(rskb); |
490 | dev->last_rx = jiffies; | ||
491 | } else { | 490 | } else { |
492 | /* Can't get a new one : reuse the same & drop pkt */ | 491 | /* Can't get a new one : reuse the same & drop pkt */ |
493 | dev_notice(&dev->dev, "Memory squeeze, dropping packet.\n"); | 492 | dev_notice(&dev->dev, "Memory squeeze, dropping packet.\n"); |
diff --git a/drivers/net/forcedeth.c b/drivers/net/forcedeth.c index 0b12e48d5f37..765210ea097d 100644 --- a/drivers/net/forcedeth.c +++ b/drivers/net/forcedeth.c | |||
@@ -2735,7 +2735,6 @@ static int nv_rx_process(struct net_device *dev, int limit) | |||
2735 | #else | 2735 | #else |
2736 | netif_rx(skb); | 2736 | netif_rx(skb); |
2737 | #endif | 2737 | #endif |
2738 | dev->last_rx = jiffies; | ||
2739 | dev->stats.rx_packets++; | 2738 | dev->stats.rx_packets++; |
2740 | dev->stats.rx_bytes += len; | 2739 | dev->stats.rx_bytes += len; |
2741 | next_pkt: | 2740 | next_pkt: |
@@ -2848,7 +2847,6 @@ static int nv_rx_process_optimized(struct net_device *dev, int limit) | |||
2848 | } | 2847 | } |
2849 | } | 2848 | } |
2850 | 2849 | ||
2851 | dev->last_rx = jiffies; | ||
2852 | dev->stats.rx_packets++; | 2850 | dev->stats.rx_packets++; |
2853 | dev->stats.rx_bytes += len; | 2851 | dev->stats.rx_bytes += len; |
2854 | } else { | 2852 | } else { |
diff --git a/drivers/net/gianfar.c b/drivers/net/gianfar.c index 013525f3c3bd..a091db393615 100644 --- a/drivers/net/gianfar.c +++ b/drivers/net/gianfar.c | |||
@@ -1693,8 +1693,6 @@ int gfar_clean_rx_ring(struct net_device *dev, int rx_work_limit) | |||
1693 | dev->stats.rx_bytes += pkt_len; | 1693 | dev->stats.rx_bytes += pkt_len; |
1694 | } | 1694 | } |
1695 | 1695 | ||
1696 | dev->last_rx = jiffies; | ||
1697 | |||
1698 | priv->rx_skbuff[priv->skb_currx] = newskb; | 1696 | priv->rx_skbuff[priv->skb_currx] = newskb; |
1699 | 1697 | ||
1700 | /* Setup the new bdp */ | 1698 | /* Setup the new bdp */ |
diff --git a/drivers/net/hamachi.c b/drivers/net/hamachi.c index 1dc0fd061bfc..77f2b2934e67 100644 --- a/drivers/net/hamachi.c +++ b/drivers/net/hamachi.c | |||
@@ -1645,7 +1645,6 @@ static int hamachi_rx(struct net_device *dev) | |||
1645 | #endif /* RX_CHECKSUM */ | 1645 | #endif /* RX_CHECKSUM */ |
1646 | 1646 | ||
1647 | netif_rx(skb); | 1647 | netif_rx(skb); |
1648 | dev->last_rx = jiffies; | ||
1649 | hmp->stats.rx_packets++; | 1648 | hmp->stats.rx_packets++; |
1650 | } | 1649 | } |
1651 | entry = (++hmp->cur_rx) % RX_RING_SIZE; | 1650 | entry = (++hmp->cur_rx) % RX_RING_SIZE; |
diff --git a/drivers/net/hamradio/6pack.c b/drivers/net/hamradio/6pack.c index 0f501d2ca935..50f1e172ee8f 100644 --- a/drivers/net/hamradio/6pack.c +++ b/drivers/net/hamradio/6pack.c | |||
@@ -373,7 +373,6 @@ static void sp_bump(struct sixpack *sp, char cmd) | |||
373 | memcpy(ptr, sp->cooked_buf + 1, count); | 373 | memcpy(ptr, sp->cooked_buf + 1, count); |
374 | skb->protocol = ax25_type_trans(skb, sp->dev); | 374 | skb->protocol = ax25_type_trans(skb, sp->dev); |
375 | netif_rx(skb); | 375 | netif_rx(skb); |
376 | sp->dev->last_rx = jiffies; | ||
377 | sp->dev->stats.rx_packets++; | 376 | sp->dev->stats.rx_packets++; |
378 | 377 | ||
379 | return; | 378 | return; |
diff --git a/drivers/net/hamradio/baycom_epp.c b/drivers/net/hamradio/baycom_epp.c index 00bc7fbb6b37..81a65e3a1c05 100644 --- a/drivers/net/hamradio/baycom_epp.c +++ b/drivers/net/hamradio/baycom_epp.c | |||
@@ -555,7 +555,6 @@ static void do_rxpacket(struct net_device *dev) | |||
555 | memcpy(cp, bc->hdlcrx.buf, pktlen - 1); | 555 | memcpy(cp, bc->hdlcrx.buf, pktlen - 1); |
556 | skb->protocol = ax25_type_trans(skb, dev); | 556 | skb->protocol = ax25_type_trans(skb, dev); |
557 | netif_rx(skb); | 557 | netif_rx(skb); |
558 | dev->last_rx = jiffies; | ||
559 | bc->stats.rx_packets++; | 558 | bc->stats.rx_packets++; |
560 | } | 559 | } |
561 | 560 | ||
diff --git a/drivers/net/hamradio/bpqether.c b/drivers/net/hamradio/bpqether.c index 74529c832ad1..46f8f3390e7d 100644 --- a/drivers/net/hamradio/bpqether.c +++ b/drivers/net/hamradio/bpqether.c | |||
@@ -230,7 +230,6 @@ static int bpq_rcv(struct sk_buff *skb, struct net_device *dev, struct packet_ty | |||
230 | 230 | ||
231 | skb->protocol = ax25_type_trans(skb, dev); | 231 | skb->protocol = ax25_type_trans(skb, dev); |
232 | netif_rx(skb); | 232 | netif_rx(skb); |
233 | dev->last_rx = jiffies; | ||
234 | unlock: | 233 | unlock: |
235 | 234 | ||
236 | rcu_read_unlock(); | 235 | rcu_read_unlock(); |
diff --git a/drivers/net/hamradio/dmascc.c b/drivers/net/hamradio/dmascc.c index e8cfadefa4b6..7e4611442237 100644 --- a/drivers/net/hamradio/dmascc.c +++ b/drivers/net/hamradio/dmascc.c | |||
@@ -1283,7 +1283,6 @@ static void rx_bh(struct work_struct *ugli_api) | |||
1283 | memcpy(&data[1], priv->rx_buf[i], cb); | 1283 | memcpy(&data[1], priv->rx_buf[i], cb); |
1284 | skb->protocol = ax25_type_trans(skb, priv->dev); | 1284 | skb->protocol = ax25_type_trans(skb, priv->dev); |
1285 | netif_rx(skb); | 1285 | netif_rx(skb); |
1286 | priv->dev->last_rx = jiffies; | ||
1287 | priv->stats.rx_packets++; | 1286 | priv->stats.rx_packets++; |
1288 | priv->stats.rx_bytes += cb; | 1287 | priv->stats.rx_bytes += cb; |
1289 | } | 1288 | } |
diff --git a/drivers/net/hamradio/hdlcdrv.c b/drivers/net/hamradio/hdlcdrv.c index c258a0586e61..8eba61a1d4ab 100644 --- a/drivers/net/hamradio/hdlcdrv.c +++ b/drivers/net/hamradio/hdlcdrv.c | |||
@@ -162,7 +162,6 @@ static void hdlc_rx_flag(struct net_device *dev, struct hdlcdrv_state *s) | |||
162 | memcpy(cp, s->hdlcrx.buffer, pkt_len - 1); | 162 | memcpy(cp, s->hdlcrx.buffer, pkt_len - 1); |
163 | skb->protocol = ax25_type_trans(skb, dev); | 163 | skb->protocol = ax25_type_trans(skb, dev); |
164 | netif_rx(skb); | 164 | netif_rx(skb); |
165 | dev->last_rx = jiffies; | ||
166 | s->stats.rx_packets++; | 165 | s->stats.rx_packets++; |
167 | } | 166 | } |
168 | 167 | ||
diff --git a/drivers/net/hamradio/mkiss.c b/drivers/net/hamradio/mkiss.c index b8e25c4624d2..7570c73f18c0 100644 --- a/drivers/net/hamradio/mkiss.c +++ b/drivers/net/hamradio/mkiss.c | |||
@@ -303,7 +303,6 @@ static void ax_bump(struct mkiss *ax) | |||
303 | memcpy(skb_put(skb,count), ax->rbuff, count); | 303 | memcpy(skb_put(skb,count), ax->rbuff, count); |
304 | skb->protocol = ax25_type_trans(skb, ax->dev); | 304 | skb->protocol = ax25_type_trans(skb, ax->dev); |
305 | netif_rx(skb); | 305 | netif_rx(skb); |
306 | ax->dev->last_rx = jiffies; | ||
307 | ax->stats.rx_packets++; | 306 | ax->stats.rx_packets++; |
308 | ax->stats.rx_bytes += count; | 307 | ax->stats.rx_bytes += count; |
309 | spin_unlock_bh(&ax->buflock); | 308 | spin_unlock_bh(&ax->buflock); |
diff --git a/drivers/net/hamradio/scc.c b/drivers/net/hamradio/scc.c index c17e39bc5460..802d1c7c4af1 100644 --- a/drivers/net/hamradio/scc.c +++ b/drivers/net/hamradio/scc.c | |||
@@ -1627,7 +1627,6 @@ static void scc_net_rx(struct scc_channel *scc, struct sk_buff *skb) | |||
1627 | skb->protocol = ax25_type_trans(skb, scc->dev); | 1627 | skb->protocol = ax25_type_trans(skb, scc->dev); |
1628 | 1628 | ||
1629 | netif_rx(skb); | 1629 | netif_rx(skb); |
1630 | scc->dev->last_rx = jiffies; | ||
1631 | return; | 1630 | return; |
1632 | } | 1631 | } |
1633 | 1632 | ||
diff --git a/drivers/net/hamradio/yam.c b/drivers/net/hamradio/yam.c index 1c942862a3f4..5407f7486c9c 100644 --- a/drivers/net/hamradio/yam.c +++ b/drivers/net/hamradio/yam.c | |||
@@ -515,7 +515,6 @@ static inline void yam_rx_flag(struct net_device *dev, struct yam_port *yp) | |||
515 | memcpy(cp, yp->rx_buf, pkt_len - 1); | 515 | memcpy(cp, yp->rx_buf, pkt_len - 1); |
516 | skb->protocol = ax25_type_trans(skb, dev); | 516 | skb->protocol = ax25_type_trans(skb, dev); |
517 | netif_rx(skb); | 517 | netif_rx(skb); |
518 | dev->last_rx = jiffies; | ||
519 | ++yp->stats.rx_packets; | 518 | ++yp->stats.rx_packets; |
520 | } | 519 | } |
521 | } | 520 | } |
diff --git a/drivers/net/hp100.c b/drivers/net/hp100.c index fd34452c05b1..4dda9b043b13 100644 --- a/drivers/net/hp100.c +++ b/drivers/net/hp100.c | |||
@@ -1834,7 +1834,6 @@ static void hp100_rx(struct net_device *dev) | |||
1834 | ptr[9], ptr[10], ptr[11]); | 1834 | ptr[9], ptr[10], ptr[11]); |
1835 | #endif | 1835 | #endif |
1836 | netif_rx(skb); | 1836 | netif_rx(skb); |
1837 | dev->last_rx = jiffies; | ||
1838 | lp->stats.rx_packets++; | 1837 | lp->stats.rx_packets++; |
1839 | lp->stats.rx_bytes += pkt_len; | 1838 | lp->stats.rx_bytes += pkt_len; |
1840 | } | 1839 | } |
@@ -1925,7 +1924,6 @@ static void hp100_rx_bm(struct net_device *dev) | |||
1925 | 1924 | ||
1926 | netif_rx(ptr->skb); /* Up and away... */ | 1925 | netif_rx(ptr->skb); /* Up and away... */ |
1927 | 1926 | ||
1928 | dev->last_rx = jiffies; | ||
1929 | lp->stats.rx_packets++; | 1927 | lp->stats.rx_packets++; |
1930 | lp->stats.rx_bytes += pkt_len; | 1928 | lp->stats.rx_bytes += pkt_len; |
1931 | } | 1929 | } |
diff --git a/drivers/net/ibmlana.c b/drivers/net/ibmlana.c index 0fad08c4ccd2..5b5bf9f9861a 100644 --- a/drivers/net/ibmlana.c +++ b/drivers/net/ibmlana.c | |||
@@ -605,7 +605,6 @@ static void irqrx_handler(struct net_device *dev) | |||
605 | skb->ip_summed = CHECKSUM_NONE; | 605 | skb->ip_summed = CHECKSUM_NONE; |
606 | 606 | ||
607 | /* bookkeeping */ | 607 | /* bookkeeping */ |
608 | dev->last_rx = jiffies; | ||
609 | dev->stats.rx_packets++; | 608 | dev->stats.rx_packets++; |
610 | dev->stats.rx_bytes += rda.length; | 609 | dev->stats.rx_bytes += rda.length; |
611 | 610 | ||
diff --git a/drivers/net/ibmveth.c b/drivers/net/ibmveth.c index 9dc49588cba8..2c409570c5d8 100644 --- a/drivers/net/ibmveth.c +++ b/drivers/net/ibmveth.c | |||
@@ -1014,7 +1014,6 @@ static int ibmveth_poll(struct napi_struct *napi, int budget) | |||
1014 | netdev->stats.rx_packets++; | 1014 | netdev->stats.rx_packets++; |
1015 | netdev->stats.rx_bytes += length; | 1015 | netdev->stats.rx_bytes += length; |
1016 | frames_processed++; | 1016 | frames_processed++; |
1017 | netdev->last_rx = jiffies; | ||
1018 | } | 1017 | } |
1019 | } while (frames_processed < budget); | 1018 | } while (frames_processed < budget); |
1020 | 1019 | ||
diff --git a/drivers/net/igb/igb_main.c b/drivers/net/igb/igb_main.c index 3b42665ef1d4..89ffc0757e01 100644 --- a/drivers/net/igb/igb_main.c +++ b/drivers/net/igb/igb_main.c | |||
@@ -3940,8 +3940,6 @@ send_up: | |||
3940 | 3940 | ||
3941 | igb_receive_skb(rx_ring, staterr, rx_desc, skb); | 3941 | igb_receive_skb(rx_ring, staterr, rx_desc, skb); |
3942 | 3942 | ||
3943 | netdev->last_rx = jiffies; | ||
3944 | |||
3945 | next_desc: | 3943 | next_desc: |
3946 | rx_desc->wb.upper.status_error = 0; | 3944 | rx_desc->wb.upper.status_error = 0; |
3947 | 3945 | ||
diff --git a/drivers/net/ioc3-eth.c b/drivers/net/ioc3-eth.c index afac65e46773..170b12d1d70e 100644 --- a/drivers/net/ioc3-eth.c +++ b/drivers/net/ioc3-eth.c | |||
@@ -621,7 +621,6 @@ static inline void ioc3_rx(struct ioc3_private *ip) | |||
621 | rxb = (struct ioc3_erxbuf *) new_skb->data; | 621 | rxb = (struct ioc3_erxbuf *) new_skb->data; |
622 | skb_reserve(new_skb, RX_OFFSET); | 622 | skb_reserve(new_skb, RX_OFFSET); |
623 | 623 | ||
624 | priv_netdev(ip)->last_rx = jiffies; | ||
625 | ip->stats.rx_packets++; /* Statistics */ | 624 | ip->stats.rx_packets++; /* Statistics */ |
626 | ip->stats.rx_bytes += len; | 625 | ip->stats.rx_bytes += len; |
627 | } else { | 626 | } else { |
diff --git a/drivers/net/ipg.c b/drivers/net/ipg.c index 7373dafbb3f7..24c777aff5c6 100644 --- a/drivers/net/ipg.c +++ b/drivers/net/ipg.c | |||
@@ -1222,7 +1222,6 @@ static void ipg_nic_rx_with_start_and_end(struct net_device *dev, | |||
1222 | skb->protocol = eth_type_trans(skb, dev); | 1222 | skb->protocol = eth_type_trans(skb, dev); |
1223 | skb->ip_summed = CHECKSUM_NONE; | 1223 | skb->ip_summed = CHECKSUM_NONE; |
1224 | netif_rx(skb); | 1224 | netif_rx(skb); |
1225 | dev->last_rx = jiffies; | ||
1226 | sp->rx_buff[entry] = NULL; | 1225 | sp->rx_buff[entry] = NULL; |
1227 | } | 1226 | } |
1228 | 1227 | ||
@@ -1256,7 +1255,6 @@ static void ipg_nic_rx_with_start(struct net_device *dev, | |||
1256 | jumbo->skb = skb; | 1255 | jumbo->skb = skb; |
1257 | 1256 | ||
1258 | sp->rx_buff[entry] = NULL; | 1257 | sp->rx_buff[entry] = NULL; |
1259 | dev->last_rx = jiffies; | ||
1260 | } | 1258 | } |
1261 | 1259 | ||
1262 | static void ipg_nic_rx_with_end(struct net_device *dev, | 1260 | static void ipg_nic_rx_with_end(struct net_device *dev, |
@@ -1292,7 +1290,6 @@ static void ipg_nic_rx_with_end(struct net_device *dev, | |||
1292 | } | 1290 | } |
1293 | } | 1291 | } |
1294 | 1292 | ||
1295 | dev->last_rx = jiffies; | ||
1296 | jumbo->found_start = 0; | 1293 | jumbo->found_start = 0; |
1297 | jumbo->current_size = 0; | 1294 | jumbo->current_size = 0; |
1298 | jumbo->skb = NULL; | 1295 | jumbo->skb = NULL; |
@@ -1325,7 +1322,6 @@ static void ipg_nic_rx_no_start_no_end(struct net_device *dev, | |||
1325 | skb->data, sp->rxfrag_size); | 1322 | skb->data, sp->rxfrag_size); |
1326 | } | 1323 | } |
1327 | } | 1324 | } |
1328 | dev->last_rx = jiffies; | ||
1329 | ipg_nic_rx_free_skb(dev); | 1325 | ipg_nic_rx_free_skb(dev); |
1330 | } | 1326 | } |
1331 | } else { | 1327 | } else { |
@@ -1494,11 +1490,6 @@ static int ipg_nic_rx(struct net_device *dev) | |||
1494 | * when processing completes. | 1490 | * when processing completes. |
1495 | */ | 1491 | */ |
1496 | netif_rx(skb); | 1492 | netif_rx(skb); |
1497 | |||
1498 | /* Record frame receive time (jiffies = Linux | ||
1499 | * kernel current time stamp). | ||
1500 | */ | ||
1501 | dev->last_rx = jiffies; | ||
1502 | } | 1493 | } |
1503 | 1494 | ||
1504 | /* Assure RX buffer is not reused by IPG. */ | 1495 | /* Assure RX buffer is not reused by IPG. */ |
diff --git a/drivers/net/irda/ali-ircc.c b/drivers/net/irda/ali-ircc.c index 2ff181861d2d..9fde748c41f2 100644 --- a/drivers/net/irda/ali-ircc.c +++ b/drivers/net/irda/ali-ircc.c | |||
@@ -1931,7 +1931,6 @@ static int ali_ircc_dma_receive_complete(struct ali_ircc_cb *self) | |||
1931 | skb_reset_mac_header(skb); | 1931 | skb_reset_mac_header(skb); |
1932 | skb->protocol = htons(ETH_P_IRDA); | 1932 | skb->protocol = htons(ETH_P_IRDA); |
1933 | netif_rx(skb); | 1933 | netif_rx(skb); |
1934 | self->netdev->last_rx = jiffies; | ||
1935 | } | 1934 | } |
1936 | } | 1935 | } |
1937 | 1936 | ||
diff --git a/drivers/net/irda/au1k_ir.c b/drivers/net/irda/au1k_ir.c index a1e4508717c8..6c4b53ffbcac 100644 --- a/drivers/net/irda/au1k_ir.c +++ b/drivers/net/irda/au1k_ir.c | |||
@@ -620,7 +620,6 @@ static int au1k_irda_rx(struct net_device *dev) | |||
620 | /* next descriptor */ | 620 | /* next descriptor */ |
621 | prxd = aup->rx_ring[aup->rx_head]; | 621 | prxd = aup->rx_ring[aup->rx_head]; |
622 | flags = prxd->flags; | 622 | flags = prxd->flags; |
623 | dev->last_rx = jiffies; | ||
624 | 623 | ||
625 | } | 624 | } |
626 | return 0; | 625 | return 0; |
diff --git a/drivers/net/irda/irda-usb.c b/drivers/net/irda/irda-usb.c index b5d6b9ac162a..761ed8ca6e37 100644 --- a/drivers/net/irda/irda-usb.c +++ b/drivers/net/irda/irda-usb.c | |||
@@ -929,7 +929,6 @@ static void irda_usb_receive(struct urb *urb) | |||
929 | /* Keep stats up to date */ | 929 | /* Keep stats up to date */ |
930 | self->stats.rx_bytes += len; | 930 | self->stats.rx_bytes += len; |
931 | self->stats.rx_packets++; | 931 | self->stats.rx_packets++; |
932 | self->netdev->last_rx = jiffies; | ||
933 | 932 | ||
934 | done: | 933 | done: |
935 | /* Note : at this point, the URB we've just received (urb) | 934 | /* Note : at this point, the URB we've just received (urb) |
diff --git a/drivers/net/irda/kingsun-sir.c b/drivers/net/irda/kingsun-sir.c index e1429fc6d050..c747c874d44d 100644 --- a/drivers/net/irda/kingsun-sir.c +++ b/drivers/net/irda/kingsun-sir.c | |||
@@ -235,7 +235,6 @@ static void kingsun_rcv_irq(struct urb *urb) | |||
235 | &kingsun->stats, | 235 | &kingsun->stats, |
236 | &kingsun->rx_buff, bytes[i]); | 236 | &kingsun->rx_buff, bytes[i]); |
237 | } | 237 | } |
238 | kingsun->netdev->last_rx = jiffies; | ||
239 | do_gettimeofday(&kingsun->rx_time); | 238 | do_gettimeofday(&kingsun->rx_time); |
240 | kingsun->receiving = | 239 | kingsun->receiving = |
241 | (kingsun->rx_buff.state != OUTSIDE_FRAME) | 240 | (kingsun->rx_buff.state != OUTSIDE_FRAME) |
diff --git a/drivers/net/irda/ks959-sir.c b/drivers/net/irda/ks959-sir.c index 2482d61662a2..f59d5b6b7bfe 100644 --- a/drivers/net/irda/ks959-sir.c +++ b/drivers/net/irda/ks959-sir.c | |||
@@ -475,7 +475,6 @@ static void ks959_rcv_irq(struct urb *urb) | |||
475 | bytes[i]); | 475 | bytes[i]); |
476 | } | 476 | } |
477 | } | 477 | } |
478 | kingsun->netdev->last_rx = jiffies; | ||
479 | do_gettimeofday(&kingsun->rx_time); | 478 | do_gettimeofday(&kingsun->rx_time); |
480 | kingsun->receiving = | 479 | kingsun->receiving = |
481 | (kingsun->rx_unwrap_buff.state != OUTSIDE_FRAME) ? 1 : 0; | 480 | (kingsun->rx_unwrap_buff.state != OUTSIDE_FRAME) ? 1 : 0; |
diff --git a/drivers/net/irda/ksdazzle-sir.c b/drivers/net/irda/ksdazzle-sir.c index 1e0de93fd618..6c39f3f6d4e6 100644 --- a/drivers/net/irda/ksdazzle-sir.c +++ b/drivers/net/irda/ksdazzle-sir.c | |||
@@ -372,7 +372,6 @@ static void ksdazzle_rcv_irq(struct urb *urb) | |||
372 | async_unwrap_char(kingsun->netdev, &kingsun->stats, | 372 | async_unwrap_char(kingsun->netdev, &kingsun->stats, |
373 | &kingsun->rx_unwrap_buff, bytes[i]); | 373 | &kingsun->rx_unwrap_buff, bytes[i]); |
374 | } | 374 | } |
375 | kingsun->netdev->last_rx = jiffies; | ||
376 | kingsun->receiving = | 375 | kingsun->receiving = |
377 | (kingsun->rx_unwrap_buff.state != OUTSIDE_FRAME) ? 1 : 0; | 376 | (kingsun->rx_unwrap_buff.state != OUTSIDE_FRAME) ? 1 : 0; |
378 | } | 377 | } |
diff --git a/drivers/net/irda/mcs7780.c b/drivers/net/irda/mcs7780.c index ad92d3ff1c40..904c9610c0dd 100644 --- a/drivers/net/irda/mcs7780.c +++ b/drivers/net/irda/mcs7780.c | |||
@@ -806,7 +806,6 @@ static void mcs_receive_irq(struct urb *urb) | |||
806 | mcs_unwrap_fir(mcs, urb->transfer_buffer, | 806 | mcs_unwrap_fir(mcs, urb->transfer_buffer, |
807 | urb->actual_length); | 807 | urb->actual_length); |
808 | } | 808 | } |
809 | mcs->netdev->last_rx = jiffies; | ||
810 | do_gettimeofday(&mcs->rx_time); | 809 | do_gettimeofday(&mcs->rx_time); |
811 | } | 810 | } |
812 | 811 | ||
diff --git a/drivers/net/irda/nsc-ircc.c b/drivers/net/irda/nsc-ircc.c index 8583d951a6ad..4e1bc08971a8 100644 --- a/drivers/net/irda/nsc-ircc.c +++ b/drivers/net/irda/nsc-ircc.c | |||
@@ -1896,7 +1896,6 @@ static int nsc_ircc_dma_receive_complete(struct nsc_ircc_cb *self, int iobase) | |||
1896 | skb_reset_mac_header(skb); | 1896 | skb_reset_mac_header(skb); |
1897 | skb->protocol = htons(ETH_P_IRDA); | 1897 | skb->protocol = htons(ETH_P_IRDA); |
1898 | netif_rx(skb); | 1898 | netif_rx(skb); |
1899 | self->netdev->last_rx = jiffies; | ||
1900 | } | 1899 | } |
1901 | } | 1900 | } |
1902 | /* Restore bank register */ | 1901 | /* Restore bank register */ |
diff --git a/drivers/net/irda/pxaficp_ir.c b/drivers/net/irda/pxaficp_ir.c index c5b02b66f756..a0ee05318155 100644 --- a/drivers/net/irda/pxaficp_ir.c +++ b/drivers/net/irda/pxaficp_ir.c | |||
@@ -225,7 +225,6 @@ static irqreturn_t pxa_irda_sir_irq(int irq, void *dev_id) | |||
225 | } | 225 | } |
226 | lsr = STLSR; | 226 | lsr = STLSR; |
227 | } | 227 | } |
228 | dev->last_rx = jiffies; | ||
229 | si->last_oscr = OSCR; | 228 | si->last_oscr = OSCR; |
230 | break; | 229 | break; |
231 | 230 | ||
@@ -237,7 +236,6 @@ static irqreturn_t pxa_irda_sir_irq(int irq, void *dev_id) | |||
237 | si->stats.rx_bytes++; | 236 | si->stats.rx_bytes++; |
238 | async_unwrap_char(dev, &si->stats, &si->rx_buff, STRBR); | 237 | async_unwrap_char(dev, &si->stats, &si->rx_buff, STRBR); |
239 | } while (STLSR & LSR_DR); | 238 | } while (STLSR & LSR_DR); |
240 | dev->last_rx = jiffies; | ||
241 | si->last_oscr = OSCR; | 239 | si->last_oscr = OSCR; |
242 | break; | 240 | break; |
243 | 241 | ||
@@ -397,8 +395,6 @@ static void pxa_irda_fir_irq_eif(struct pxa_irda *si, struct net_device *dev, in | |||
397 | 395 | ||
398 | si->stats.rx_packets++; | 396 | si->stats.rx_packets++; |
399 | si->stats.rx_bytes += len; | 397 | si->stats.rx_bytes += len; |
400 | |||
401 | dev->last_rx = jiffies; | ||
402 | } | 398 | } |
403 | } | 399 | } |
404 | 400 | ||
diff --git a/drivers/net/irda/sa1100_ir.c b/drivers/net/irda/sa1100_ir.c index a95188948de7..aa6fef8ff130 100644 --- a/drivers/net/irda/sa1100_ir.c +++ b/drivers/net/irda/sa1100_ir.c | |||
@@ -410,7 +410,6 @@ static void sa1100_irda_hpsir_irq(struct net_device *dev) | |||
410 | Ser2UTDR); | 410 | Ser2UTDR); |
411 | } while (Ser2UTSR1 & UTSR1_RNE); | 411 | } while (Ser2UTSR1 & UTSR1_RNE); |
412 | 412 | ||
413 | dev->last_rx = jiffies; | ||
414 | } | 413 | } |
415 | 414 | ||
416 | if (status & UTSR0_TFS && si->tx_buff.len) { | 415 | if (status & UTSR0_TFS && si->tx_buff.len) { |
@@ -515,7 +514,6 @@ static void sa1100_irda_fir_error(struct sa1100_irda *si, struct net_device *dev | |||
515 | sa1100_irda_rx_alloc(si); | 514 | sa1100_irda_rx_alloc(si); |
516 | 515 | ||
517 | netif_rx(skb); | 516 | netif_rx(skb); |
518 | dev->last_rx = jiffies; | ||
519 | } else { | 517 | } else { |
520 | /* | 518 | /* |
521 | * Remap the buffer. | 519 | * Remap the buffer. |
diff --git a/drivers/net/irda/stir4200.c b/drivers/net/irda/stir4200.c index 3575804fd7c6..ca4cd9266e55 100644 --- a/drivers/net/irda/stir4200.c +++ b/drivers/net/irda/stir4200.c | |||
@@ -824,7 +824,6 @@ static void stir_rcv_irq(struct urb *urb) | |||
824 | unwrap_chars(stir, urb->transfer_buffer, | 824 | unwrap_chars(stir, urb->transfer_buffer, |
825 | urb->actual_length); | 825 | urb->actual_length); |
826 | 826 | ||
827 | stir->netdev->last_rx = jiffies; | ||
828 | do_gettimeofday(&stir->rx_time); | 827 | do_gettimeofday(&stir->rx_time); |
829 | } | 828 | } |
830 | 829 | ||
diff --git a/drivers/net/irda/vlsi_ir.c b/drivers/net/irda/vlsi_ir.c index 9c926d205de9..a3d27d78fc89 100644 --- a/drivers/net/irda/vlsi_ir.c +++ b/drivers/net/irda/vlsi_ir.c | |||
@@ -600,7 +600,6 @@ static int vlsi_process_rx(struct vlsi_ring *r, struct ring_descr *rd) | |||
600 | netif_rx(skb); | 600 | netif_rx(skb); |
601 | else | 601 | else |
602 | netif_rx_ni(skb); | 602 | netif_rx_ni(skb); |
603 | ndev->last_rx = jiffies; | ||
604 | 603 | ||
605 | done: | 604 | done: |
606 | rd_set_status(rd, 0); | 605 | rd_set_status(rd, 0); |
diff --git a/drivers/net/irda/w83977af_ir.c b/drivers/net/irda/w83977af_ir.c index 002a6d769f21..fa600200ac01 100644 --- a/drivers/net/irda/w83977af_ir.c +++ b/drivers/net/irda/w83977af_ir.c | |||
@@ -923,7 +923,6 @@ int w83977af_dma_receive_complete(struct w83977af_ir *self) | |||
923 | skb_reset_mac_header(skb); | 923 | skb_reset_mac_header(skb); |
924 | skb->protocol = htons(ETH_P_IRDA); | 924 | skb->protocol = htons(ETH_P_IRDA); |
925 | netif_rx(skb); | 925 | netif_rx(skb); |
926 | self->netdev->last_rx = jiffies; | ||
927 | } | 926 | } |
928 | } | 927 | } |
929 | /* Restore set register */ | 928 | /* Restore set register */ |
diff --git a/drivers/net/isa-skeleton.c b/drivers/net/isa-skeleton.c index 1c8d72b01247..15ebae9b98d4 100644 --- a/drivers/net/isa-skeleton.c +++ b/drivers/net/isa-skeleton.c | |||
@@ -583,7 +583,6 @@ net_rx(struct net_device *dev) | |||
583 | insw(ioaddr, skb->data, (pkt_len + 1) >> 1); | 583 | insw(ioaddr, skb->data, (pkt_len + 1) >> 1); |
584 | 584 | ||
585 | netif_rx(skb); | 585 | netif_rx(skb); |
586 | dev->last_rx = jiffies; | ||
587 | lp->stats.rx_packets++; | 586 | lp->stats.rx_packets++; |
588 | lp->stats.rx_bytes += pkt_len; | 587 | lp->stats.rx_bytes += pkt_len; |
589 | } | 588 | } |
diff --git a/drivers/net/ixgb/ixgb_main.c b/drivers/net/ixgb/ixgb_main.c index 21995dff1fa4..cb7d1a6d3434 100644 --- a/drivers/net/ixgb/ixgb_main.c +++ b/drivers/net/ixgb/ixgb_main.c | |||
@@ -1980,7 +1980,6 @@ ixgb_clean_rx_irq(struct ixgb_adapter *adapter, int *work_done, int work_to_do) | |||
1980 | } else { | 1980 | } else { |
1981 | netif_receive_skb(skb); | 1981 | netif_receive_skb(skb); |
1982 | } | 1982 | } |
1983 | netdev->last_rx = jiffies; | ||
1984 | 1983 | ||
1985 | rxdesc_done: | 1984 | rxdesc_done: |
1986 | /* clean up descriptor, might be written over by hw */ | 1985 | /* clean up descriptor, might be written over by hw */ |
diff --git a/drivers/net/ixgbe/ixgbe_main.c b/drivers/net/ixgbe/ixgbe_main.c index 2a12e97d5efe..b3be579b47ed 100644 --- a/drivers/net/ixgbe/ixgbe_main.c +++ b/drivers/net/ixgbe/ixgbe_main.c | |||
@@ -668,7 +668,6 @@ static bool ixgbe_clean_rx_irq(struct ixgbe_adapter *adapter, | |||
668 | 668 | ||
669 | skb->protocol = eth_type_trans(skb, adapter->netdev); | 669 | skb->protocol = eth_type_trans(skb, adapter->netdev); |
670 | ixgbe_receive_skb(adapter, skb, staterr, rx_ring, rx_desc); | 670 | ixgbe_receive_skb(adapter, skb, staterr, rx_ring, rx_desc); |
671 | adapter->netdev->last_rx = jiffies; | ||
672 | 671 | ||
673 | next_desc: | 672 | next_desc: |
674 | rx_desc->wb.upper.status_error = 0; | 673 | rx_desc->wb.upper.status_error = 0; |
diff --git a/drivers/net/ixp2000/ixpdev.c b/drivers/net/ixp2000/ixpdev.c index 7b70c66504a0..bd96dbc8e021 100644 --- a/drivers/net/ixp2000/ixpdev.c +++ b/drivers/net/ixp2000/ixpdev.c | |||
@@ -114,8 +114,6 @@ static int ixpdev_rx(struct net_device *dev, int processed, int budget) | |||
114 | skb_put(skb, desc->pkt_length); | 114 | skb_put(skb, desc->pkt_length); |
115 | skb->protocol = eth_type_trans(skb, nds[desc->channel]); | 115 | skb->protocol = eth_type_trans(skb, nds[desc->channel]); |
116 | 116 | ||
117 | dev->last_rx = jiffies; | ||
118 | |||
119 | netif_receive_skb(skb); | 117 | netif_receive_skb(skb); |
120 | } | 118 | } |
121 | 119 | ||
diff --git a/drivers/net/jme.c b/drivers/net/jme.c index a10c68700e0e..0796d0b0e338 100644 --- a/drivers/net/jme.c +++ b/drivers/net/jme.c | |||
@@ -931,7 +931,6 @@ jme_alloc_and_feed_skb(struct jme_adapter *jme, int idx) | |||
931 | RXWBFLAG_DEST_MUL) | 931 | RXWBFLAG_DEST_MUL) |
932 | ++(NET_STAT(jme).multicast); | 932 | ++(NET_STAT(jme).multicast); |
933 | 933 | ||
934 | jme->dev->last_rx = jiffies; | ||
935 | NET_STAT(jme).rx_bytes += framesize; | 934 | NET_STAT(jme).rx_bytes += framesize; |
936 | ++(NET_STAT(jme).rx_packets); | 935 | ++(NET_STAT(jme).rx_packets); |
937 | } | 936 | } |
diff --git a/drivers/net/korina.c b/drivers/net/korina.c index e18576316bda..63626953f07e 100644 --- a/drivers/net/korina.c +++ b/drivers/net/korina.c | |||
@@ -409,7 +409,6 @@ static int korina_rx(struct net_device *dev, int limit) | |||
409 | 409 | ||
410 | /* Pass the packet to upper layers */ | 410 | /* Pass the packet to upper layers */ |
411 | netif_receive_skb(skb); | 411 | netif_receive_skb(skb); |
412 | dev->last_rx = jiffies; | ||
413 | dev->stats.rx_packets++; | 412 | dev->stats.rx_packets++; |
414 | dev->stats.rx_bytes += pkt_len; | 413 | dev->stats.rx_bytes += pkt_len; |
415 | 414 | ||
diff --git a/drivers/net/lance.c b/drivers/net/lance.c index 4ab536de24a8..f63789affb1a 100644 --- a/drivers/net/lance.c +++ b/drivers/net/lance.c | |||
@@ -1190,7 +1190,6 @@ lance_rx(struct net_device *dev) | |||
1190 | pkt_len); | 1190 | pkt_len); |
1191 | skb->protocol=eth_type_trans(skb,dev); | 1191 | skb->protocol=eth_type_trans(skb,dev); |
1192 | netif_rx(skb); | 1192 | netif_rx(skb); |
1193 | dev->last_rx = jiffies; | ||
1194 | lp->stats.rx_packets++; | 1193 | lp->stats.rx_packets++; |
1195 | lp->stats.rx_bytes+=pkt_len; | 1194 | lp->stats.rx_bytes+=pkt_len; |
1196 | } | 1195 | } |
diff --git a/drivers/net/lib82596.c b/drivers/net/lib82596.c index cc8f64197a90..7415f517491d 100644 --- a/drivers/net/lib82596.c +++ b/drivers/net/lib82596.c | |||
@@ -739,7 +739,6 @@ memory_squeeze: | |||
739 | skb->len = pkt_len; | 739 | skb->len = pkt_len; |
740 | skb->protocol = eth_type_trans(skb, dev); | 740 | skb->protocol = eth_type_trans(skb, dev); |
741 | netif_rx(skb); | 741 | netif_rx(skb); |
742 | dev->last_rx = jiffies; | ||
743 | dev->stats.rx_packets++; | 742 | dev->stats.rx_packets++; |
744 | dev->stats.rx_bytes += pkt_len; | 743 | dev->stats.rx_bytes += pkt_len; |
745 | } | 744 | } |
diff --git a/drivers/net/lib8390.c b/drivers/net/lib8390.c index f80dcc11fe26..9430167a3b13 100644 --- a/drivers/net/lib8390.c +++ b/drivers/net/lib8390.c | |||
@@ -764,7 +764,6 @@ static void ei_receive(struct net_device *dev) | |||
764 | ei_block_input(dev, pkt_len, skb, current_offset + sizeof(rx_frame)); | 764 | ei_block_input(dev, pkt_len, skb, current_offset + sizeof(rx_frame)); |
765 | skb->protocol=eth_type_trans(skb,dev); | 765 | skb->protocol=eth_type_trans(skb,dev); |
766 | netif_rx(skb); | 766 | netif_rx(skb); |
767 | dev->last_rx = jiffies; | ||
768 | dev->stats.rx_packets++; | 767 | dev->stats.rx_packets++; |
769 | dev->stats.rx_bytes += pkt_len; | 768 | dev->stats.rx_bytes += pkt_len; |
770 | if (pkt_stat & ENRSR_PHY) | 769 | if (pkt_stat & ENRSR_PHY) |
diff --git a/drivers/net/loopback.c b/drivers/net/loopback.c index b1ac63ab8c16..91d08585a6d8 100644 --- a/drivers/net/loopback.c +++ b/drivers/net/loopback.c | |||
@@ -76,8 +76,6 @@ static int loopback_xmit(struct sk_buff *skb, struct net_device *dev) | |||
76 | 76 | ||
77 | skb->protocol = eth_type_trans(skb,dev); | 77 | skb->protocol = eth_type_trans(skb,dev); |
78 | 78 | ||
79 | dev->last_rx = jiffies; | ||
80 | |||
81 | /* it's OK to use per_cpu_ptr() because BHs are off */ | 79 | /* it's OK to use per_cpu_ptr() because BHs are off */ |
82 | pcpu_lstats = dev->ml_priv; | 80 | pcpu_lstats = dev->ml_priv; |
83 | lb_stats = per_cpu_ptr(pcpu_lstats, smp_processor_id()); | 81 | lb_stats = per_cpu_ptr(pcpu_lstats, smp_processor_id()); |
diff --git a/drivers/net/lp486e.c b/drivers/net/lp486e.c index 83fa9d82a004..d6b0036abafa 100644 --- a/drivers/net/lp486e.c +++ b/drivers/net/lp486e.c | |||
@@ -676,7 +676,6 @@ i596_rx_one(struct net_device *dev, struct i596_private *lp, | |||
676 | 676 | ||
677 | skb->protocol = eth_type_trans(skb,dev); | 677 | skb->protocol = eth_type_trans(skb,dev); |
678 | netif_rx(skb); | 678 | netif_rx(skb); |
679 | dev->last_rx = jiffies; | ||
680 | dev->stats.rx_packets++; | 679 | dev->stats.rx_packets++; |
681 | } else { | 680 | } else { |
682 | #if 0 | 681 | #if 0 |
diff --git a/drivers/net/mac89x0.c b/drivers/net/mac89x0.c index ca9c5a858679..2ee477c84b06 100644 --- a/drivers/net/mac89x0.c +++ b/drivers/net/mac89x0.c | |||
@@ -516,7 +516,6 @@ net_rx(struct net_device *dev) | |||
516 | 516 | ||
517 | skb->protocol=eth_type_trans(skb,dev); | 517 | skb->protocol=eth_type_trans(skb,dev); |
518 | netif_rx(skb); | 518 | netif_rx(skb); |
519 | dev->last_rx = jiffies; | ||
520 | lp->stats.rx_packets++; | 519 | lp->stats.rx_packets++; |
521 | lp->stats.rx_bytes += length; | 520 | lp->stats.rx_bytes += length; |
522 | } | 521 | } |
diff --git a/drivers/net/macb.c b/drivers/net/macb.c index e00c896d0c9b..261b9507124b 100644 --- a/drivers/net/macb.c +++ b/drivers/net/macb.c | |||
@@ -435,7 +435,6 @@ static int macb_rx_frame(struct macb *bp, unsigned int first_frag, | |||
435 | 435 | ||
436 | bp->stats.rx_packets++; | 436 | bp->stats.rx_packets++; |
437 | bp->stats.rx_bytes += len; | 437 | bp->stats.rx_bytes += len; |
438 | bp->dev->last_rx = jiffies; | ||
439 | dev_dbg(&bp->pdev->dev, "received skb of length %u, csum: %08x\n", | 438 | dev_dbg(&bp->pdev->dev, "received skb of length %u, csum: %08x\n", |
440 | skb->len, skb->csum); | 439 | skb->len, skb->csum); |
441 | netif_receive_skb(skb); | 440 | netif_receive_skb(skb); |
diff --git a/drivers/net/mace.c b/drivers/net/mace.c index a2021c0103b3..b52f0507845f 100644 --- a/drivers/net/mace.c +++ b/drivers/net/mace.c | |||
@@ -928,7 +928,6 @@ static irqreturn_t mace_rxdma_intr(int irq, void *dev_id) | |||
928 | skb->protocol = eth_type_trans(skb, dev); | 928 | skb->protocol = eth_type_trans(skb, dev); |
929 | dev->stats.rx_bytes += skb->len; | 929 | dev->stats.rx_bytes += skb->len; |
930 | netif_rx(skb); | 930 | netif_rx(skb); |
931 | dev->last_rx = jiffies; | ||
932 | mp->rx_bufs[i] = NULL; | 931 | mp->rx_bufs[i] = NULL; |
933 | ++dev->stats.rx_packets; | 932 | ++dev->stats.rx_packets; |
934 | } | 933 | } |
diff --git a/drivers/net/macmace.c b/drivers/net/macmace.c index 0b28318789a3..274e99bb63ac 100644 --- a/drivers/net/macmace.c +++ b/drivers/net/macmace.c | |||
@@ -673,7 +673,6 @@ static void mace_dma_rx_frame(struct net_device *dev, struct mace_frame *mf) | |||
673 | 673 | ||
674 | skb->protocol = eth_type_trans(skb, dev); | 674 | skb->protocol = eth_type_trans(skb, dev); |
675 | netif_rx(skb); | 675 | netif_rx(skb); |
676 | dev->last_rx = jiffies; | ||
677 | dev->stats.rx_packets++; | 676 | dev->stats.rx_packets++; |
678 | dev->stats.rx_bytes += frame_length; | 677 | dev->stats.rx_bytes += frame_length; |
679 | } | 678 | } |
diff --git a/drivers/net/macvlan.c b/drivers/net/macvlan.c index 1d2de0b77a2c..cabde9ab0e4a 100644 --- a/drivers/net/macvlan.c +++ b/drivers/net/macvlan.c | |||
@@ -84,7 +84,6 @@ static void macvlan_broadcast(struct sk_buff *skb, | |||
84 | dev->stats.rx_bytes += skb->len + ETH_HLEN; | 84 | dev->stats.rx_bytes += skb->len + ETH_HLEN; |
85 | dev->stats.rx_packets++; | 85 | dev->stats.rx_packets++; |
86 | dev->stats.multicast++; | 86 | dev->stats.multicast++; |
87 | dev->last_rx = jiffies; | ||
88 | 87 | ||
89 | nskb->dev = dev; | 88 | nskb->dev = dev; |
90 | if (!compare_ether_addr(eth->h_dest, dev->broadcast)) | 89 | if (!compare_ether_addr(eth->h_dest, dev->broadcast)) |
@@ -133,7 +132,6 @@ static struct sk_buff *macvlan_handle_frame(struct sk_buff *skb) | |||
133 | 132 | ||
134 | dev->stats.rx_bytes += skb->len + ETH_HLEN; | 133 | dev->stats.rx_bytes += skb->len + ETH_HLEN; |
135 | dev->stats.rx_packets++; | 134 | dev->stats.rx_packets++; |
136 | dev->last_rx = jiffies; | ||
137 | 135 | ||
138 | skb->dev = dev; | 136 | skb->dev = dev; |
139 | skb->pkt_type = PACKET_HOST; | 137 | skb->pkt_type = PACKET_HOST; |
diff --git a/drivers/net/meth.c b/drivers/net/meth.c index 621133b45f8f..c336a1f42510 100644 --- a/drivers/net/meth.c +++ b/drivers/net/meth.c | |||
@@ -420,7 +420,6 @@ static void meth_rx(struct net_device* dev, unsigned long int_status) | |||
420 | skb_put(skb_c, len); | 420 | skb_put(skb_c, len); |
421 | priv->rx_skbs[priv->rx_write] = skb; | 421 | priv->rx_skbs[priv->rx_write] = skb; |
422 | skb_c->protocol = eth_type_trans(skb_c, dev); | 422 | skb_c->protocol = eth_type_trans(skb_c, dev); |
423 | dev->last_rx = jiffies; | ||
424 | dev->stats.rx_packets++; | 423 | dev->stats.rx_packets++; |
425 | dev->stats.rx_bytes += len; | 424 | dev->stats.rx_bytes += len; |
426 | netif_rx(skb_c); | 425 | netif_rx(skb_c); |
diff --git a/drivers/net/mlx4/en_rx.c b/drivers/net/mlx4/en_rx.c index 6232227f56c3..944ad47c9519 100644 --- a/drivers/net/mlx4/en_rx.c +++ b/drivers/net/mlx4/en_rx.c | |||
@@ -776,8 +776,6 @@ int mlx4_en_process_rx_cq(struct net_device *dev, struct mlx4_en_cq *cq, int bud | |||
776 | } else | 776 | } else |
777 | netif_receive_skb(skb); | 777 | netif_receive_skb(skb); |
778 | 778 | ||
779 | dev->last_rx = jiffies; | ||
780 | |||
781 | next: | 779 | next: |
782 | ++cq->mcq.cons_index; | 780 | ++cq->mcq.cons_index; |
783 | index = (cq->mcq.cons_index) & ring->size_mask; | 781 | index = (cq->mcq.cons_index) & ring->size_mask; |
diff --git a/drivers/net/mv643xx_eth.c b/drivers/net/mv643xx_eth.c index 3a759d0a7d1a..e521d2cebad6 100644 --- a/drivers/net/mv643xx_eth.c +++ b/drivers/net/mv643xx_eth.c | |||
@@ -557,8 +557,6 @@ static int rxq_process(struct rx_queue *rxq, int budget) | |||
557 | skb->protocol = eth_type_trans(skb, mp->dev); | 557 | skb->protocol = eth_type_trans(skb, mp->dev); |
558 | netif_receive_skb(skb); | 558 | netif_receive_skb(skb); |
559 | } | 559 | } |
560 | |||
561 | mp->dev->last_rx = jiffies; | ||
562 | } | 560 | } |
563 | 561 | ||
564 | if (rx < budget) | 562 | if (rx < budget) |
diff --git a/drivers/net/myri10ge/myri10ge.c b/drivers/net/myri10ge/myri10ge.c index d2cbc7d55b10..72afe0aa6ca2 100644 --- a/drivers/net/myri10ge/myri10ge.c +++ b/drivers/net/myri10ge/myri10ge.c | |||
@@ -1334,7 +1334,6 @@ myri10ge_rx_done(struct myri10ge_slice_state *ss, struct myri10ge_rx_buf *rx, | |||
1334 | myri10ge_vlan_ip_csum(skb, csum); | 1334 | myri10ge_vlan_ip_csum(skb, csum); |
1335 | } | 1335 | } |
1336 | netif_receive_skb(skb); | 1336 | netif_receive_skb(skb); |
1337 | dev->last_rx = jiffies; | ||
1338 | return 1; | 1337 | return 1; |
1339 | } | 1338 | } |
1340 | 1339 | ||
diff --git a/drivers/net/myri_sbus.c b/drivers/net/myri_sbus.c index 1bbdde199220..a78d4b992616 100644 --- a/drivers/net/myri_sbus.c +++ b/drivers/net/myri_sbus.c | |||
@@ -525,7 +525,6 @@ static void myri_rx(struct myri_eth *mp, struct net_device *dev) | |||
525 | DRX(("prot[%04x] netif_rx ", skb->protocol)); | 525 | DRX(("prot[%04x] netif_rx ", skb->protocol)); |
526 | netif_rx(skb); | 526 | netif_rx(skb); |
527 | 527 | ||
528 | dev->last_rx = jiffies; | ||
529 | dev->stats.rx_packets++; | 528 | dev->stats.rx_packets++; |
530 | dev->stats.rx_bytes += len; | 529 | dev->stats.rx_bytes += len; |
531 | next: | 530 | next: |
diff --git a/drivers/net/natsemi.c b/drivers/net/natsemi.c index 5f1de803feeb..9f81fcb96882 100644 --- a/drivers/net/natsemi.c +++ b/drivers/net/natsemi.c | |||
@@ -2361,7 +2361,6 @@ static void netdev_rx(struct net_device *dev, int *work_done, int work_to_do) | |||
2361 | } | 2361 | } |
2362 | skb->protocol = eth_type_trans(skb, dev); | 2362 | skb->protocol = eth_type_trans(skb, dev); |
2363 | netif_receive_skb(skb); | 2363 | netif_receive_skb(skb); |
2364 | dev->last_rx = jiffies; | ||
2365 | np->stats.rx_packets++; | 2364 | np->stats.rx_packets++; |
2366 | np->stats.rx_bytes += pkt_len; | 2365 | np->stats.rx_bytes += pkt_len; |
2367 | } | 2366 | } |
diff --git a/drivers/net/netx-eth.c b/drivers/net/netx-eth.c index b9bed82e1d21..b418771f6811 100644 --- a/drivers/net/netx-eth.c +++ b/drivers/net/netx-eth.c | |||
@@ -165,7 +165,6 @@ static void netx_eth_receive(struct net_device *ndev) | |||
165 | pfifo_push(EMPTY_PTR_FIFO(priv->id), | 165 | pfifo_push(EMPTY_PTR_FIFO(priv->id), |
166 | FIFO_PTR_SEGMENT(seg) | FIFO_PTR_FRAMENO(frameno)); | 166 | FIFO_PTR_SEGMENT(seg) | FIFO_PTR_FRAMENO(frameno)); |
167 | 167 | ||
168 | ndev->last_rx = jiffies; | ||
169 | skb->protocol = eth_type_trans(skb, ndev); | 168 | skb->protocol = eth_type_trans(skb, ndev); |
170 | netif_rx(skb); | 169 | netif_rx(skb); |
171 | ndev->stats.rx_packets++; | 170 | ndev->stats.rx_packets++; |
diff --git a/drivers/net/netxen/netxen_nic_init.c b/drivers/net/netxen/netxen_nic_init.c index 5bba675d0504..d924468e506e 100644 --- a/drivers/net/netxen/netxen_nic_init.c +++ b/drivers/net/netxen/netxen_nic_init.c | |||
@@ -1285,9 +1285,7 @@ static void netxen_process_rcv(struct netxen_adapter *adapter, int ctxid, | |||
1285 | } | 1285 | } |
1286 | adapter->stats.rxdropped++; | 1286 | adapter->stats.rxdropped++; |
1287 | } else { | 1287 | } else { |
1288 | |||
1289 | netif_receive_skb(skb); | 1288 | netif_receive_skb(skb); |
1290 | netdev->last_rx = jiffies; | ||
1291 | 1289 | ||
1292 | adapter->stats.no_rcv++; | 1290 | adapter->stats.no_rcv++; |
1293 | adapter->stats.rxbytes += length; | 1291 | adapter->stats.rxbytes += length; |
diff --git a/drivers/net/ni5010.c b/drivers/net/ni5010.c index e88ec8a2f837..6c11557945b3 100644 --- a/drivers/net/ni5010.c +++ b/drivers/net/ni5010.c | |||
@@ -569,7 +569,6 @@ static void ni5010_rx(struct net_device *dev) | |||
569 | 569 | ||
570 | skb->protocol = eth_type_trans(skb,dev); | 570 | skb->protocol = eth_type_trans(skb,dev); |
571 | netif_rx(skb); | 571 | netif_rx(skb); |
572 | dev->last_rx = jiffies; | ||
573 | dev->stats.rx_packets++; | 572 | dev->stats.rx_packets++; |
574 | dev->stats.rx_bytes += i_pkt_size; | 573 | dev->stats.rx_bytes += i_pkt_size; |
575 | 574 | ||
diff --git a/drivers/net/ni52.c b/drivers/net/ni52.c index b9a882d362da..6d7cf3c90fbd 100644 --- a/drivers/net/ni52.c +++ b/drivers/net/ni52.c | |||
@@ -970,7 +970,6 @@ static void ni52_rcv_int(struct net_device *dev) | |||
970 | memcpy_fromio(skb->data, p->base + readl(&rbd->buffer), totlen); | 970 | memcpy_fromio(skb->data, p->base + readl(&rbd->buffer), totlen); |
971 | skb->protocol = eth_type_trans(skb, dev); | 971 | skb->protocol = eth_type_trans(skb, dev); |
972 | netif_rx(skb); | 972 | netif_rx(skb); |
973 | dev->last_rx = jiffies; | ||
974 | p->stats.rx_packets++; | 973 | p->stats.rx_packets++; |
975 | p->stats.rx_bytes += totlen; | 974 | p->stats.rx_bytes += totlen; |
976 | } else | 975 | } else |
diff --git a/drivers/net/ni65.c b/drivers/net/ni65.c index 3edc971d0eca..24e393b3e0b7 100644 --- a/drivers/net/ni65.c +++ b/drivers/net/ni65.c | |||
@@ -1113,7 +1113,6 @@ static void ni65_recv_intr(struct net_device *dev,int csr0) | |||
1113 | p->stats.rx_bytes += len; | 1113 | p->stats.rx_bytes += len; |
1114 | skb->protocol=eth_type_trans(skb,dev); | 1114 | skb->protocol=eth_type_trans(skb,dev); |
1115 | netif_rx(skb); | 1115 | netif_rx(skb); |
1116 | dev->last_rx = jiffies; | ||
1117 | } | 1116 | } |
1118 | else | 1117 | else |
1119 | { | 1118 | { |
diff --git a/drivers/net/niu.c b/drivers/net/niu.c index f927bc06980a..0d8338450675 100644 --- a/drivers/net/niu.c +++ b/drivers/net/niu.c | |||
@@ -3139,8 +3139,6 @@ static int niu_process_rx_pkt(struct niu *np, struct rx_ring_info *rp) | |||
3139 | skb->protocol = eth_type_trans(skb, np->dev); | 3139 | skb->protocol = eth_type_trans(skb, np->dev); |
3140 | netif_receive_skb(skb); | 3140 | netif_receive_skb(skb); |
3141 | 3141 | ||
3142 | np->dev->last_rx = jiffies; | ||
3143 | |||
3144 | return num_rcr; | 3142 | return num_rcr; |
3145 | } | 3143 | } |
3146 | 3144 | ||
diff --git a/drivers/net/pci-skeleton.c b/drivers/net/pci-skeleton.c index bf952acee1f7..b23b5c397b1d 100644 --- a/drivers/net/pci-skeleton.c +++ b/drivers/net/pci-skeleton.c | |||
@@ -1565,7 +1565,6 @@ static void netdrv_rx_interrupt (struct net_device *dev, | |||
1565 | 1565 | ||
1566 | skb->protocol = eth_type_trans (skb, dev); | 1566 | skb->protocol = eth_type_trans (skb, dev); |
1567 | netif_rx (skb); | 1567 | netif_rx (skb); |
1568 | dev->last_rx = jiffies; | ||
1569 | dev->stats.rx_bytes += pkt_size; | 1568 | dev->stats.rx_bytes += pkt_size; |
1570 | dev->stats.rx_packets++; | 1569 | dev->stats.rx_packets++; |
1571 | } else { | 1570 | } else { |
diff --git a/drivers/net/pcmcia/3c574_cs.c b/drivers/net/pcmcia/3c574_cs.c index dcbb11ab98db..e5cb6b1f0ebd 100644 --- a/drivers/net/pcmcia/3c574_cs.c +++ b/drivers/net/pcmcia/3c574_cs.c | |||
@@ -1061,7 +1061,6 @@ static int el3_rx(struct net_device *dev, int worklimit) | |||
1061 | ((pkt_len+3)>>2)); | 1061 | ((pkt_len+3)>>2)); |
1062 | skb->protocol = eth_type_trans(skb, dev); | 1062 | skb->protocol = eth_type_trans(skb, dev); |
1063 | netif_rx(skb); | 1063 | netif_rx(skb); |
1064 | dev->last_rx = jiffies; | ||
1065 | dev->stats.rx_packets++; | 1064 | dev->stats.rx_packets++; |
1066 | dev->stats.rx_bytes += pkt_len; | 1065 | dev->stats.rx_bytes += pkt_len; |
1067 | } else { | 1066 | } else { |
diff --git a/drivers/net/pcmcia/3c589_cs.c b/drivers/net/pcmcia/3c589_cs.c index 5882109be777..73ecc657999d 100644 --- a/drivers/net/pcmcia/3c589_cs.c +++ b/drivers/net/pcmcia/3c589_cs.c | |||
@@ -883,7 +883,6 @@ static int el3_rx(struct net_device *dev) | |||
883 | (pkt_len+3)>>2); | 883 | (pkt_len+3)>>2); |
884 | skb->protocol = eth_type_trans(skb, dev); | 884 | skb->protocol = eth_type_trans(skb, dev); |
885 | netif_rx(skb); | 885 | netif_rx(skb); |
886 | dev->last_rx = jiffies; | ||
887 | dev->stats.rx_packets++; | 886 | dev->stats.rx_packets++; |
888 | dev->stats.rx_bytes += pkt_len; | 887 | dev->stats.rx_bytes += pkt_len; |
889 | } else { | 888 | } else { |
diff --git a/drivers/net/pcmcia/axnet_cs.c b/drivers/net/pcmcia/axnet_cs.c index 889f1bdb0853..2aca8df34970 100644 --- a/drivers/net/pcmcia/axnet_cs.c +++ b/drivers/net/pcmcia/axnet_cs.c | |||
@@ -1492,7 +1492,6 @@ static void ei_receive(struct net_device *dev) | |||
1492 | ei_block_input(dev, pkt_len, skb, current_offset + sizeof(rx_frame)); | 1492 | ei_block_input(dev, pkt_len, skb, current_offset + sizeof(rx_frame)); |
1493 | skb->protocol=eth_type_trans(skb,dev); | 1493 | skb->protocol=eth_type_trans(skb,dev); |
1494 | netif_rx(skb); | 1494 | netif_rx(skb); |
1495 | dev->last_rx = jiffies; | ||
1496 | dev->stats.rx_packets++; | 1495 | dev->stats.rx_packets++; |
1497 | dev->stats.rx_bytes += pkt_len; | 1496 | dev->stats.rx_bytes += pkt_len; |
1498 | if (pkt_stat & ENRSR_PHY) | 1497 | if (pkt_stat & ENRSR_PHY) |
diff --git a/drivers/net/pcmcia/fmvj18x_cs.c b/drivers/net/pcmcia/fmvj18x_cs.c index 465e4ad363ce..e4f8fe3c5dae 100644 --- a/drivers/net/pcmcia/fmvj18x_cs.c +++ b/drivers/net/pcmcia/fmvj18x_cs.c | |||
@@ -1035,7 +1035,6 @@ static void fjn_rx(struct net_device *dev) | |||
1035 | #endif | 1035 | #endif |
1036 | 1036 | ||
1037 | netif_rx(skb); | 1037 | netif_rx(skb); |
1038 | dev->last_rx = jiffies; | ||
1039 | lp->stats.rx_packets++; | 1038 | lp->stats.rx_packets++; |
1040 | lp->stats.rx_bytes += pkt_len; | 1039 | lp->stats.rx_bytes += pkt_len; |
1041 | } | 1040 | } |
diff --git a/drivers/net/pcmcia/nmclan_cs.c b/drivers/net/pcmcia/nmclan_cs.c index 35a1d1024c50..ec7c588c9ae5 100644 --- a/drivers/net/pcmcia/nmclan_cs.c +++ b/drivers/net/pcmcia/nmclan_cs.c | |||
@@ -1192,7 +1192,6 @@ static int mace_rx(struct net_device *dev, unsigned char RxCnt) | |||
1192 | 1192 | ||
1193 | netif_rx(skb); /* Send the packet to the upper (protocol) layers. */ | 1193 | netif_rx(skb); /* Send the packet to the upper (protocol) layers. */ |
1194 | 1194 | ||
1195 | dev->last_rx = jiffies; | ||
1196 | lp->linux_stats.rx_packets++; | 1195 | lp->linux_stats.rx_packets++; |
1197 | lp->linux_stats.rx_bytes += pkt_len; | 1196 | lp->linux_stats.rx_bytes += pkt_len; |
1198 | outb(0xFF, ioaddr + AM2150_RCV_NEXT); /* skip to next frame */ | 1197 | outb(0xFF, ioaddr + AM2150_RCV_NEXT); /* skip to next frame */ |
diff --git a/drivers/net/pcmcia/xirc2ps_cs.c b/drivers/net/pcmcia/xirc2ps_cs.c index c45c3064fee6..fef7e1861d6a 100644 --- a/drivers/net/pcmcia/xirc2ps_cs.c +++ b/drivers/net/pcmcia/xirc2ps_cs.c | |||
@@ -1242,7 +1242,6 @@ xirc2ps_interrupt(int irq, void *dev_id) | |||
1242 | } | 1242 | } |
1243 | skb->protocol = eth_type_trans(skb, dev); | 1243 | skb->protocol = eth_type_trans(skb, dev); |
1244 | netif_rx(skb); | 1244 | netif_rx(skb); |
1245 | dev->last_rx = jiffies; | ||
1246 | lp->stats.rx_packets++; | 1245 | lp->stats.rx_packets++; |
1247 | lp->stats.rx_bytes += pktlen; | 1246 | lp->stats.rx_bytes += pktlen; |
1248 | if (!(rsr & PhyPkt)) | 1247 | if (!(rsr & PhyPkt)) |
diff --git a/drivers/net/pcnet32.c b/drivers/net/pcnet32.c index 15bf6fe8416d..f2b192c80e17 100644 --- a/drivers/net/pcnet32.c +++ b/drivers/net/pcnet32.c | |||
@@ -1246,7 +1246,6 @@ static void pcnet32_rx_entry(struct net_device *dev, | |||
1246 | dev->stats.rx_bytes += skb->len; | 1246 | dev->stats.rx_bytes += skb->len; |
1247 | skb->protocol = eth_type_trans(skb, dev); | 1247 | skb->protocol = eth_type_trans(skb, dev); |
1248 | netif_receive_skb(skb); | 1248 | netif_receive_skb(skb); |
1249 | dev->last_rx = jiffies; | ||
1250 | dev->stats.rx_packets++; | 1249 | dev->stats.rx_packets++; |
1251 | return; | 1250 | return; |
1252 | } | 1251 | } |
diff --git a/drivers/net/plip.c b/drivers/net/plip.c index 1e965427b0e9..2ea78e6b0276 100644 --- a/drivers/net/plip.c +++ b/drivers/net/plip.c | |||
@@ -664,7 +664,6 @@ plip_receive_packet(struct net_device *dev, struct net_local *nl, | |||
664 | /* Inform the upper layer for the arrival of a packet. */ | 664 | /* Inform the upper layer for the arrival of a packet. */ |
665 | rcv->skb->protocol=plip_type_trans(rcv->skb, dev); | 665 | rcv->skb->protocol=plip_type_trans(rcv->skb, dev); |
666 | netif_rx_ni(rcv->skb); | 666 | netif_rx_ni(rcv->skb); |
667 | dev->last_rx = jiffies; | ||
668 | dev->stats.rx_bytes += rcv->length.h; | 667 | dev->stats.rx_bytes += rcv->length.h; |
669 | dev->stats.rx_packets++; | 668 | dev->stats.rx_packets++; |
670 | rcv->skb = NULL; | 669 | rcv->skb = NULL; |
diff --git a/drivers/net/ppp_generic.c b/drivers/net/ppp_generic.c index 7e857e938adb..274d495a1c50 100644 --- a/drivers/net/ppp_generic.c +++ b/drivers/net/ppp_generic.c | |||
@@ -1684,7 +1684,6 @@ ppp_receive_nonmp_frame(struct ppp *ppp, struct sk_buff *skb) | |||
1684 | skb->protocol = htons(npindex_to_ethertype[npi]); | 1684 | skb->protocol = htons(npindex_to_ethertype[npi]); |
1685 | skb_reset_mac_header(skb); | 1685 | skb_reset_mac_header(skb); |
1686 | netif_rx(skb); | 1686 | netif_rx(skb); |
1687 | ppp->dev->last_rx = jiffies; | ||
1688 | } | 1687 | } |
1689 | } | 1688 | } |
1690 | return; | 1689 | return; |
diff --git a/drivers/net/qla3xxx.c b/drivers/net/qla3xxx.c index acf8dc55e2a0..8b412426d61b 100644 --- a/drivers/net/qla3xxx.c +++ b/drivers/net/qla3xxx.c | |||
@@ -2136,7 +2136,6 @@ static void ql_process_mac_rx_intr(struct ql3_adapter *qdev, | |||
2136 | skb->protocol = eth_type_trans(skb, qdev->ndev); | 2136 | skb->protocol = eth_type_trans(skb, qdev->ndev); |
2137 | 2137 | ||
2138 | netif_receive_skb(skb); | 2138 | netif_receive_skb(skb); |
2139 | qdev->ndev->last_rx = jiffies; | ||
2140 | lrg_buf_cb2->skb = NULL; | 2139 | lrg_buf_cb2->skb = NULL; |
2141 | 2140 | ||
2142 | if (qdev->device_id == QL3022_DEVICE_ID) | 2141 | if (qdev->device_id == QL3022_DEVICE_ID) |
@@ -2210,7 +2209,6 @@ static void ql_process_macip_rx_intr(struct ql3_adapter *qdev, | |||
2210 | netif_receive_skb(skb2); | 2209 | netif_receive_skb(skb2); |
2211 | ndev->stats.rx_packets++; | 2210 | ndev->stats.rx_packets++; |
2212 | ndev->stats.rx_bytes += length; | 2211 | ndev->stats.rx_bytes += length; |
2213 | ndev->last_rx = jiffies; | ||
2214 | lrg_buf_cb2->skb = NULL; | 2212 | lrg_buf_cb2->skb = NULL; |
2215 | 2213 | ||
2216 | if (qdev->device_id == QL3022_DEVICE_ID) | 2214 | if (qdev->device_id == QL3022_DEVICE_ID) |
diff --git a/drivers/net/qlge/qlge_main.c b/drivers/net/qlge/qlge_main.c index 6445d2cb1322..3a6d3ac25f12 100644 --- a/drivers/net/qlge/qlge_main.c +++ b/drivers/net/qlge/qlge_main.c | |||
@@ -1451,7 +1451,6 @@ static void ql_process_mac_rx_intr(struct ql_adapter *qdev, | |||
1451 | "Passing a normal packet upstream.\n"); | 1451 | "Passing a normal packet upstream.\n"); |
1452 | netif_rx(skb); | 1452 | netif_rx(skb); |
1453 | } | 1453 | } |
1454 | ndev->last_rx = jiffies; | ||
1455 | } | 1454 | } |
1456 | 1455 | ||
1457 | /* Process an outbound completion from an rx ring. */ | 1456 | /* Process an outbound completion from an rx ring. */ |
diff --git a/drivers/net/r6040.c b/drivers/net/r6040.c index 34fe7ef8e5ed..d9a6e920fd62 100644 --- a/drivers/net/r6040.c +++ b/drivers/net/r6040.c | |||
@@ -598,7 +598,6 @@ static int r6040_rx(struct net_device *dev, int limit) | |||
598 | 598 | ||
599 | /* Send to upper layer */ | 599 | /* Send to upper layer */ |
600 | netif_receive_skb(skb_ptr); | 600 | netif_receive_skb(skb_ptr); |
601 | dev->last_rx = jiffies; | ||
602 | dev->stats.rx_packets++; | 601 | dev->stats.rx_packets++; |
603 | dev->stats.rx_bytes += descptr->len - 4; | 602 | dev->stats.rx_bytes += descptr->len - 4; |
604 | 603 | ||
diff --git a/drivers/net/r8169.c b/drivers/net/r8169.c index 4b7cb389dc49..cb5042ef6dc7 100644 --- a/drivers/net/r8169.c +++ b/drivers/net/r8169.c | |||
@@ -3484,7 +3484,6 @@ static int rtl8169_rx_interrupt(struct net_device *dev, | |||
3484 | if (rtl8169_rx_vlan_skb(tp, desc, skb) < 0) | 3484 | if (rtl8169_rx_vlan_skb(tp, desc, skb) < 0) |
3485 | netif_receive_skb(skb); | 3485 | netif_receive_skb(skb); |
3486 | 3486 | ||
3487 | dev->last_rx = jiffies; | ||
3488 | dev->stats.rx_bytes += pkt_size; | 3487 | dev->stats.rx_bytes += pkt_size; |
3489 | dev->stats.rx_packets++; | 3488 | dev->stats.rx_packets++; |
3490 | } | 3489 | } |
diff --git a/drivers/net/rrunner.c b/drivers/net/rrunner.c index 7343291030c5..6e4131f9a933 100644 --- a/drivers/net/rrunner.c +++ b/drivers/net/rrunner.c | |||
@@ -1005,7 +1005,6 @@ static void rx_int(struct net_device *dev, u32 rxlimit, u32 index) | |||
1005 | 1005 | ||
1006 | netif_rx(skb); /* send it up */ | 1006 | netif_rx(skb); /* send it up */ |
1007 | 1007 | ||
1008 | dev->last_rx = jiffies; | ||
1009 | dev->stats.rx_packets++; | 1008 | dev->stats.rx_packets++; |
1010 | dev->stats.rx_bytes += pkt_len; | 1009 | dev->stats.rx_bytes += pkt_len; |
1011 | } | 1010 | } |
diff --git a/drivers/net/s2io.c b/drivers/net/s2io.c index 5663fa7aa3da..cec9fe0b1132 100644 --- a/drivers/net/s2io.c +++ b/drivers/net/s2io.c | |||
@@ -7544,7 +7544,6 @@ static int rx_osm_handler(struct ring_info *ring_data, struct RxD_t * rxdp) | |||
7544 | sp->mac_control.stats_info->sw_stat.mem_freed += skb->truesize; | 7544 | sp->mac_control.stats_info->sw_stat.mem_freed += skb->truesize; |
7545 | send_up: | 7545 | send_up: |
7546 | queue_rx_frame(skb, RXD_GET_VLAN_TAG(rxdp->Control_2)); | 7546 | queue_rx_frame(skb, RXD_GET_VLAN_TAG(rxdp->Control_2)); |
7547 | dev->last_rx = jiffies; | ||
7548 | aggregate: | 7547 | aggregate: |
7549 | sp->mac_control.rings[ring_no].rx_bufs_left -= 1; | 7548 | sp->mac_control.rings[ring_no].rx_bufs_left -= 1; |
7550 | return SUCCESS; | 7549 | return SUCCESS; |
diff --git a/drivers/net/sb1000.c b/drivers/net/sb1000.c index 5986cec17f19..be3025310e90 100644 --- a/drivers/net/sb1000.c +++ b/drivers/net/sb1000.c | |||
@@ -869,7 +869,6 @@ printk("cm0: IP identification: %02x%02x fragment offset: %02x%02x\n", buffer[3 | |||
869 | /* datagram completed: send to upper level */ | 869 | /* datagram completed: send to upper level */ |
870 | skb_trim(skb, dlen); | 870 | skb_trim(skb, dlen); |
871 | netif_rx(skb); | 871 | netif_rx(skb); |
872 | dev->last_rx = jiffies; | ||
873 | stats->rx_bytes+=dlen; | 872 | stats->rx_bytes+=dlen; |
874 | stats->rx_packets++; | 873 | stats->rx_packets++; |
875 | lp->rx_skb[ns] = NULL; | 874 | lp->rx_skb[ns] = NULL; |
diff --git a/drivers/net/sc92031.c b/drivers/net/sc92031.c index 61955f8d8011..590f2175e9e0 100644 --- a/drivers/net/sc92031.c +++ b/drivers/net/sc92031.c | |||
@@ -816,7 +816,6 @@ static void _sc92031_rx_tasklet(struct net_device *dev) | |||
816 | } | 816 | } |
817 | 817 | ||
818 | skb->protocol = eth_type_trans(skb, dev); | 818 | skb->protocol = eth_type_trans(skb, dev); |
819 | dev->last_rx = jiffies; | ||
820 | netif_rx(skb); | 819 | netif_rx(skb); |
821 | 820 | ||
822 | dev->stats.rx_bytes += pkt_size; | 821 | dev->stats.rx_bytes += pkt_size; |
diff --git a/drivers/net/seeq8005.c b/drivers/net/seeq8005.c index ad12e7fa06c6..2fbc8f1e8b48 100644 --- a/drivers/net/seeq8005.c +++ b/drivers/net/seeq8005.c | |||
@@ -563,7 +563,6 @@ static void seeq8005_rx(struct net_device *dev) | |||
563 | 563 | ||
564 | skb->protocol=eth_type_trans(skb,dev); | 564 | skb->protocol=eth_type_trans(skb,dev); |
565 | netif_rx(skb); | 565 | netif_rx(skb); |
566 | dev->last_rx = jiffies; | ||
567 | dev->stats.rx_packets++; | 566 | dev->stats.rx_packets++; |
568 | dev->stats.rx_bytes += pkt_len; | 567 | dev->stats.rx_bytes += pkt_len; |
569 | } | 568 | } |
diff --git a/drivers/net/sfc/rx.c b/drivers/net/sfc/rx.c index 0f805da4ce55..b8ba4bbad889 100644 --- a/drivers/net/sfc/rx.c +++ b/drivers/net/sfc/rx.c | |||
@@ -752,7 +752,7 @@ void __efx_rx_packet(struct efx_channel *channel, | |||
752 | channel->rx_alloc_level += RX_ALLOC_FACTOR_SKB; | 752 | channel->rx_alloc_level += RX_ALLOC_FACTOR_SKB; |
753 | 753 | ||
754 | done: | 754 | done: |
755 | efx->net_dev->last_rx = jiffies; | 755 | ; |
756 | } | 756 | } |
757 | 757 | ||
758 | void efx_rx_strategy(struct efx_channel *channel) | 758 | void efx_rx_strategy(struct efx_channel *channel) |
diff --git a/drivers/net/sgiseeq.c b/drivers/net/sgiseeq.c index ffc700e4f165..cdffea6c7fa3 100644 --- a/drivers/net/sgiseeq.c +++ b/drivers/net/sgiseeq.c | |||
@@ -377,7 +377,6 @@ memory_squeeze: | |||
377 | skb_put(skb, len); | 377 | skb_put(skb, len); |
378 | skb->protocol = eth_type_trans(skb, dev); | 378 | skb->protocol = eth_type_trans(skb, dev); |
379 | netif_rx(skb); | 379 | netif_rx(skb); |
380 | dev->last_rx = jiffies; | ||
381 | dev->stats.rx_packets++; | 380 | dev->stats.rx_packets++; |
382 | dev->stats.rx_bytes += len; | 381 | dev->stats.rx_bytes += len; |
383 | } else { | 382 | } else { |
diff --git a/drivers/net/sh_eth.c b/drivers/net/sh_eth.c index a24bb68887ab..c51bfc57d405 100644 --- a/drivers/net/sh_eth.c +++ b/drivers/net/sh_eth.c | |||
@@ -540,7 +540,6 @@ static int sh_eth_rx(struct net_device *ndev) | |||
540 | skb_put(skb, pkt_len); | 540 | skb_put(skb, pkt_len); |
541 | skb->protocol = eth_type_trans(skb, ndev); | 541 | skb->protocol = eth_type_trans(skb, ndev); |
542 | netif_rx(skb); | 542 | netif_rx(skb); |
543 | ndev->last_rx = jiffies; | ||
544 | mdp->stats.rx_packets++; | 543 | mdp->stats.rx_packets++; |
545 | mdp->stats.rx_bytes += pkt_len; | 544 | mdp->stats.rx_bytes += pkt_len; |
546 | } | 545 | } |
diff --git a/drivers/net/sis190.c b/drivers/net/sis190.c index f6c8f70b405c..83cc3c5f7946 100644 --- a/drivers/net/sis190.c +++ b/drivers/net/sis190.c | |||
@@ -627,7 +627,6 @@ static int sis190_rx_interrupt(struct net_device *dev, | |||
627 | 627 | ||
628 | sis190_rx_skb(skb); | 628 | sis190_rx_skb(skb); |
629 | 629 | ||
630 | dev->last_rx = jiffies; | ||
631 | stats->rx_packets++; | 630 | stats->rx_packets++; |
632 | stats->rx_bytes += pkt_size; | 631 | stats->rx_bytes += pkt_size; |
633 | if ((status & BCAST) == MCAST) | 632 | if ((status & BCAST) == MCAST) |
diff --git a/drivers/net/sis900.c b/drivers/net/sis900.c index bb7056a897bf..28f6c04a8ef3 100644 --- a/drivers/net/sis900.c +++ b/drivers/net/sis900.c | |||
@@ -1789,7 +1789,6 @@ static int sis900_rx(struct net_device *net_dev) | |||
1789 | /* some network statistics */ | 1789 | /* some network statistics */ |
1790 | if ((rx_status & BCAST) == MCAST) | 1790 | if ((rx_status & BCAST) == MCAST) |
1791 | net_dev->stats.multicast++; | 1791 | net_dev->stats.multicast++; |
1792 | net_dev->last_rx = jiffies; | ||
1793 | net_dev->stats.rx_bytes += rx_size; | 1792 | net_dev->stats.rx_bytes += rx_size; |
1794 | net_dev->stats.rx_packets++; | 1793 | net_dev->stats.rx_packets++; |
1795 | sis_priv->dirty_rx++; | 1794 | sis_priv->dirty_rx++; |
diff --git a/drivers/net/skfp/skfddi.c b/drivers/net/skfp/skfddi.c index a2b092bb3626..282bb47deccc 100644 --- a/drivers/net/skfp/skfddi.c +++ b/drivers/net/skfp/skfddi.c | |||
@@ -1680,7 +1680,6 @@ void mac_drv_rx_complete(struct s_smc *smc, volatile struct s_smt_fp_rxd *rxd, | |||
1680 | skb->protocol = fddi_type_trans(skb, bp->dev); | 1680 | skb->protocol = fddi_type_trans(skb, bp->dev); |
1681 | 1681 | ||
1682 | netif_rx(skb); | 1682 | netif_rx(skb); |
1683 | bp->dev->last_rx = jiffies; | ||
1684 | 1683 | ||
1685 | HWM_RX_CHECK(smc, RX_LOW_WATERMARK); | 1684 | HWM_RX_CHECK(smc, RX_LOW_WATERMARK); |
1686 | return; | 1685 | return; |
@@ -1939,7 +1938,6 @@ int mac_drv_rx_init(struct s_smc *smc, int len, int fc, | |||
1939 | 1938 | ||
1940 | // deliver frame to system | 1939 | // deliver frame to system |
1941 | skb->protocol = fddi_type_trans(skb, smc->os.dev); | 1940 | skb->protocol = fddi_type_trans(skb, smc->os.dev); |
1942 | skb->dev->last_rx = jiffies; | ||
1943 | netif_rx(skb); | 1941 | netif_rx(skb); |
1944 | 1942 | ||
1945 | return (0); | 1943 | return (0); |
diff --git a/drivers/net/skge.c b/drivers/net/skge.c index 7911839f7375..05f9d50d956a 100644 --- a/drivers/net/skge.c +++ b/drivers/net/skge.c | |||
@@ -3186,7 +3186,6 @@ static int skge_poll(struct napi_struct *napi, int to_do) | |||
3186 | 3186 | ||
3187 | skb = skge_rx_get(dev, e, control, rd->status, rd->csum2); | 3187 | skb = skge_rx_get(dev, e, control, rd->status, rd->csum2); |
3188 | if (likely(skb)) { | 3188 | if (likely(skb)) { |
3189 | dev->last_rx = jiffies; | ||
3190 | netif_receive_skb(skb); | 3189 | netif_receive_skb(skb); |
3191 | 3190 | ||
3192 | ++work_done; | 3191 | ++work_done; |
diff --git a/drivers/net/slip.c b/drivers/net/slip.c index 1d58991d395b..25cec06d6dcc 100644 --- a/drivers/net/slip.c +++ b/drivers/net/slip.c | |||
@@ -365,7 +365,6 @@ static void sl_bump(struct slip *sl) | |||
365 | skb_reset_mac_header(skb); | 365 | skb_reset_mac_header(skb); |
366 | skb->protocol = htons(ETH_P_IP); | 366 | skb->protocol = htons(ETH_P_IP); |
367 | netif_rx(skb); | 367 | netif_rx(skb); |
368 | sl->dev->last_rx = jiffies; | ||
369 | sl->rx_packets++; | 368 | sl->rx_packets++; |
370 | } | 369 | } |
371 | 370 | ||
diff --git a/drivers/net/smc911x.c b/drivers/net/smc911x.c index f59c7772f344..a8cf006c0998 100644 --- a/drivers/net/smc911x.c +++ b/drivers/net/smc911x.c | |||
@@ -439,7 +439,6 @@ static inline void smc911x_rcv(struct net_device *dev) | |||
439 | 439 | ||
440 | DBG(SMC_DEBUG_PKTS, "%s: Received packet\n", dev->name); | 440 | DBG(SMC_DEBUG_PKTS, "%s: Received packet\n", dev->name); |
441 | PRINT_PKT(data, ((pkt_len - 4) <= 64) ? pkt_len - 4 : 64); | 441 | PRINT_PKT(data, ((pkt_len - 4) <= 64) ? pkt_len - 4 : 64); |
442 | dev->last_rx = jiffies; | ||
443 | skb->protocol = eth_type_trans(skb, dev); | 442 | skb->protocol = eth_type_trans(skb, dev); |
444 | netif_rx(skb); | 443 | netif_rx(skb); |
445 | dev->stats.rx_packets++; | 444 | dev->stats.rx_packets++; |
@@ -1231,7 +1230,6 @@ smc911x_rx_dma_irq(int dma, void *data) | |||
1231 | BUG_ON(skb == NULL); | 1230 | BUG_ON(skb == NULL); |
1232 | lp->current_rx_skb = NULL; | 1231 | lp->current_rx_skb = NULL; |
1233 | PRINT_PKT(skb->data, skb->len); | 1232 | PRINT_PKT(skb->data, skb->len); |
1234 | dev->last_rx = jiffies; | ||
1235 | skb->protocol = eth_type_trans(skb, dev); | 1233 | skb->protocol = eth_type_trans(skb, dev); |
1236 | dev->stats.rx_packets++; | 1234 | dev->stats.rx_packets++; |
1237 | dev->stats.rx_bytes += skb->len; | 1235 | dev->stats.rx_bytes += skb->len; |
diff --git a/drivers/net/smc9194.c b/drivers/net/smc9194.c index 3bc733634a53..e35fab1da6a4 100644 --- a/drivers/net/smc9194.c +++ b/drivers/net/smc9194.c | |||
@@ -1270,7 +1270,6 @@ static void smc_rcv(struct net_device *dev) | |||
1270 | 1270 | ||
1271 | skb->protocol = eth_type_trans(skb, dev ); | 1271 | skb->protocol = eth_type_trans(skb, dev ); |
1272 | netif_rx(skb); | 1272 | netif_rx(skb); |
1273 | dev->last_rx = jiffies; | ||
1274 | dev->stats.rx_packets++; | 1273 | dev->stats.rx_packets++; |
1275 | dev->stats.rx_bytes += packet_length; | 1274 | dev->stats.rx_bytes += packet_length; |
1276 | } else { | 1275 | } else { |
diff --git a/drivers/net/smc91x.c b/drivers/net/smc91x.c index b5ff63268d89..2ca301d71902 100644 --- a/drivers/net/smc91x.c +++ b/drivers/net/smc91x.c | |||
@@ -518,7 +518,6 @@ static inline void smc_rcv(struct net_device *dev) | |||
518 | 518 | ||
519 | PRINT_PKT(data, packet_len - 4); | 519 | PRINT_PKT(data, packet_len - 4); |
520 | 520 | ||
521 | dev->last_rx = jiffies; | ||
522 | skb->protocol = eth_type_trans(skb, dev); | 521 | skb->protocol = eth_type_trans(skb, dev); |
523 | netif_rx(skb); | 522 | netif_rx(skb); |
524 | dev->stats.rx_packets++; | 523 | dev->stats.rx_packets++; |
diff --git a/drivers/net/sonic.c b/drivers/net/sonic.c index 8069f3e32d83..211e805c1223 100644 --- a/drivers/net/sonic.c +++ b/drivers/net/sonic.c | |||
@@ -450,7 +450,6 @@ static void sonic_rx(struct net_device *dev) | |||
450 | skb_trim(used_skb, pkt_len); | 450 | skb_trim(used_skb, pkt_len); |
451 | used_skb->protocol = eth_type_trans(used_skb, dev); | 451 | used_skb->protocol = eth_type_trans(used_skb, dev); |
452 | netif_rx(used_skb); | 452 | netif_rx(used_skb); |
453 | dev->last_rx = jiffies; | ||
454 | lp->stats.rx_packets++; | 453 | lp->stats.rx_packets++; |
455 | lp->stats.rx_bytes += pkt_len; | 454 | lp->stats.rx_bytes += pkt_len; |
456 | 455 | ||
diff --git a/drivers/net/starfire.c b/drivers/net/starfire.c index 32814183d5a3..0358809f409c 100644 --- a/drivers/net/starfire.c +++ b/drivers/net/starfire.c | |||
@@ -1496,7 +1496,6 @@ static int __netdev_rx(struct net_device *dev, int *quota) | |||
1496 | } else | 1496 | } else |
1497 | #endif /* VLAN_SUPPORT */ | 1497 | #endif /* VLAN_SUPPORT */ |
1498 | netif_receive_skb(skb); | 1498 | netif_receive_skb(skb); |
1499 | dev->last_rx = jiffies; | ||
1500 | np->stats.rx_packets++; | 1499 | np->stats.rx_packets++; |
1501 | 1500 | ||
1502 | next_rx: | 1501 | next_rx: |
diff --git a/drivers/net/sun3lance.c b/drivers/net/sun3lance.c index 608aa2f789d1..4bb8f72c65cc 100644 --- a/drivers/net/sun3lance.c +++ b/drivers/net/sun3lance.c | |||
@@ -849,7 +849,6 @@ static int lance_rx( struct net_device *dev ) | |||
849 | 849 | ||
850 | skb->protocol = eth_type_trans( skb, dev ); | 850 | skb->protocol = eth_type_trans( skb, dev ); |
851 | netif_rx( skb ); | 851 | netif_rx( skb ); |
852 | dev->last_rx = jiffies; | ||
853 | dev->stats.rx_packets++; | 852 | dev->stats.rx_packets++; |
854 | dev->stats.rx_bytes += pkt_len; | 853 | dev->stats.rx_bytes += pkt_len; |
855 | } | 854 | } |
diff --git a/drivers/net/sunbmac.c b/drivers/net/sunbmac.c index e964395fceee..3f57ba0ed03a 100644 --- a/drivers/net/sunbmac.c +++ b/drivers/net/sunbmac.c | |||
@@ -878,7 +878,6 @@ static void bigmac_rx(struct bigmac *bp) | |||
878 | /* No checksums done by the BigMAC ;-( */ | 878 | /* No checksums done by the BigMAC ;-( */ |
879 | skb->protocol = eth_type_trans(skb, bp->dev); | 879 | skb->protocol = eth_type_trans(skb, bp->dev); |
880 | netif_rx(skb); | 880 | netif_rx(skb); |
881 | bp->dev->last_rx = jiffies; | ||
882 | bp->enet_stats.rx_packets++; | 881 | bp->enet_stats.rx_packets++; |
883 | bp->enet_stats.rx_bytes += len; | 882 | bp->enet_stats.rx_bytes += len; |
884 | next: | 883 | next: |
diff --git a/drivers/net/sundance.c b/drivers/net/sundance.c index 8c6a8941a054..698893b92003 100644 --- a/drivers/net/sundance.c +++ b/drivers/net/sundance.c | |||
@@ -1350,7 +1350,6 @@ static void rx_poll(unsigned long data) | |||
1350 | skb->protocol = eth_type_trans(skb, dev); | 1350 | skb->protocol = eth_type_trans(skb, dev); |
1351 | /* Note: checksum -> skb->ip_summed = CHECKSUM_UNNECESSARY; */ | 1351 | /* Note: checksum -> skb->ip_summed = CHECKSUM_UNNECESSARY; */ |
1352 | netif_rx(skb); | 1352 | netif_rx(skb); |
1353 | dev->last_rx = jiffies; | ||
1354 | } | 1353 | } |
1355 | entry = (entry + 1) % RX_RING_SIZE; | 1354 | entry = (entry + 1) % RX_RING_SIZE; |
1356 | received++; | 1355 | received++; |
diff --git a/drivers/net/sungem.c b/drivers/net/sungem.c index 250f08687b71..deb114801da9 100644 --- a/drivers/net/sungem.c +++ b/drivers/net/sungem.c | |||
@@ -863,7 +863,6 @@ static int gem_rx(struct gem *gp, int work_to_do) | |||
863 | 863 | ||
864 | gp->net_stats.rx_packets++; | 864 | gp->net_stats.rx_packets++; |
865 | gp->net_stats.rx_bytes += len; | 865 | gp->net_stats.rx_bytes += len; |
866 | gp->dev->last_rx = jiffies; | ||
867 | 866 | ||
868 | next: | 867 | next: |
869 | entry = NEXT_RX(entry); | 868 | entry = NEXT_RX(entry); |
diff --git a/drivers/net/sunhme.c b/drivers/net/sunhme.c index b55f7a4b52e7..e55db660f763 100644 --- a/drivers/net/sunhme.c +++ b/drivers/net/sunhme.c | |||
@@ -2072,7 +2072,6 @@ static void happy_meal_rx(struct happy_meal *hp, struct net_device *dev) | |||
2072 | skb->protocol = eth_type_trans(skb, dev); | 2072 | skb->protocol = eth_type_trans(skb, dev); |
2073 | netif_rx(skb); | 2073 | netif_rx(skb); |
2074 | 2074 | ||
2075 | dev->last_rx = jiffies; | ||
2076 | hp->net_stats.rx_packets++; | 2075 | hp->net_stats.rx_packets++; |
2077 | hp->net_stats.rx_bytes += len; | 2076 | hp->net_stats.rx_bytes += len; |
2078 | next: | 2077 | next: |
diff --git a/drivers/net/sunlance.c b/drivers/net/sunlance.c index c67cf94b5bff..281373281756 100644 --- a/drivers/net/sunlance.c +++ b/drivers/net/sunlance.c | |||
@@ -555,7 +555,6 @@ static void lance_rx_dvma(struct net_device *dev) | |||
555 | len); | 555 | len); |
556 | skb->protocol = eth_type_trans(skb, dev); | 556 | skb->protocol = eth_type_trans(skb, dev); |
557 | netif_rx(skb); | 557 | netif_rx(skb); |
558 | dev->last_rx = jiffies; | ||
559 | dev->stats.rx_packets++; | 558 | dev->stats.rx_packets++; |
560 | } | 559 | } |
561 | 560 | ||
@@ -726,7 +725,6 @@ static void lance_rx_pio(struct net_device *dev) | |||
726 | lance_piocopy_to_skb(skb, &(ib->rx_buf[entry][0]), len); | 725 | lance_piocopy_to_skb(skb, &(ib->rx_buf[entry][0]), len); |
727 | skb->protocol = eth_type_trans(skb, dev); | 726 | skb->protocol = eth_type_trans(skb, dev); |
728 | netif_rx(skb); | 727 | netif_rx(skb); |
729 | dev->last_rx = jiffies; | ||
730 | dev->stats.rx_packets++; | 728 | dev->stats.rx_packets++; |
731 | } | 729 | } |
732 | 730 | ||
diff --git a/drivers/net/sunqe.c b/drivers/net/sunqe.c index f63644744ff9..8f1e7ffb4f2a 100644 --- a/drivers/net/sunqe.c +++ b/drivers/net/sunqe.c | |||
@@ -446,7 +446,6 @@ static void qe_rx(struct sunqe *qep) | |||
446 | len); | 446 | len); |
447 | skb->protocol = eth_type_trans(skb, qep->dev); | 447 | skb->protocol = eth_type_trans(skb, qep->dev); |
448 | netif_rx(skb); | 448 | netif_rx(skb); |
449 | qep->dev->last_rx = jiffies; | ||
450 | dev->stats.rx_packets++; | 449 | dev->stats.rx_packets++; |
451 | dev->stats.rx_bytes += len; | 450 | dev->stats.rx_bytes += len; |
452 | } | 451 | } |
diff --git a/drivers/net/tc35815.c b/drivers/net/tc35815.c index 51de139491a0..44126c463fac 100644 --- a/drivers/net/tc35815.c +++ b/drivers/net/tc35815.c | |||
@@ -1757,7 +1757,6 @@ tc35815_rx(struct net_device *dev) | |||
1757 | #else | 1757 | #else |
1758 | netif_rx(skb); | 1758 | netif_rx(skb); |
1759 | #endif | 1759 | #endif |
1760 | dev->last_rx = jiffies; | ||
1761 | dev->stats.rx_packets++; | 1760 | dev->stats.rx_packets++; |
1762 | dev->stats.rx_bytes += pkt_len; | 1761 | dev->stats.rx_bytes += pkt_len; |
1763 | } else { | 1762 | } else { |
diff --git a/drivers/net/tehuti.c b/drivers/net/tehuti.c index 91f9054a1d95..30d5065f8166 100644 --- a/drivers/net/tehuti.c +++ b/drivers/net/tehuti.c | |||
@@ -1237,7 +1237,6 @@ static int bdx_rx_receive(struct bdx_priv *priv, struct rxd_fifo *f, int budget) | |||
1237 | ENTER; | 1237 | ENTER; |
1238 | max_done = budget; | 1238 | max_done = budget; |
1239 | 1239 | ||
1240 | priv->ndev->last_rx = jiffies; | ||
1241 | f->m.wptr = READ_REG(priv, f->m.reg_WPTR) & TXF_WPTR_WR_PTR; | 1240 | f->m.wptr = READ_REG(priv, f->m.reg_WPTR) & TXF_WPTR_WR_PTR; |
1242 | 1241 | ||
1243 | size = f->m.wptr - f->m.rptr; | 1242 | size = f->m.wptr - f->m.rptr; |
diff --git a/drivers/net/tg3.c b/drivers/net/tg3.c index babf83d3a52f..546b9eeaa171 100644 --- a/drivers/net/tg3.c +++ b/drivers/net/tg3.c | |||
@@ -4288,7 +4288,6 @@ static int tg3_rx(struct tg3 *tp, int budget) | |||
4288 | #endif | 4288 | #endif |
4289 | netif_receive_skb(skb); | 4289 | netif_receive_skb(skb); |
4290 | 4290 | ||
4291 | tp->dev->last_rx = jiffies; | ||
4292 | received++; | 4291 | received++; |
4293 | budget--; | 4292 | budget--; |
4294 | 4293 | ||
diff --git a/drivers/net/tlan.c b/drivers/net/tlan.c index c41d68761364..055d3429851f 100644 --- a/drivers/net/tlan.c +++ b/drivers/net/tlan.c | |||
@@ -1649,8 +1649,6 @@ drop_and_reuse: | |||
1649 | } | 1649 | } |
1650 | } | 1650 | } |
1651 | 1651 | ||
1652 | dev->last_rx = jiffies; | ||
1653 | |||
1654 | return ack; | 1652 | return ack; |
1655 | 1653 | ||
1656 | } /* TLan_HandleRxEOF */ | 1654 | } /* TLan_HandleRxEOF */ |
diff --git a/drivers/net/tokenring/3c359.c b/drivers/net/tokenring/3c359.c index bf621328b601..87509a65b3bf 100644 --- a/drivers/net/tokenring/3c359.c +++ b/drivers/net/tokenring/3c359.c | |||
@@ -974,7 +974,6 @@ static void xl_rx(struct net_device *dev) | |||
974 | 974 | ||
975 | netif_rx(skb2) ; | 975 | netif_rx(skb2) ; |
976 | } /* if multiple buffers */ | 976 | } /* if multiple buffers */ |
977 | dev->last_rx = jiffies ; | ||
978 | } /* while packet to do */ | 977 | } /* while packet to do */ |
979 | 978 | ||
980 | /* Clear the updComplete interrupt */ | 979 | /* Clear the updComplete interrupt */ |
@@ -1571,7 +1570,6 @@ static void xl_arb_cmd(struct net_device *dev) | |||
1571 | * anyway. | 1570 | * anyway. |
1572 | */ | 1571 | */ |
1573 | 1572 | ||
1574 | dev->last_rx = jiffies ; | ||
1575 | /* Acknowledge interrupt, this tells nic we are done with the arb */ | 1573 | /* Acknowledge interrupt, this tells nic we are done with the arb */ |
1576 | writel(ACK_INTERRUPT | ARBCACK | LATCH_ACK, xl_mmio + MMIO_COMMAND) ; | 1574 | writel(ACK_INTERRUPT | ARBCACK | LATCH_ACK, xl_mmio + MMIO_COMMAND) ; |
1577 | 1575 | ||
diff --git a/drivers/net/tokenring/ibmtr.c b/drivers/net/tokenring/ibmtr.c index ad978982eee4..9fd09938d45b 100644 --- a/drivers/net/tokenring/ibmtr.c +++ b/drivers/net/tokenring/ibmtr.c | |||
@@ -1822,7 +1822,6 @@ static void tr_rx(struct net_device *dev) | |||
1822 | skb->ip_summed = CHECKSUM_COMPLETE; | 1822 | skb->ip_summed = CHECKSUM_COMPLETE; |
1823 | } | 1823 | } |
1824 | netif_rx(skb); | 1824 | netif_rx(skb); |
1825 | dev->last_rx = jiffies; | ||
1826 | } /*tr_rx */ | 1825 | } /*tr_rx */ |
1827 | 1826 | ||
1828 | /*****************************************************************************/ | 1827 | /*****************************************************************************/ |
diff --git a/drivers/net/tokenring/lanstreamer.c b/drivers/net/tokenring/lanstreamer.c index bd70e818212a..239c75217b12 100644 --- a/drivers/net/tokenring/lanstreamer.c +++ b/drivers/net/tokenring/lanstreamer.c | |||
@@ -1009,7 +1009,6 @@ static void streamer_rx(struct net_device *dev) | |||
1009 | /* send up to the protocol */ | 1009 | /* send up to the protocol */ |
1010 | netif_rx(skb); | 1010 | netif_rx(skb); |
1011 | } | 1011 | } |
1012 | dev->last_rx = jiffies; | ||
1013 | streamer_priv->streamer_stats.rx_packets++; | 1012 | streamer_priv->streamer_stats.rx_packets++; |
1014 | streamer_priv->streamer_stats.rx_bytes += length; | 1013 | streamer_priv->streamer_stats.rx_bytes += length; |
1015 | } /* if skb == null */ | 1014 | } /* if skb == null */ |
diff --git a/drivers/net/tokenring/olympic.c b/drivers/net/tokenring/olympic.c index f78bc5d40708..ecb5c7c96910 100644 --- a/drivers/net/tokenring/olympic.c +++ b/drivers/net/tokenring/olympic.c | |||
@@ -862,7 +862,6 @@ static void olympic_rx(struct net_device *dev) | |||
862 | skb->protocol = tr_type_trans(skb,dev); | 862 | skb->protocol = tr_type_trans(skb,dev); |
863 | netif_rx(skb) ; | 863 | netif_rx(skb) ; |
864 | } | 864 | } |
865 | dev->last_rx = jiffies ; | ||
866 | olympic_priv->olympic_stats.rx_packets++ ; | 865 | olympic_priv->olympic_stats.rx_packets++ ; |
867 | olympic_priv->olympic_stats.rx_bytes += length ; | 866 | olympic_priv->olympic_stats.rx_bytes += length ; |
868 | } /* if skb == null */ | 867 | } /* if skb == null */ |
@@ -1441,7 +1440,6 @@ static void olympic_arb_cmd(struct net_device *dev) | |||
1441 | dev->name, mac_hdr->saddr); | 1440 | dev->name, mac_hdr->saddr); |
1442 | } | 1441 | } |
1443 | netif_rx(mac_frame); | 1442 | netif_rx(mac_frame); |
1444 | dev->last_rx = jiffies; | ||
1445 | 1443 | ||
1446 | drop_frame: | 1444 | drop_frame: |
1447 | /* Now tell the card we have dealt with the received frame */ | 1445 | /* Now tell the card we have dealt with the received frame */ |
diff --git a/drivers/net/tokenring/smctr.c b/drivers/net/tokenring/smctr.c index ed50d288e494..a011666342ff 100644 --- a/drivers/net/tokenring/smctr.c +++ b/drivers/net/tokenring/smctr.c | |||
@@ -3910,7 +3910,6 @@ static int smctr_process_rx_packet(MAC_HEADER *rmf, __u16 size, | |||
3910 | /* Kick the packet on up. */ | 3910 | /* Kick the packet on up. */ |
3911 | skb->protocol = tr_type_trans(skb, dev); | 3911 | skb->protocol = tr_type_trans(skb, dev); |
3912 | netif_rx(skb); | 3912 | netif_rx(skb); |
3913 | dev->last_rx = jiffies; | ||
3914 | err = 0; | 3913 | err = 0; |
3915 | } | 3914 | } |
3916 | 3915 | ||
@@ -4496,7 +4495,6 @@ static int smctr_rx_frame(struct net_device *dev) | |||
4496 | /* Kick the packet on up. */ | 4495 | /* Kick the packet on up. */ |
4497 | skb->protocol = tr_type_trans(skb, dev); | 4496 | skb->protocol = tr_type_trans(skb, dev); |
4498 | netif_rx(skb); | 4497 | netif_rx(skb); |
4499 | dev->last_rx = jiffies; | ||
4500 | } else { | 4498 | } else { |
4501 | } | 4499 | } |
4502 | } | 4500 | } |
diff --git a/drivers/net/tokenring/tms380tr.c b/drivers/net/tokenring/tms380tr.c index d07c4523c847..b408397c83e7 100644 --- a/drivers/net/tokenring/tms380tr.c +++ b/drivers/net/tokenring/tms380tr.c | |||
@@ -2186,7 +2186,6 @@ static void tms380tr_rcv_status_irq(struct net_device *dev) | |||
2186 | skb_trim(skb,Length); | 2186 | skb_trim(skb,Length); |
2187 | skb->protocol = tr_type_trans(skb,dev); | 2187 | skb->protocol = tr_type_trans(skb,dev); |
2188 | netif_rx(skb); | 2188 | netif_rx(skb); |
2189 | dev->last_rx = jiffies; | ||
2190 | } | 2189 | } |
2191 | } | 2190 | } |
2192 | else /* Invalid frame */ | 2191 | else /* Invalid frame */ |
diff --git a/drivers/net/tsi108_eth.c b/drivers/net/tsi108_eth.c index 6924805e765e..271bc230c8a9 100644 --- a/drivers/net/tsi108_eth.c +++ b/drivers/net/tsi108_eth.c | |||
@@ -788,7 +788,6 @@ static int tsi108_complete_rx(struct net_device *dev, int budget) | |||
788 | skb_put(skb, data->rxring[rx].len); | 788 | skb_put(skb, data->rxring[rx].len); |
789 | skb->protocol = eth_type_trans(skb, dev); | 789 | skb->protocol = eth_type_trans(skb, dev); |
790 | netif_receive_skb(skb); | 790 | netif_receive_skb(skb); |
791 | dev->last_rx = jiffies; | ||
792 | } | 791 | } |
793 | 792 | ||
794 | return done; | 793 | return done; |
diff --git a/drivers/net/tulip/de2104x.c b/drivers/net/tulip/de2104x.c index 08076182df7c..e23a5084c6ca 100644 --- a/drivers/net/tulip/de2104x.c +++ b/drivers/net/tulip/de2104x.c | |||
@@ -459,7 +459,6 @@ static void de_rx (struct de_private *de) | |||
459 | 459 | ||
460 | de->net_stats.rx_packets++; | 460 | de->net_stats.rx_packets++; |
461 | de->net_stats.rx_bytes += skb->len; | 461 | de->net_stats.rx_bytes += skb->len; |
462 | de->dev->last_rx = jiffies; | ||
463 | rc = netif_rx (skb); | 462 | rc = netif_rx (skb); |
464 | if (rc == NET_RX_DROP) | 463 | if (rc == NET_RX_DROP) |
465 | drop = 1; | 464 | drop = 1; |
diff --git a/drivers/net/tulip/de4x5.c b/drivers/net/tulip/de4x5.c index 1e7d5e29a5ae..f8a45253eaf8 100644 --- a/drivers/net/tulip/de4x5.c +++ b/drivers/net/tulip/de4x5.c | |||
@@ -1646,7 +1646,6 @@ de4x5_rx(struct net_device *dev) | |||
1646 | netif_rx(skb); | 1646 | netif_rx(skb); |
1647 | 1647 | ||
1648 | /* Update stats */ | 1648 | /* Update stats */ |
1649 | dev->last_rx = jiffies; | ||
1650 | lp->stats.rx_packets++; | 1649 | lp->stats.rx_packets++; |
1651 | lp->stats.rx_bytes += pkt_len; | 1650 | lp->stats.rx_bytes += pkt_len; |
1652 | } | 1651 | } |
diff --git a/drivers/net/tulip/dmfe.c b/drivers/net/tulip/dmfe.c index 0ec3281529f9..28a5c51b43a0 100644 --- a/drivers/net/tulip/dmfe.c +++ b/drivers/net/tulip/dmfe.c | |||
@@ -1008,7 +1008,6 @@ static void dmfe_rx_packet(struct DEVICE *dev, struct dmfe_board_info * db) | |||
1008 | 1008 | ||
1009 | skb->protocol = eth_type_trans(skb, dev); | 1009 | skb->protocol = eth_type_trans(skb, dev); |
1010 | netif_rx(skb); | 1010 | netif_rx(skb); |
1011 | dev->last_rx = jiffies; | ||
1012 | db->stats.rx_packets++; | 1011 | db->stats.rx_packets++; |
1013 | db->stats.rx_bytes += rxlen; | 1012 | db->stats.rx_bytes += rxlen; |
1014 | } | 1013 | } |
diff --git a/drivers/net/tulip/interrupt.c b/drivers/net/tulip/interrupt.c index c6bad987d63e..739d610d18c5 100644 --- a/drivers/net/tulip/interrupt.c +++ b/drivers/net/tulip/interrupt.c | |||
@@ -231,7 +231,6 @@ int tulip_poll(struct napi_struct *napi, int budget) | |||
231 | 231 | ||
232 | netif_receive_skb(skb); | 232 | netif_receive_skb(skb); |
233 | 233 | ||
234 | dev->last_rx = jiffies; | ||
235 | tp->stats.rx_packets++; | 234 | tp->stats.rx_packets++; |
236 | tp->stats.rx_bytes += pkt_len; | 235 | tp->stats.rx_bytes += pkt_len; |
237 | } | 236 | } |
@@ -444,7 +443,6 @@ static int tulip_rx(struct net_device *dev) | |||
444 | 443 | ||
445 | netif_rx(skb); | 444 | netif_rx(skb); |
446 | 445 | ||
447 | dev->last_rx = jiffies; | ||
448 | tp->stats.rx_packets++; | 446 | tp->stats.rx_packets++; |
449 | tp->stats.rx_bytes += pkt_len; | 447 | tp->stats.rx_bytes += pkt_len; |
450 | } | 448 | } |
diff --git a/drivers/net/tulip/uli526x.c b/drivers/net/tulip/uli526x.c index 298649a236cb..35c57f6e630b 100644 --- a/drivers/net/tulip/uli526x.c +++ b/drivers/net/tulip/uli526x.c | |||
@@ -854,7 +854,6 @@ static void uli526x_rx_packet(struct net_device *dev, struct uli526x_board_info | |||
854 | 854 | ||
855 | skb->protocol = eth_type_trans(skb, dev); | 855 | skb->protocol = eth_type_trans(skb, dev); |
856 | netif_rx(skb); | 856 | netif_rx(skb); |
857 | dev->last_rx = jiffies; | ||
858 | db->stats.rx_packets++; | 857 | db->stats.rx_packets++; |
859 | db->stats.rx_bytes += rxlen; | 858 | db->stats.rx_bytes += rxlen; |
860 | 859 | ||
diff --git a/drivers/net/tulip/winbond-840.c b/drivers/net/tulip/winbond-840.c index e4cb408a70fe..022d99af8646 100644 --- a/drivers/net/tulip/winbond-840.c +++ b/drivers/net/tulip/winbond-840.c | |||
@@ -1253,7 +1253,6 @@ static int netdev_rx(struct net_device *dev) | |||
1253 | #endif | 1253 | #endif |
1254 | skb->protocol = eth_type_trans(skb, dev); | 1254 | skb->protocol = eth_type_trans(skb, dev); |
1255 | netif_rx(skb); | 1255 | netif_rx(skb); |
1256 | dev->last_rx = jiffies; | ||
1257 | np->stats.rx_packets++; | 1256 | np->stats.rx_packets++; |
1258 | np->stats.rx_bytes += pkt_len; | 1257 | np->stats.rx_bytes += pkt_len; |
1259 | } | 1258 | } |
diff --git a/drivers/net/tulip/xircom_cb.c b/drivers/net/tulip/xircom_cb.c index 3c0b96b0e925..13c8703ecb9f 100644 --- a/drivers/net/tulip/xircom_cb.c +++ b/drivers/net/tulip/xircom_cb.c | |||
@@ -1201,7 +1201,6 @@ static void investigate_read_descriptor(struct net_device *dev,struct xircom_pri | |||
1201 | skb_put(skb, pkt_len); | 1201 | skb_put(skb, pkt_len); |
1202 | skb->protocol = eth_type_trans(skb, dev); | 1202 | skb->protocol = eth_type_trans(skb, dev); |
1203 | netif_rx(skb); | 1203 | netif_rx(skb); |
1204 | dev->last_rx = jiffies; | ||
1205 | card->stats.rx_packets++; | 1204 | card->stats.rx_packets++; |
1206 | card->stats.rx_bytes += pkt_len; | 1205 | card->stats.rx_bytes += pkt_len; |
1207 | 1206 | ||
diff --git a/drivers/net/tun.c b/drivers/net/tun.c index 64c7fc7ff08d..680d78e38f13 100644 --- a/drivers/net/tun.c +++ b/drivers/net/tun.c | |||
@@ -529,7 +529,6 @@ static __inline__ ssize_t tun_get_user(struct tun_struct *tun, struct iovec *iv, | |||
529 | } | 529 | } |
530 | 530 | ||
531 | netif_rx_ni(skb); | 531 | netif_rx_ni(skb); |
532 | tun->dev->last_rx = jiffies; | ||
533 | 532 | ||
534 | tun->dev->stats.rx_packets++; | 533 | tun->dev->stats.rx_packets++; |
535 | tun->dev->stats.rx_bytes += len; | 534 | tun->dev->stats.rx_bytes += len; |
diff --git a/drivers/net/typhoon.c b/drivers/net/typhoon.c index 6f191e9f610b..876398724ba7 100644 --- a/drivers/net/typhoon.c +++ b/drivers/net/typhoon.c | |||
@@ -1729,7 +1729,6 @@ typhoon_rx(struct typhoon *tp, struct basic_ring *rxRing, volatile __le32 * read | |||
1729 | netif_receive_skb(new_skb); | 1729 | netif_receive_skb(new_skb); |
1730 | spin_unlock(&tp->state_lock); | 1730 | spin_unlock(&tp->state_lock); |
1731 | 1731 | ||
1732 | tp->dev->last_rx = jiffies; | ||
1733 | received++; | 1732 | received++; |
1734 | budget--; | 1733 | budget--; |
1735 | } | 1734 | } |
diff --git a/drivers/net/ucc_geth.c b/drivers/net/ucc_geth.c index c87747bb24c5..4931af736630 100644 --- a/drivers/net/ucc_geth.c +++ b/drivers/net/ucc_geth.c | |||
@@ -3502,8 +3502,6 @@ static int ucc_geth_rx(struct ucc_geth_private *ugeth, u8 rxQ, int rx_work_limit | |||
3502 | netif_receive_skb(skb); | 3502 | netif_receive_skb(skb); |
3503 | } | 3503 | } |
3504 | 3504 | ||
3505 | ugeth->dev->last_rx = jiffies; | ||
3506 | |||
3507 | skb = get_new_skb(ugeth, bd); | 3505 | skb = get_new_skb(ugeth, bd); |
3508 | if (!skb) { | 3506 | if (!skb) { |
3509 | if (netif_msg_rx_err(ugeth)) | 3507 | if (netif_msg_rx_err(ugeth)) |
diff --git a/drivers/net/usb/catc.c b/drivers/net/usb/catc.c index 466a89e24444..d7621239059a 100644 --- a/drivers/net/usb/catc.c +++ b/drivers/net/usb/catc.c | |||
@@ -271,8 +271,6 @@ static void catc_rx_done(struct urb *urb) | |||
271 | 271 | ||
272 | } while (pkt_start - (u8 *) urb->transfer_buffer < urb->actual_length); | 272 | } while (pkt_start - (u8 *) urb->transfer_buffer < urb->actual_length); |
273 | 273 | ||
274 | catc->netdev->last_rx = jiffies; | ||
275 | |||
276 | if (catc->is_f5u011) { | 274 | if (catc->is_f5u011) { |
277 | if (atomic_read(&catc->recq_sz)) { | 275 | if (atomic_read(&catc->recq_sz)) { |
278 | int status; | 276 | int status; |
diff --git a/drivers/net/via-rhine.c b/drivers/net/via-rhine.c index bb54a936a807..9a650d0a6795 100644 --- a/drivers/net/via-rhine.c +++ b/drivers/net/via-rhine.c | |||
@@ -1504,7 +1504,6 @@ static int rhine_rx(struct net_device *dev, int limit) | |||
1504 | } | 1504 | } |
1505 | skb->protocol = eth_type_trans(skb, dev); | 1505 | skb->protocol = eth_type_trans(skb, dev); |
1506 | netif_receive_skb(skb); | 1506 | netif_receive_skb(skb); |
1507 | dev->last_rx = jiffies; | ||
1508 | rp->stats.rx_bytes += pkt_len; | 1507 | rp->stats.rx_bytes += pkt_len; |
1509 | rp->stats.rx_packets++; | 1508 | rp->stats.rx_packets++; |
1510 | } | 1509 | } |
diff --git a/drivers/net/via-velocity.c b/drivers/net/via-velocity.c index 3590ea5a902d..448772f6cb33 100644 --- a/drivers/net/via-velocity.c +++ b/drivers/net/via-velocity.c | |||
@@ -1412,8 +1412,6 @@ static int velocity_rx_srv(struct velocity_info *vptr, int status) | |||
1412 | 1412 | ||
1413 | rd->size |= RX_INTEN; | 1413 | rd->size |= RX_INTEN; |
1414 | 1414 | ||
1415 | vptr->dev->last_rx = jiffies; | ||
1416 | |||
1417 | rd_curr++; | 1415 | rd_curr++; |
1418 | if (rd_curr >= vptr->options.numrx) | 1416 | if (rd_curr >= vptr->options.numrx) |
1419 | rd_curr = 0; | 1417 | rd_curr = 0; |
diff --git a/drivers/net/wan/cosa.c b/drivers/net/wan/cosa.c index 7f97f8d08c39..d80b72e22dea 100644 --- a/drivers/net/wan/cosa.c +++ b/drivers/net/wan/cosa.c | |||
@@ -754,7 +754,6 @@ static int cosa_net_rx_done(struct channel_data *chan) | |||
754 | chan->netdev->stats.rx_bytes += chan->cosa->rxsize; | 754 | chan->netdev->stats.rx_bytes += chan->cosa->rxsize; |
755 | netif_rx(chan->rx_skb); | 755 | netif_rx(chan->rx_skb); |
756 | chan->rx_skb = NULL; | 756 | chan->rx_skb = NULL; |
757 | chan->netdev->last_rx = jiffies; | ||
758 | return 0; | 757 | return 0; |
759 | } | 758 | } |
760 | 759 | ||
diff --git a/drivers/net/wan/cycx_x25.c b/drivers/net/wan/cycx_x25.c index 5a7303dc0965..aeea321e4a9d 100644 --- a/drivers/net/wan/cycx_x25.c +++ b/drivers/net/wan/cycx_x25.c | |||
@@ -843,7 +843,6 @@ static void cycx_x25_irq_rx(struct cycx_device *card, struct cycx_x25_cmd *cmd) | |||
843 | 843 | ||
844 | skb_reset_mac_header(skb); | 844 | skb_reset_mac_header(skb); |
845 | netif_rx(skb); | 845 | netif_rx(skb); |
846 | dev->last_rx = jiffies; /* timestamp */ | ||
847 | } | 846 | } |
848 | 847 | ||
849 | /* Connect interrupt handler. */ | 848 | /* Connect interrupt handler. */ |
@@ -1494,7 +1493,6 @@ static void cycx_x25_chan_send_event(struct net_device *dev, u8 event) | |||
1494 | 1493 | ||
1495 | skb->protocol = x25_type_trans(skb, dev); | 1494 | skb->protocol = x25_type_trans(skb, dev); |
1496 | netif_rx(skb); | 1495 | netif_rx(skb); |
1497 | dev->last_rx = jiffies; /* timestamp */ | ||
1498 | } | 1496 | } |
1499 | 1497 | ||
1500 | /* Convert line speed in bps to a number used by cyclom 2x code. */ | 1498 | /* Convert line speed in bps to a number used by cyclom 2x code. */ |
diff --git a/drivers/net/wan/dlci.c b/drivers/net/wan/dlci.c index b14242768fad..5d13832978eb 100644 --- a/drivers/net/wan/dlci.c +++ b/drivers/net/wan/dlci.c | |||
@@ -181,7 +181,6 @@ static void dlci_receive(struct sk_buff *skb, struct net_device *dev) | |||
181 | dlp->stats.rx_bytes += skb->len; | 181 | dlp->stats.rx_bytes += skb->len; |
182 | netif_rx(skb); | 182 | netif_rx(skb); |
183 | dlp->stats.rx_packets++; | 183 | dlp->stats.rx_packets++; |
184 | dev->last_rx = jiffies; | ||
185 | } | 184 | } |
186 | else | 185 | else |
187 | dev_kfree_skb(skb); | 186 | dev_kfree_skb(skb); |
diff --git a/drivers/net/wan/dscc4.c b/drivers/net/wan/dscc4.c index 7d16ca3cb93c..888025db2f02 100644 --- a/drivers/net/wan/dscc4.c +++ b/drivers/net/wan/dscc4.c | |||
@@ -659,7 +659,6 @@ static inline void dscc4_rx_skb(struct dscc4_dev_priv *dpriv, | |||
659 | skb_put(skb, pkt_len); | 659 | skb_put(skb, pkt_len); |
660 | if (netif_running(dev)) | 660 | if (netif_running(dev)) |
661 | skb->protocol = hdlc_type_trans(skb, dev); | 661 | skb->protocol = hdlc_type_trans(skb, dev); |
662 | skb->dev->last_rx = jiffies; | ||
663 | netif_rx(skb); | 662 | netif_rx(skb); |
664 | } else { | 663 | } else { |
665 | if (skb->data[pkt_len] & FrameRdo) | 664 | if (skb->data[pkt_len] & FrameRdo) |
diff --git a/drivers/net/wan/farsync.c b/drivers/net/wan/farsync.c index 9557ad078ab8..48a2c9d28950 100644 --- a/drivers/net/wan/farsync.c +++ b/drivers/net/wan/farsync.c | |||
@@ -896,7 +896,6 @@ fst_rx_dma_complete(struct fst_card_info *card, struct fst_port_info *port, | |||
896 | fst_process_rx_status(rx_status, port_to_dev(port)->name); | 896 | fst_process_rx_status(rx_status, port_to_dev(port)->name); |
897 | if (rx_status == NET_RX_DROP) | 897 | if (rx_status == NET_RX_DROP) |
898 | dev->stats.rx_dropped++; | 898 | dev->stats.rx_dropped++; |
899 | dev->last_rx = jiffies; | ||
900 | } | 899 | } |
901 | 900 | ||
902 | /* | 901 | /* |
@@ -1322,7 +1321,6 @@ fst_intr_rx(struct fst_card_info *card, struct fst_port_info *port) | |||
1322 | fst_process_rx_status(rx_status, port_to_dev(port)->name); | 1321 | fst_process_rx_status(rx_status, port_to_dev(port)->name); |
1323 | if (rx_status == NET_RX_DROP) | 1322 | if (rx_status == NET_RX_DROP) |
1324 | dev->stats.rx_dropped++; | 1323 | dev->stats.rx_dropped++; |
1325 | dev->last_rx = jiffies; | ||
1326 | } else { | 1324 | } else { |
1327 | card->dma_skb_rx = skb; | 1325 | card->dma_skb_rx = skb; |
1328 | card->dma_port_rx = port; | 1326 | card->dma_port_rx = port; |
diff --git a/drivers/net/wan/hd6457x.c b/drivers/net/wan/hd6457x.c index 591fb45a7c68..434583a94b32 100644 --- a/drivers/net/wan/hd6457x.c +++ b/drivers/net/wan/hd6457x.c | |||
@@ -328,7 +328,6 @@ static inline void sca_rx(card_t *card, port_t *port, pkt_desc __iomem *desc, u1 | |||
328 | #endif | 328 | #endif |
329 | dev->stats.rx_packets++; | 329 | dev->stats.rx_packets++; |
330 | dev->stats.rx_bytes += skb->len; | 330 | dev->stats.rx_bytes += skb->len; |
331 | dev->last_rx = jiffies; | ||
332 | skb->protocol = hdlc_type_trans(skb, dev); | 331 | skb->protocol = hdlc_type_trans(skb, dev); |
333 | netif_rx(skb); | 332 | netif_rx(skb); |
334 | } | 333 | } |
diff --git a/drivers/net/wan/hostess_sv11.c b/drivers/net/wan/hostess_sv11.c index e299313f828a..af54f0cf1b35 100644 --- a/drivers/net/wan/hostess_sv11.c +++ b/drivers/net/wan/hostess_sv11.c | |||
@@ -66,7 +66,6 @@ static void hostess_input(struct z8530_channel *c, struct sk_buff *skb) | |||
66 | * it right now. | 66 | * it right now. |
67 | */ | 67 | */ |
68 | netif_rx(skb); | 68 | netif_rx(skb); |
69 | c->netdevice->last_rx = jiffies; | ||
70 | } | 69 | } |
71 | 70 | ||
72 | /* | 71 | /* |
diff --git a/drivers/net/wan/lapbether.c b/drivers/net/wan/lapbether.c index 24fd613466b7..5b61b3eef45f 100644 --- a/drivers/net/wan/lapbether.c +++ b/drivers/net/wan/lapbether.c | |||
@@ -143,7 +143,6 @@ static int lapbeth_data_indication(struct net_device *dev, struct sk_buff *skb) | |||
143 | *ptr = 0x00; | 143 | *ptr = 0x00; |
144 | 144 | ||
145 | skb->protocol = x25_type_trans(skb, dev); | 145 | skb->protocol = x25_type_trans(skb, dev); |
146 | skb->dev->last_rx = jiffies; | ||
147 | return netif_rx(skb); | 146 | return netif_rx(skb); |
148 | } | 147 | } |
149 | 148 | ||
@@ -235,7 +234,6 @@ static void lapbeth_connected(struct net_device *dev, int reason) | |||
235 | *ptr = 0x01; | 234 | *ptr = 0x01; |
236 | 235 | ||
237 | skb->protocol = x25_type_trans(skb, dev); | 236 | skb->protocol = x25_type_trans(skb, dev); |
238 | skb->dev->last_rx = jiffies; | ||
239 | netif_rx(skb); | 237 | netif_rx(skb); |
240 | } | 238 | } |
241 | 239 | ||
@@ -253,7 +251,6 @@ static void lapbeth_disconnected(struct net_device *dev, int reason) | |||
253 | *ptr = 0x02; | 251 | *ptr = 0x02; |
254 | 252 | ||
255 | skb->protocol = x25_type_trans(skb, dev); | 253 | skb->protocol = x25_type_trans(skb, dev); |
256 | skb->dev->last_rx = jiffies; | ||
257 | netif_rx(skb); | 254 | netif_rx(skb); |
258 | } | 255 | } |
259 | 256 | ||
diff --git a/drivers/net/wan/lmc/lmc_main.c b/drivers/net/wan/lmc/lmc_main.c index d7bb63e616b5..feac3b99f8fe 100644 --- a/drivers/net/wan/lmc/lmc_main.c +++ b/drivers/net/wan/lmc/lmc_main.c | |||
@@ -1594,7 +1594,6 @@ static int lmc_rx(struct net_device *dev) | |||
1594 | goto skip_packet; | 1594 | goto skip_packet; |
1595 | } | 1595 | } |
1596 | 1596 | ||
1597 | dev->last_rx = jiffies; | ||
1598 | sc->lmc_device->stats.rx_packets++; | 1597 | sc->lmc_device->stats.rx_packets++; |
1599 | sc->lmc_device->stats.rx_bytes += len; | 1598 | sc->lmc_device->stats.rx_bytes += len; |
1600 | 1599 | ||
diff --git a/drivers/net/wan/lmc/lmc_proto.c b/drivers/net/wan/lmc/lmc_proto.c index be9877ff551e..94b4c208b013 100644 --- a/drivers/net/wan/lmc/lmc_proto.c +++ b/drivers/net/wan/lmc/lmc_proto.c | |||
@@ -142,7 +142,6 @@ void lmc_proto_netif(lmc_softc_t *sc, struct sk_buff *skb) /*FOLD00*/ | |||
142 | case LMC_PPP: | 142 | case LMC_PPP: |
143 | case LMC_NET: | 143 | case LMC_NET: |
144 | default: | 144 | default: |
145 | skb->dev->last_rx = jiffies; | ||
146 | netif_rx(skb); | 145 | netif_rx(skb); |
147 | break; | 146 | break; |
148 | case LMC_RAW: | 147 | case LMC_RAW: |
diff --git a/drivers/net/wan/sbni.c b/drivers/net/wan/sbni.c index ee51b6a5e605..6db063e2d5bb 100644 --- a/drivers/net/wan/sbni.c +++ b/drivers/net/wan/sbni.c | |||
@@ -1013,13 +1013,11 @@ indicate_pkt( struct net_device *dev ) | |||
1013 | #ifdef CONFIG_SBNI_MULTILINE | 1013 | #ifdef CONFIG_SBNI_MULTILINE |
1014 | skb->protocol = eth_type_trans( skb, nl->master ); | 1014 | skb->protocol = eth_type_trans( skb, nl->master ); |
1015 | netif_rx( skb ); | 1015 | netif_rx( skb ); |
1016 | dev->last_rx = jiffies; | ||
1017 | ++((struct net_local *) nl->master->priv)->stats.rx_packets; | 1016 | ++((struct net_local *) nl->master->priv)->stats.rx_packets; |
1018 | ((struct net_local *) nl->master->priv)->stats.rx_bytes += nl->inppos; | 1017 | ((struct net_local *) nl->master->priv)->stats.rx_bytes += nl->inppos; |
1019 | #else | 1018 | #else |
1020 | skb->protocol = eth_type_trans( skb, dev ); | 1019 | skb->protocol = eth_type_trans( skb, dev ); |
1021 | netif_rx( skb ); | 1020 | netif_rx( skb ); |
1022 | dev->last_rx = jiffies; | ||
1023 | ++nl->stats.rx_packets; | 1021 | ++nl->stats.rx_packets; |
1024 | nl->stats.rx_bytes += nl->inppos; | 1022 | nl->stats.rx_bytes += nl->inppos; |
1025 | #endif | 1023 | #endif |
diff --git a/drivers/net/wan/sealevel.c b/drivers/net/wan/sealevel.c index c0235844a4d5..0941a26f6e3f 100644 --- a/drivers/net/wan/sealevel.c +++ b/drivers/net/wan/sealevel.c | |||
@@ -68,7 +68,6 @@ static void sealevel_input(struct z8530_channel *c, struct sk_buff *skb) | |||
68 | skb_reset_mac_header(skb); | 68 | skb_reset_mac_header(skb); |
69 | skb->dev = c->netdevice; | 69 | skb->dev = c->netdevice; |
70 | netif_rx(skb); | 70 | netif_rx(skb); |
71 | c->netdevice->last_rx = jiffies; | ||
72 | } | 71 | } |
73 | 72 | ||
74 | /* | 73 | /* |
diff --git a/drivers/net/wan/syncppp.c b/drivers/net/wan/syncppp.c index 6e92f7b44b1a..58ae8a2223af 100644 --- a/drivers/net/wan/syncppp.c +++ b/drivers/net/wan/syncppp.c | |||
@@ -284,7 +284,6 @@ static void sppp_input (struct net_device *dev, struct sk_buff *skb) | |||
284 | printk(KERN_DEBUG "Yow an IP frame.\n"); | 284 | printk(KERN_DEBUG "Yow an IP frame.\n"); |
285 | skb->protocol=htons(ETH_P_IP); | 285 | skb->protocol=htons(ETH_P_IP); |
286 | netif_rx(skb); | 286 | netif_rx(skb); |
287 | dev->last_rx = jiffies; | ||
288 | goto done; | 287 | goto done; |
289 | } | 288 | } |
290 | break; | 289 | break; |
@@ -294,7 +293,6 @@ static void sppp_input (struct net_device *dev, struct sk_buff *skb) | |||
294 | if (sp->lcp.state == LCP_STATE_OPENED) { | 293 | if (sp->lcp.state == LCP_STATE_OPENED) { |
295 | skb->protocol=htons(ETH_P_IPX); | 294 | skb->protocol=htons(ETH_P_IPX); |
296 | netif_rx(skb); | 295 | netif_rx(skb); |
297 | dev->last_rx = jiffies; | ||
298 | goto done; | 296 | goto done; |
299 | } | 297 | } |
300 | break; | 298 | break; |
@@ -321,14 +319,12 @@ static void sppp_input (struct net_device *dev, struct sk_buff *skb) | |||
321 | case ETH_P_IP: | 319 | case ETH_P_IP: |
322 | skb->protocol=htons(ETH_P_IP); | 320 | skb->protocol=htons(ETH_P_IP); |
323 | netif_rx(skb); | 321 | netif_rx(skb); |
324 | dev->last_rx = jiffies; | ||
325 | goto done; | 322 | goto done; |
326 | #endif | 323 | #endif |
327 | #ifdef CONFIG_IPX | 324 | #ifdef CONFIG_IPX |
328 | case ETH_P_IPX: | 325 | case ETH_P_IPX: |
329 | skb->protocol=htons(ETH_P_IPX); | 326 | skb->protocol=htons(ETH_P_IPX); |
330 | netif_rx(skb); | 327 | netif_rx(skb); |
331 | dev->last_rx = jiffies; | ||
332 | goto done; | 328 | goto done; |
333 | #endif | 329 | #endif |
334 | } | 330 | } |
diff --git a/drivers/net/wan/wanxl.c b/drivers/net/wan/wanxl.c index a8a5ca0ee6c2..88459490ecd2 100644 --- a/drivers/net/wan/wanxl.c +++ b/drivers/net/wan/wanxl.c | |||
@@ -220,7 +220,6 @@ static inline void wanxl_rx_intr(card_t *card) | |||
220 | #endif | 220 | #endif |
221 | dev->stats.rx_packets++; | 221 | dev->stats.rx_packets++; |
222 | dev->stats.rx_bytes += skb->len; | 222 | dev->stats.rx_bytes += skb->len; |
223 | dev->last_rx = jiffies; | ||
224 | skb->protocol = hdlc_type_trans(skb, dev); | 223 | skb->protocol = hdlc_type_trans(skb, dev); |
225 | netif_rx(skb); | 224 | netif_rx(skb); |
226 | skb = NULL; | 225 | skb = NULL; |
diff --git a/drivers/net/wan/x25_asy.c b/drivers/net/wan/x25_asy.c index 2a6c7a60756f..3b7bdfd25148 100644 --- a/drivers/net/wan/x25_asy.c +++ b/drivers/net/wan/x25_asy.c | |||
@@ -211,7 +211,6 @@ static void x25_asy_bump(struct x25_asy *sl) | |||
211 | printk(KERN_DEBUG "x25_asy: data received err - %d\n", err); | 211 | printk(KERN_DEBUG "x25_asy: data received err - %d\n", err); |
212 | } else { | 212 | } else { |
213 | netif_rx(skb); | 213 | netif_rx(skb); |
214 | sl->dev->last_rx = jiffies; | ||
215 | sl->stats.rx_packets++; | 214 | sl->stats.rx_packets++; |
216 | } | 215 | } |
217 | } | 216 | } |
@@ -361,7 +360,6 @@ static int x25_asy_xmit(struct sk_buff *skb, struct net_device *dev) | |||
361 | 360 | ||
362 | static int x25_asy_data_indication(struct net_device *dev, struct sk_buff *skb) | 361 | static int x25_asy_data_indication(struct net_device *dev, struct sk_buff *skb) |
363 | { | 362 | { |
364 | skb->dev->last_rx = jiffies; | ||
365 | return netif_rx(skb); | 363 | return netif_rx(skb); |
366 | } | 364 | } |
367 | 365 | ||
@@ -413,7 +411,6 @@ static void x25_asy_connected(struct net_device *dev, int reason) | |||
413 | 411 | ||
414 | skb->protocol = x25_type_trans(skb, sl->dev); | 412 | skb->protocol = x25_type_trans(skb, sl->dev); |
415 | netif_rx(skb); | 413 | netif_rx(skb); |
416 | sl->dev->last_rx = jiffies; | ||
417 | } | 414 | } |
418 | 415 | ||
419 | static void x25_asy_disconnected(struct net_device *dev, int reason) | 416 | static void x25_asy_disconnected(struct net_device *dev, int reason) |
@@ -433,7 +430,6 @@ static void x25_asy_disconnected(struct net_device *dev, int reason) | |||
433 | 430 | ||
434 | skb->protocol = x25_type_trans(skb, sl->dev); | 431 | skb->protocol = x25_type_trans(skb, sl->dev); |
435 | netif_rx(skb); | 432 | netif_rx(skb); |
436 | sl->dev->last_rx = jiffies; | ||
437 | } | 433 | } |
438 | 434 | ||
439 | static struct lapb_register_struct x25_asy_callbacks = { | 435 | static struct lapb_register_struct x25_asy_callbacks = { |
diff --git a/drivers/net/wireless/airo.c b/drivers/net/wireless/airo.c index d7388d2aee97..c8dc6568cec9 100644 --- a/drivers/net/wireless/airo.c +++ b/drivers/net/wireless/airo.c | |||
@@ -3366,7 +3366,6 @@ badrx: | |||
3366 | skb->protocol = htons(ETH_P_802_2); | 3366 | skb->protocol = htons(ETH_P_802_2); |
3367 | } else | 3367 | } else |
3368 | skb->protocol = eth_type_trans(skb,dev); | 3368 | skb->protocol = eth_type_trans(skb,dev); |
3369 | skb->dev->last_rx = jiffies; | ||
3370 | skb->ip_summed = CHECKSUM_NONE; | 3369 | skb->ip_summed = CHECKSUM_NONE; |
3371 | 3370 | ||
3372 | netif_rx( skb ); | 3371 | netif_rx( skb ); |
@@ -3596,7 +3595,6 @@ badmic: | |||
3596 | 3595 | ||
3597 | skb->ip_summed = CHECKSUM_NONE; | 3596 | skb->ip_summed = CHECKSUM_NONE; |
3598 | skb->protocol = eth_type_trans(skb, ai->dev); | 3597 | skb->protocol = eth_type_trans(skb, ai->dev); |
3599 | skb->dev->last_rx = jiffies; | ||
3600 | netif_rx(skb); | 3598 | netif_rx(skb); |
3601 | } | 3599 | } |
3602 | badrx: | 3600 | badrx: |
@@ -3690,7 +3688,6 @@ void mpi_receive_802_11 (struct airo_info *ai) | |||
3690 | skb->pkt_type = PACKET_OTHERHOST; | 3688 | skb->pkt_type = PACKET_OTHERHOST; |
3691 | skb->dev = ai->wifidev; | 3689 | skb->dev = ai->wifidev; |
3692 | skb->protocol = htons(ETH_P_802_2); | 3690 | skb->protocol = htons(ETH_P_802_2); |
3693 | skb->dev->last_rx = jiffies; | ||
3694 | skb->ip_summed = CHECKSUM_NONE; | 3691 | skb->ip_summed = CHECKSUM_NONE; |
3695 | netif_rx( skb ); | 3692 | netif_rx( skb ); |
3696 | badrx: | 3693 | badrx: |
diff --git a/drivers/net/wireless/arlan-main.c b/drivers/net/wireless/arlan-main.c index b608643d5fcc..bfca15da6f0f 100644 --- a/drivers/net/wireless/arlan-main.c +++ b/drivers/net/wireless/arlan-main.c | |||
@@ -1529,7 +1529,6 @@ static void arlan_rx_interrupt(struct net_device *dev, u_char rxStatus, u_short | |||
1529 | printk(KERN_WARNING "arlan kernel pkt type trans %x \n", skb->protocol); | 1529 | printk(KERN_WARNING "arlan kernel pkt type trans %x \n", skb->protocol); |
1530 | } | 1530 | } |
1531 | netif_rx(skb); | 1531 | netif_rx(skb); |
1532 | dev->last_rx = jiffies; | ||
1533 | dev->stats.rx_packets++; | 1532 | dev->stats.rx_packets++; |
1534 | dev->stats.rx_bytes += pkt_len; | 1533 | dev->stats.rx_bytes += pkt_len; |
1535 | } | 1534 | } |
diff --git a/drivers/net/wireless/atmel.c b/drivers/net/wireless/atmel.c index 6e20552c1881..d16931589f81 100644 --- a/drivers/net/wireless/atmel.c +++ b/drivers/net/wireless/atmel.c | |||
@@ -919,7 +919,6 @@ static void fast_rx_path(struct atmel_private *priv, | |||
919 | else | 919 | else |
920 | memcpy(&skbp[6], header->addr2, 6); /* source address */ | 920 | memcpy(&skbp[6], header->addr2, 6); /* source address */ |
921 | 921 | ||
922 | priv->dev->last_rx = jiffies; | ||
923 | skb->protocol = eth_type_trans(skb, priv->dev); | 922 | skb->protocol = eth_type_trans(skb, priv->dev); |
924 | skb->ip_summed = CHECKSUM_NONE; | 923 | skb->ip_summed = CHECKSUM_NONE; |
925 | netif_rx(skb); | 924 | netif_rx(skb); |
@@ -1026,7 +1025,6 @@ static void frag_rx_path(struct atmel_private *priv, | |||
1026 | memcpy(skb_put(skb, priv->frag_len + 12), | 1025 | memcpy(skb_put(skb, priv->frag_len + 12), |
1027 | priv->rx_buf, | 1026 | priv->rx_buf, |
1028 | priv->frag_len + 12); | 1027 | priv->frag_len + 12); |
1029 | priv->dev->last_rx = jiffies; | ||
1030 | skb->protocol = eth_type_trans(skb, priv->dev); | 1028 | skb->protocol = eth_type_trans(skb, priv->dev); |
1031 | skb->ip_summed = CHECKSUM_NONE; | 1029 | skb->ip_summed = CHECKSUM_NONE; |
1032 | netif_rx(skb); | 1030 | netif_rx(skb); |
diff --git a/drivers/net/wireless/hostap/hostap_80211_rx.c b/drivers/net/wireless/hostap/hostap_80211_rx.c index bbb8ec6683d7..5f64461aa54e 100644 --- a/drivers/net/wireless/hostap/hostap_80211_rx.c +++ b/drivers/net/wireless/hostap/hostap_80211_rx.c | |||
@@ -67,7 +67,6 @@ int prism2_rx_80211(struct net_device *dev, struct sk_buff *skb, | |||
67 | 67 | ||
68 | iface = netdev_priv(dev); | 68 | iface = netdev_priv(dev); |
69 | local = iface->local; | 69 | local = iface->local; |
70 | dev->last_rx = jiffies; | ||
71 | 70 | ||
72 | if (dev->type == ARPHRD_IEEE80211_PRISM) { | 71 | if (dev->type == ARPHRD_IEEE80211_PRISM) { |
73 | if (local->monitor_type == PRISM2_MONITOR_PRISM) { | 72 | if (local->monitor_type == PRISM2_MONITOR_PRISM) { |
@@ -883,8 +882,6 @@ void hostap_80211_rx(struct net_device *dev, struct sk_buff *skb, | |||
883 | from_assoc_ap = 1; | 882 | from_assoc_ap = 1; |
884 | } | 883 | } |
885 | 884 | ||
886 | dev->last_rx = jiffies; | ||
887 | |||
888 | if ((local->iw_mode == IW_MODE_MASTER || | 885 | if ((local->iw_mode == IW_MODE_MASTER || |
889 | local->iw_mode == IW_MODE_REPEAT) && | 886 | local->iw_mode == IW_MODE_REPEAT) && |
890 | !from_assoc_ap) { | 887 | !from_assoc_ap) { |
diff --git a/drivers/net/wireless/netwave_cs.c b/drivers/net/wireless/netwave_cs.c index be80c0093b79..24caec6caf1f 100644 --- a/drivers/net/wireless/netwave_cs.c +++ b/drivers/net/wireless/netwave_cs.c | |||
@@ -1307,7 +1307,6 @@ static int netwave_rx(struct net_device *dev) | |||
1307 | /* Queue packet for network layer */ | 1307 | /* Queue packet for network layer */ |
1308 | netif_rx(skb); | 1308 | netif_rx(skb); |
1309 | 1309 | ||
1310 | dev->last_rx = jiffies; | ||
1311 | priv->stats.rx_packets++; | 1310 | priv->stats.rx_packets++; |
1312 | priv->stats.rx_bytes += rcvLen; | 1311 | priv->stats.rx_bytes += rcvLen; |
1313 | 1312 | ||
diff --git a/drivers/net/wireless/orinoco.c b/drivers/net/wireless/orinoco.c index 5a39166e2a0f..b657a916b1d7 100644 --- a/drivers/net/wireless/orinoco.c +++ b/drivers/net/wireless/orinoco.c | |||
@@ -1289,7 +1289,6 @@ static void orinoco_rx_monitor(struct net_device *dev, u16 rxfid, | |||
1289 | skb->pkt_type = PACKET_OTHERHOST; | 1289 | skb->pkt_type = PACKET_OTHERHOST; |
1290 | skb->protocol = __constant_htons(ETH_P_802_2); | 1290 | skb->protocol = __constant_htons(ETH_P_802_2); |
1291 | 1291 | ||
1292 | dev->last_rx = jiffies; | ||
1293 | stats->rx_packets++; | 1292 | stats->rx_packets++; |
1294 | stats->rx_bytes += skb->len; | 1293 | stats->rx_bytes += skb->len; |
1295 | 1294 | ||
@@ -1538,7 +1537,6 @@ static void orinoco_rx(struct net_device *dev, | |||
1538 | else | 1537 | else |
1539 | memcpy(hdr->h_source, desc->addr2, ETH_ALEN); | 1538 | memcpy(hdr->h_source, desc->addr2, ETH_ALEN); |
1540 | 1539 | ||
1541 | dev->last_rx = jiffies; | ||
1542 | skb->protocol = eth_type_trans(skb, dev); | 1540 | skb->protocol = eth_type_trans(skb, dev); |
1543 | skb->ip_summed = CHECKSUM_NONE; | 1541 | skb->ip_summed = CHECKSUM_NONE; |
1544 | if (fc & IEEE80211_FCTL_TODS) | 1542 | if (fc & IEEE80211_FCTL_TODS) |
diff --git a/drivers/net/wireless/ray_cs.c b/drivers/net/wireless/ray_cs.c index bf0b9299b5df..81b71f07f5ad 100644 --- a/drivers/net/wireless/ray_cs.c +++ b/drivers/net/wireless/ray_cs.c | |||
@@ -2284,7 +2284,6 @@ static void rx_data(struct net_device *dev, struct rcs __iomem *prcs, unsigned i | |||
2284 | 2284 | ||
2285 | skb->protocol = eth_type_trans(skb,dev); | 2285 | skb->protocol = eth_type_trans(skb,dev); |
2286 | netif_rx(skb); | 2286 | netif_rx(skb); |
2287 | dev->last_rx = jiffies; | ||
2288 | local->stats.rx_packets++; | 2287 | local->stats.rx_packets++; |
2289 | local->stats.rx_bytes += total_len; | 2288 | local->stats.rx_bytes += total_len; |
2290 | 2289 | ||
diff --git a/drivers/net/wireless/strip.c b/drivers/net/wireless/strip.c index 417e9e675fac..cf0d070ced13 100644 --- a/drivers/net/wireless/strip.c +++ b/drivers/net/wireless/strip.c | |||
@@ -1997,7 +1997,6 @@ static void deliver_packet(struct strip *strip_info, STRIP_Header * header, | |||
1997 | #ifdef EXT_COUNTERS | 1997 | #ifdef EXT_COUNTERS |
1998 | strip_info->rx_bytes += packetlen; | 1998 | strip_info->rx_bytes += packetlen; |
1999 | #endif | 1999 | #endif |
2000 | skb->dev->last_rx = jiffies; | ||
2001 | netif_rx(skb); | 2000 | netif_rx(skb); |
2002 | } | 2001 | } |
2003 | } | 2002 | } |
@@ -2490,7 +2489,6 @@ static void strip_dev_setup(struct net_device *dev) | |||
2490 | */ | 2489 | */ |
2491 | 2490 | ||
2492 | dev->trans_start = 0; | 2491 | dev->trans_start = 0; |
2493 | dev->last_rx = 0; | ||
2494 | dev->tx_queue_len = 30; /* Drop after 30 frames queued */ | 2492 | dev->tx_queue_len = 30; /* Drop after 30 frames queued */ |
2495 | 2493 | ||
2496 | dev->flags = 0; | 2494 | dev->flags = 0; |
diff --git a/drivers/net/wireless/wavelan.c b/drivers/net/wireless/wavelan.c index 6fa3d792ae27..1ac37e86b9bd 100644 --- a/drivers/net/wireless/wavelan.c +++ b/drivers/net/wireless/wavelan.c | |||
@@ -2528,7 +2528,6 @@ wv_packet_read(struct net_device * dev, u16 buf_off, int sksize) | |||
2528 | netif_rx(skb); | 2528 | netif_rx(skb); |
2529 | 2529 | ||
2530 | /* Keep statistics up to date */ | 2530 | /* Keep statistics up to date */ |
2531 | dev->last_rx = jiffies; | ||
2532 | lp->stats.rx_packets++; | 2531 | lp->stats.rx_packets++; |
2533 | lp->stats.rx_bytes += sksize; | 2532 | lp->stats.rx_bytes += sksize; |
2534 | 2533 | ||
diff --git a/drivers/net/wireless/wavelan_cs.c b/drivers/net/wireless/wavelan_cs.c index 0a3bacc20d96..de717f8ffd61 100644 --- a/drivers/net/wireless/wavelan_cs.c +++ b/drivers/net/wireless/wavelan_cs.c | |||
@@ -2878,7 +2878,6 @@ wv_packet_read(struct net_device * dev, | |||
2878 | netif_rx(skb); | 2878 | netif_rx(skb); |
2879 | 2879 | ||
2880 | /* Keep stats up to date */ | 2880 | /* Keep stats up to date */ |
2881 | dev->last_rx = jiffies; | ||
2882 | lp->stats.rx_packets++; | 2881 | lp->stats.rx_packets++; |
2883 | lp->stats.rx_bytes += sksize; | 2882 | lp->stats.rx_bytes += sksize; |
2884 | 2883 | ||
diff --git a/drivers/net/wireless/wl3501_cs.c b/drivers/net/wireless/wl3501_cs.c index 8b96f50d9c6f..c99a1b6b948f 100644 --- a/drivers/net/wireless/wl3501_cs.c +++ b/drivers/net/wireless/wl3501_cs.c | |||
@@ -1013,7 +1013,6 @@ static inline void wl3501_md_ind_interrupt(struct net_device *dev, | |||
1013 | wl3501_receive(this, skb->data, pkt_len); | 1013 | wl3501_receive(this, skb->data, pkt_len); |
1014 | skb_put(skb, pkt_len); | 1014 | skb_put(skb, pkt_len); |
1015 | skb->protocol = eth_type_trans(skb, dev); | 1015 | skb->protocol = eth_type_trans(skb, dev); |
1016 | dev->last_rx = jiffies; | ||
1017 | this->stats.rx_packets++; | 1016 | this->stats.rx_packets++; |
1018 | this->stats.rx_bytes += skb->len; | 1017 | this->stats.rx_bytes += skb->len; |
1019 | netif_rx(skb); | 1018 | netif_rx(skb); |
diff --git a/drivers/net/wireless/zd1201.c b/drivers/net/wireless/zd1201.c index b16ec6e5f0e3..bf744c1f5b23 100644 --- a/drivers/net/wireless/zd1201.c +++ b/drivers/net/wireless/zd1201.c | |||
@@ -328,7 +328,6 @@ static void zd1201_usbrx(struct urb *urb) | |||
328 | memcpy(skb_put(skb, 2), &data[datalen-24], 2); | 328 | memcpy(skb_put(skb, 2), &data[datalen-24], 2); |
329 | memcpy(skb_put(skb, len), data, len); | 329 | memcpy(skb_put(skb, len), data, len); |
330 | skb->protocol = eth_type_trans(skb, zd->dev); | 330 | skb->protocol = eth_type_trans(skb, zd->dev); |
331 | skb->dev->last_rx = jiffies; | ||
332 | zd->stats.rx_packets++; | 331 | zd->stats.rx_packets++; |
333 | zd->stats.rx_bytes += skb->len; | 332 | zd->stats.rx_bytes += skb->len; |
334 | netif_rx(skb); | 333 | netif_rx(skb); |
@@ -385,7 +384,6 @@ static void zd1201_usbrx(struct urb *urb) | |||
385 | memcpy(skb_put(skb, len), data+8, len); | 384 | memcpy(skb_put(skb, len), data+8, len); |
386 | } | 385 | } |
387 | skb->protocol = eth_type_trans(skb, zd->dev); | 386 | skb->protocol = eth_type_trans(skb, zd->dev); |
388 | skb->dev->last_rx = jiffies; | ||
389 | zd->stats.rx_packets++; | 387 | zd->stats.rx_packets++; |
390 | zd->stats.rx_bytes += skb->len; | 388 | zd->stats.rx_bytes += skb->len; |
391 | netif_rx(skb); | 389 | netif_rx(skb); |
diff --git a/drivers/net/xen-netfront.c b/drivers/net/xen-netfront.c index c6948d8f53f6..4b21bcf4af99 100644 --- a/drivers/net/xen-netfront.c +++ b/drivers/net/xen-netfront.c | |||
@@ -841,7 +841,6 @@ static int handle_incoming_queue(struct net_device *dev, | |||
841 | 841 | ||
842 | /* Pass it up. */ | 842 | /* Pass it up. */ |
843 | netif_receive_skb(skb); | 843 | netif_receive_skb(skb); |
844 | dev->last_rx = jiffies; | ||
845 | } | 844 | } |
846 | 845 | ||
847 | return packets_dropped; | 846 | return packets_dropped; |
diff --git a/drivers/net/yellowfin.c b/drivers/net/yellowfin.c index 511066688810..d8dbc57f3e56 100644 --- a/drivers/net/yellowfin.c +++ b/drivers/net/yellowfin.c | |||
@@ -1138,7 +1138,6 @@ static int yellowfin_rx(struct net_device *dev) | |||
1138 | } | 1138 | } |
1139 | skb->protocol = eth_type_trans(skb, dev); | 1139 | skb->protocol = eth_type_trans(skb, dev); |
1140 | netif_rx(skb); | 1140 | netif_rx(skb); |
1141 | dev->last_rx = jiffies; | ||
1142 | dev->stats.rx_packets++; | 1141 | dev->stats.rx_packets++; |
1143 | dev->stats.rx_bytes += pkt_len; | 1142 | dev->stats.rx_bytes += pkt_len; |
1144 | } | 1143 | } |
diff --git a/drivers/net/znet.c b/drivers/net/znet.c index fc7a8849306f..d7588bf6d6dd 100644 --- a/drivers/net/znet.c +++ b/drivers/net/znet.c | |||
@@ -785,7 +785,6 @@ static void znet_rx(struct net_device *dev) | |||
785 | } | 785 | } |
786 | skb->protocol=eth_type_trans(skb,dev); | 786 | skb->protocol=eth_type_trans(skb,dev); |
787 | netif_rx(skb); | 787 | netif_rx(skb); |
788 | dev->last_rx = jiffies; | ||
789 | dev->stats.rx_packets++; | 788 | dev->stats.rx_packets++; |
790 | dev->stats.rx_bytes += pkt_len; | 789 | dev->stats.rx_bytes += pkt_len; |
791 | } | 790 | } |