Skip to content

Commit

Permalink
myri10ge: fix per-slice rx/tx_dropped counters
Browse files Browse the repository at this point in the history
Properly attribute transmit and receive drops by incrementing the
per-slice counter.

Signed-off-by: Brice Goglin <brice@myri.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Brice Goglin authored and David S. Miller committed Nov 20, 2008
1 parent a61fc1e commit d6279c8
Showing 1 changed file with 4 additions and 2 deletions.
6 changes: 4 additions & 2 deletions drivers/net/myri10ge/myri10ge.c
Original file line number Diff line number Diff line change
Expand Up @@ -1309,7 +1309,7 @@ myri10ge_rx_done(struct myri10ge_slice_state *ss, struct myri10ge_rx_buf *rx,

skb = netdev_alloc_skb(dev, MYRI10GE_HLEN + 16);
if (unlikely(skb == NULL)) {
mgp->stats.rx_dropped++;
ss->stats.rx_dropped++;
do {
i--;
put_page(rx_frags[i].page);
Expand Down Expand Up @@ -2926,6 +2926,7 @@ static int myri10ge_sw_tso(struct sk_buff *skb, struct net_device *dev)
{
struct sk_buff *segs, *curr;
struct myri10ge_priv *mgp = netdev_priv(dev);
struct myri10ge_slice_state *ss;
int status;

segs = skb_gso_segment(skb, dev->features & ~NETIF_F_TSO6);
Expand All @@ -2952,8 +2953,9 @@ static int myri10ge_sw_tso(struct sk_buff *skb, struct net_device *dev)
return 0;

drop:
ss = &mgp->ss[skb_get_queue_mapping(skb)];
dev_kfree_skb_any(skb);
mgp->stats.tx_dropped += 1;
ss->stats.tx_dropped += 1;
return 0;
}

Expand Down

0 comments on commit d6279c8

Please sign in to comment.