hdlcdrv: convert to internal net_device_stats
Stephen Hemminger [Fri, 9 Jan 2009 13:01:35 +0000 (13:01 +0000)]
Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Acked-by: Thomas Sailer <t.sailer@alumni.ethz.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>

drivers/net/hamradio/hdlcdrv.c
include/linux/hdlcdrv.h

index 8eba61a..1215a49 100644 (file)
@@ -154,7 +154,7 @@ static void hdlc_rx_flag(struct net_device *dev, struct hdlcdrv_state *s)
        pkt_len = s->hdlcrx.len - 2 + 1; /* KISS kludge */
        if (!(skb = dev_alloc_skb(pkt_len))) {
                printk("%s: memory squeeze, dropping packet\n", dev->name);
-               s->stats.rx_dropped++;
+               dev->stats.rx_dropped++;
                return;
        }
        cp = skb_put(skb, pkt_len);
@@ -162,7 +162,7 @@ static void hdlc_rx_flag(struct net_device *dev, struct hdlcdrv_state *s)
        memcpy(cp, s->hdlcrx.buffer, pkt_len - 1);
        skb->protocol = ax25_type_trans(skb, dev);
        netif_rx(skb);
-       s->stats.rx_packets++;
+       dev->stats.rx_packets++;
 }
 
 void hdlcdrv_receiver(struct net_device *dev, struct hdlcdrv_state *s)
@@ -326,7 +326,7 @@ void hdlcdrv_transmitter(struct net_device *dev, struct hdlcdrv_state *s)
                        s->hdlctx.len = pkt_len+2; /* the appended CRC */
                        s->hdlctx.tx_state = 2;
                        s->hdlctx.bitstream = 0;
-                       s->stats.tx_packets++;
+                       dev->stats.tx_packets++;
                        break;
                case 2:
                        if (!s->hdlctx.len) {
@@ -427,19 +427,6 @@ static int hdlcdrv_set_mac_address(struct net_device *dev, void *addr)
 }
 
 /* --------------------------------------------------------------------- */
-
-static struct net_device_stats *hdlcdrv_get_stats(struct net_device *dev)
-{
-       struct hdlcdrv_state *sm = netdev_priv(dev);
-
-       /* 
-        * Get the current statistics.  This may be called with the
-        * card open or closed. 
-        */
-       return &sm->stats;
-}
-
-/* --------------------------------------------------------------------- */
 /*
  * Open/initialize the board. This is called (in the current kernel)
  * sometime after booting when the 'ifconfig' program is run.
@@ -568,10 +555,10 @@ static int hdlcdrv_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
                bi.data.cs.ptt = hdlcdrv_ptt(s);
                bi.data.cs.dcd = s->hdlcrx.dcd;
                bi.data.cs.ptt_keyed = s->ptt_keyed;
-               bi.data.cs.tx_packets = s->stats.tx_packets;
-               bi.data.cs.tx_errors = s->stats.tx_errors;
-               bi.data.cs.rx_packets = s->stats.rx_packets;
-               bi.data.cs.rx_errors = s->stats.rx_errors;
+               bi.data.cs.tx_packets = dev->stats.tx_packets;
+               bi.data.cs.tx_errors = dev->stats.tx_errors;
+               bi.data.cs.rx_packets = dev->stats.rx_packets;
+               bi.data.cs.rx_errors = dev->stats.rx_errors;
                break;          
 
        case HDLCDRVCTL_OLDGETSTAT:
index bf6302f..0821bac 100644 (file)
@@ -241,7 +241,6 @@ struct hdlcdrv_state {
        struct hdlcdrv_bitbuffer bitbuf_hdlc;
 #endif /* HDLCDRV_DEBUG */
 
-       struct net_device_stats stats;
        int ptt_keyed;
 
        /* queued skb for transmission */