From: Rusty Russell Now inline net_device_stats is upstream, we can use it in the lguest net driver. Signed-off-by: Rusty Russell Cc: Andi Kleen Cc: Jeff Garzik Signed-off-by: Andrew Morton --- drivers/net/lguest_net.c | 20 +++++--------------- 1 files changed, 5 insertions(+), 15 deletions(-) diff -puN drivers/net/lguest_net.c~lguest-the-net-driver-lguest-2621-mm1-update-lguest-net-stats-inlinepatch drivers/net/lguest_net.c --- a/drivers/net/lguest_net.c~lguest-the-net-driver-lguest-2621-mm1-update-lguest-net-stats-inlinepatch +++ a/drivers/net/lguest_net.c @@ -38,8 +38,6 @@ struct lguestnet_info /* My peerid. */ unsigned int me; - struct net_device_stats stats; - /* Receive queue. */ struct sk_buff *skb[NUM_SKBS]; struct lguest_dma dma[NUM_SKBS]; @@ -120,13 +118,13 @@ static void transfer_packet(struct net_d hcall(LHCALL_SEND_DMA, peer_key(info,peernum), __pa(&dma), 0); if (dma.used_len != skb->len) { - info->stats.tx_carrier_errors++; + dev->stats.tx_carrier_errors++; pr_debug("Bad xfer to peer %i: %i of %i (dma %p/%i)\n", peernum, dma.used_len, skb->len, (void *)dma.addr[0], dma.len[0]); } else { - info->stats.tx_bytes += skb->len; - info->stats.tx_packets++; + dev->stats.tx_bytes += skb->len; + dev->stats.tx_packets++; } } @@ -212,8 +210,8 @@ static irqreturn_t lguestnet_rcv(int irq pr_debug("Receiving skb proto 0x%04x len %i type %i\n", ntohs(skb->protocol), skb->len, skb->pkt_type); - info->stats.rx_bytes += skb->len; - info->stats.rx_packets++; + dev->stats.rx_bytes += skb->len; + dev->stats.rx_packets++; netif_rx(skb); } return done ? IRQ_HANDLED : IRQ_NONE; @@ -260,13 +258,6 @@ static int lguestnet_close(struct net_de return 0; } -static struct net_device_stats *lguestnet_get_stats(struct net_device *dev) -{ - struct lguestnet_info *info = dev->priv; - - return &info->stats; -} - static int lguestnet_probe(struct lguest_device *lgdev) { int err, irqf = IRQF_SHARED; @@ -295,7 +286,6 @@ static int lguestnet_probe(struct lguest dev->open = lguestnet_open; dev->stop = lguestnet_close; dev->hard_start_xmit = lguestnet_start_xmit; - dev->get_stats = lguestnet_get_stats; /* Turning on/off promisc will call dev->set_multicast_list. * We don't actually support multicast yet */ _