Commit 9e819345 authored by Dave Jones's avatar Dave Jones Committed by Jeff Garzik

Add dev->last_rx = jiffies at time of raw interface packet receive,

for the following net drivers:

Several ham radio, several IrDA, lp4863, pcnet32, saa9730,
wireless orinoco.
parent dbbf0c91
...@@ -256,6 +256,7 @@ static void sp_bump(struct sixpack *sp, char cmd) ...@@ -256,6 +256,7 @@ static void sp_bump(struct sixpack *sp, char cmd)
skb->mac.raw = skb->data; skb->mac.raw = skb->data;
skb->protocol = htons(ETH_P_AX25); skb->protocol = htons(ETH_P_AX25);
netif_rx(skb); netif_rx(skb);
dev->last_rx = jiffies;
sp->stats.rx_packets++; sp->stats.rx_packets++;
} }
......
...@@ -706,6 +706,7 @@ static void do_rxpacket(struct net_device *dev) ...@@ -706,6 +706,7 @@ static void do_rxpacket(struct net_device *dev)
skb->protocol = htons(ETH_P_AX25); skb->protocol = htons(ETH_P_AX25);
skb->mac.raw = skb->data; skb->mac.raw = skb->data;
netif_rx(skb); netif_rx(skb);
dev->last_rx = jiffies;
bc->stats.rx_packets++; bc->stats.rx_packets++;
} }
......
...@@ -254,6 +254,7 @@ static int bpq_rcv(struct sk_buff *skb, struct net_device *dev, struct packet_ty ...@@ -254,6 +254,7 @@ static int bpq_rcv(struct sk_buff *skb, struct net_device *dev, struct packet_ty
skb->pkt_type = PACKET_HOST; skb->pkt_type = PACKET_HOST;
netif_rx(skb); netif_rx(skb);
dev->last_rx = jiffies;
return 0; return 0;
} }
......
...@@ -223,6 +223,7 @@ static void hdlc_rx_flag(struct net_device *dev, struct hdlcdrv_state *s) ...@@ -223,6 +223,7 @@ static void hdlc_rx_flag(struct net_device *dev, struct hdlcdrv_state *s)
skb->protocol = htons(ETH_P_AX25); skb->protocol = htons(ETH_P_AX25);
skb->mac.raw = skb->data; skb->mac.raw = skb->data;
netif_rx(skb); netif_rx(skb);
dev->last_rx = jiffies;
s->stats.rx_packets++; s->stats.rx_packets++;
} }
......
...@@ -345,6 +345,7 @@ static void ax_bump(struct ax_disp *ax) ...@@ -345,6 +345,7 @@ static void ax_bump(struct ax_disp *ax)
skb->mac.raw = skb->data; skb->mac.raw = skb->data;
skb->protocol = htons(ETH_P_AX25); skb->protocol = htons(ETH_P_AX25);
netif_rx(skb); netif_rx(skb);
dev->last_rx = jiffies;
tmp_ax->rx_packets++; tmp_ax->rx_packets++;
} }
......
...@@ -1661,6 +1661,7 @@ static void scc_net_rx(struct scc_channel *scc, struct sk_buff *skb) ...@@ -1661,6 +1661,7 @@ static void scc_net_rx(struct scc_channel *scc, struct sk_buff *skb)
skb->pkt_type = PACKET_HOST; skb->pkt_type = PACKET_HOST;
netif_rx(skb); netif_rx(skb);
dev->last_rx = jiffies;
return; return;
} }
......
...@@ -528,6 +528,7 @@ static inline void yam_rx_flag(struct net_device *dev, struct yam_port *yp) ...@@ -528,6 +528,7 @@ static inline void yam_rx_flag(struct net_device *dev, struct yam_port *yp)
skb->protocol = htons(ETH_P_AX25); skb->protocol = htons(ETH_P_AX25);
skb->mac.raw = skb->data; skb->mac.raw = skb->data;
netif_rx(skb); netif_rx(skb);
dev->last_rx = jiffies;
++yp->stats.rx_packets; ++yp->stats.rx_packets;
} }
} }
......
...@@ -1941,6 +1941,7 @@ static int ali_ircc_dma_receive_complete(struct ali_ircc_cb *self) ...@@ -1941,6 +1941,7 @@ static int ali_ircc_dma_receive_complete(struct ali_ircc_cb *self)
skb->mac.raw = skb->data; skb->mac.raw = skb->data;
skb->protocol = htons(ETH_P_IRDA); skb->protocol = htons(ETH_P_IRDA);
netif_rx(skb); netif_rx(skb);
self->netdev->last_rx = jiffies;
} }
} }
......
...@@ -839,6 +839,7 @@ static void irda_usb_receive(struct urb *urb) ...@@ -839,6 +839,7 @@ static void irda_usb_receive(struct urb *urb)
new->mac.raw = new->data; new->mac.raw = new->data;
new->protocol = htons(ETH_P_IRDA); new->protocol = htons(ETH_P_IRDA);
netif_rx(new); netif_rx(new);
self->netdev->last_rx = jiffies;
done: done:
/* Note : at this point, the URB we've just received (urb) /* Note : at this point, the URB we've just received (urb)
......
...@@ -1570,6 +1570,7 @@ static int nsc_ircc_dma_receive_complete(struct nsc_ircc_cb *self, int iobase) ...@@ -1570,6 +1570,7 @@ static int nsc_ircc_dma_receive_complete(struct nsc_ircc_cb *self, int iobase)
skb->mac.raw = skb->data; skb->mac.raw = skb->data;
skb->protocol = htons(ETH_P_IRDA); skb->protocol = htons(ETH_P_IRDA);
netif_rx(skb); netif_rx(skb);
self->netdev->last_rx = jiffies;
} }
} }
/* Restore bank register */ /* Restore bank register */
......
...@@ -957,6 +957,7 @@ static void ircc_dma_receive_complete(struct ircc_cb *self, int iobase) ...@@ -957,6 +957,7 @@ static void ircc_dma_receive_complete(struct ircc_cb *self, int iobase)
skb->mac.raw = skb->data; skb->mac.raw = skb->data;
skb->protocol = htons(ETH_P_IRDA); skb->protocol = htons(ETH_P_IRDA);
netif_rx(skb); netif_rx(skb);
self->netdev->last_rx = jiffies;
} }
/* /*
......
...@@ -433,8 +433,10 @@ toshoboe_interrupt (int irq, void *dev_id, struct pt_regs *regs) ...@@ -433,8 +433,10 @@ toshoboe_interrupt (int irq, void *dev_id, struct pt_regs *regs)
self->rxs++; self->rxs++;
self->rxs %= RX_SLOTS; self->rxs %= RX_SLOTS;
if (skb) if (skb) {
netif_rx (skb); netif_rx (skb);
self->netdev->last_rx = jiffies;
}
} }
......
...@@ -637,6 +637,7 @@ static int vlsi_rx_interrupt(struct net_device *ndev) ...@@ -637,6 +637,7 @@ static int vlsi_rx_interrupt(struct net_device *ndev)
skb->mac.raw = skb->data; skb->mac.raw = skb->data;
skb->protocol = htons(ETH_P_IRDA); skb->protocol = htons(ETH_P_IRDA);
netif_rx(skb); netif_rx(skb);
ndev->last_rx = jiffies;
} }
else { else {
idev->stats.rx_dropped++; idev->stats.rx_dropped++;
......
...@@ -923,6 +923,7 @@ int w83977af_dma_receive_complete(struct w83977af_ir *self) ...@@ -923,6 +923,7 @@ int w83977af_dma_receive_complete(struct w83977af_ir *self)
skb->mac.raw = skb->data; skb->mac.raw = skb->data;
skb->protocol = htons(ETH_P_IRDA); skb->protocol = htons(ETH_P_IRDA);
netif_rx(skb); netif_rx(skb);
self->netdev->last_rx = jiffies;
} }
} }
/* Restore set register */ /* Restore set register */
......
...@@ -676,6 +676,7 @@ i596_rx_one(struct net_device *dev, volatile struct i596_private *lp, ...@@ -676,6 +676,7 @@ i596_rx_one(struct net_device *dev, volatile struct i596_private *lp,
skb->protocol = eth_type_trans(skb,dev); skb->protocol = eth_type_trans(skb,dev);
netif_rx(skb); netif_rx(skb);
dev->last_rx = jiffies;
lp->stats.rx_packets++; lp->stats.rx_packets++;
} else { } else {
#if 0 #if 0
......
...@@ -1349,6 +1349,7 @@ pcnet32_rx(struct net_device *dev) ...@@ -1349,6 +1349,7 @@ pcnet32_rx(struct net_device *dev)
lp->stats.rx_bytes += skb->len; lp->stats.rx_bytes += skb->len;
skb->protocol=eth_type_trans(skb,dev); skb->protocol=eth_type_trans(skb,dev);
netif_rx(skb); netif_rx(skb);
dev->last_rx = jiffies;
lp->stats.rx_packets++; lp->stats.rx_packets++;
} }
} }
......
...@@ -685,6 +685,7 @@ static int lan_saa9730_rx(struct net_device *dev) ...@@ -685,6 +685,7 @@ static int lan_saa9730_rx(struct net_device *dev)
len, 0); len, 0);
skb->protocol = eth_type_trans(skb, dev); skb->protocol = eth_type_trans(skb, dev);
netif_rx(skb); netif_rx(skb);
dev->last_rx = jiffies;
} }
} else { } else {
/* We got an error packet. */ /* We got an error packet. */
......
...@@ -1253,6 +1253,7 @@ static void __dldwd_ev_rx(dldwd_priv_t *priv, hermes_t *hw) ...@@ -1253,6 +1253,7 @@ static void __dldwd_ev_rx(dldwd_priv_t *priv, hermes_t *hw)
/* Pass the packet to the networking stack */ /* Pass the packet to the networking stack */
netif_rx(skb); netif_rx(skb);
dev->last_rx = jiffies;
stats->rx_packets++; stats->rx_packets++;
stats->rx_bytes += length; stats->rx_bytes += length;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment