diff options
| author | Stephen Hemminger <shemminger@linux-foundation.org> | 2007-05-14 15:38:12 -0400 |
|---|---|---|
| committer | Jeff Garzik <jeff@garzik.org> | 2007-05-17 20:43:13 -0400 |
| commit | 3225b919036a3ec2e96bb36b7a4fd64c43fdbe84 (patch) | |
| tree | 219aad5c4d9d541d6dc24bbdcddad8f993136fef | |
| parent | 53419c68517ee296f737cdc0acaca6eb1ae23aeb (diff) | |
sky2: keep track of receive alloc failures
When driver can't allocate receive buffer it drops incoming
packet. Keep a counter.
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
| -rw-r--r-- | drivers/net/sky2.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/net/sky2.c b/drivers/net/sky2.c index 887c1cea1b42..bde28ad9797d 100644 --- a/drivers/net/sky2.c +++ b/drivers/net/sky2.c | |||
| @@ -2141,8 +2141,10 @@ static int sky2_status_intr(struct sky2_hw *hw, int to_do) | |||
| 2141 | switch (le->opcode & ~HW_OWNER) { | 2141 | switch (le->opcode & ~HW_OWNER) { |
| 2142 | case OP_RXSTAT: | 2142 | case OP_RXSTAT: |
| 2143 | skb = sky2_receive(dev, length, status); | 2143 | skb = sky2_receive(dev, length, status); |
| 2144 | if (!skb) | 2144 | if (unlikely(!skb)) { |
| 2145 | sky2->net_stats.rx_dropped++; | ||
| 2145 | goto force_update; | 2146 | goto force_update; |
| 2147 | } | ||
| 2146 | 2148 | ||
| 2147 | skb->protocol = eth_type_trans(skb, dev); | 2149 | skb->protocol = eth_type_trans(skb, dev); |
| 2148 | sky2->net_stats.rx_packets++; | 2150 | sky2->net_stats.rx_packets++; |
