static int xl_close(struct net_device *dev);
 static void xl_set_rx_mode(struct net_device *dev);
 static irqreturn_t xl_interrupt(int irq, void *dev_id);
-static struct net_device_stats * xl_get_stats(struct net_device *dev);
 static int xl_set_mac_address(struct net_device *dev, void *addr) ; 
 static void xl_arb_cmd(struct net_device *dev);
 static void xl_asb_cmd(struct net_device *dev) ; 
        dev->stop=&xl_close;
        dev->do_ioctl=NULL;
        dev->set_multicast_list=&xl_set_rx_mode;
-       dev->get_stats=&xl_get_stats ;
        dev->set_mac_address=&xl_set_mac_address ; 
        SET_NETDEV_DEV(dev, &pdev->dev);
 
                                        adv_rx_ring(dev) ; 
                                
                                adv_rx_ring(dev) ; /* One more time just for luck :) */ 
-                               xl_priv->xl_stats.rx_dropped++ ; 
+                               dev->stats.rx_dropped++ ; 
 
                                writel(ACK_INTERRUPT | UPCOMPACK | LATCH_ACK , xl_mmio + MMIO_COMMAND) ; 
                                return ;                                
                        if (skb==NULL) { /* Still need to fix the rx ring */
                                printk(KERN_WARNING "%s: dev_alloc_skb failed in rx, single buffer \n",dev->name) ; 
                                adv_rx_ring(dev) ; 
-                               xl_priv->xl_stats.rx_dropped++ ; 
+                               dev->stats.rx_dropped++ ; 
                                writel(ACK_INTERRUPT | UPCOMPACK | LATCH_ACK , xl_mmio + MMIO_COMMAND) ; 
                                return ; 
                        }
                        xl_priv->xl_rx_ring[xl_priv->rx_ring_tail].upfragaddr = cpu_to_le32(pci_map_single(xl_priv->pdev,skb->data,xl_priv->pkt_buf_sz, PCI_DMA_FROMDEVICE));
                        xl_priv->xl_rx_ring[xl_priv->rx_ring_tail].upfraglen = cpu_to_le32(xl_priv->pkt_buf_sz) | RXUPLASTFRAG;
                        adv_rx_ring(dev) ; 
-                       xl_priv->xl_stats.rx_packets++ ; 
-                       xl_priv->xl_stats.rx_bytes += frame_length ;    
+                       dev->stats.rx_packets++ ; 
+                       dev->stats.rx_bytes += frame_length ;   
 
                        netif_rx(skb2) ;                
                 } /* if multiple buffers */
                txd->buffer = cpu_to_le32(pci_map_single(xl_priv->pdev, skb->data, skb->len, PCI_DMA_TODEVICE));
                txd->buffer_length = cpu_to_le32(skb->len) | TXDNFRAGLAST;
                xl_priv->tx_ring_skb[tx_head] = skb ; 
-               xl_priv->xl_stats.tx_packets++ ; 
-               xl_priv->xl_stats.tx_bytes += skb->len ;
+               dev->stats.tx_packets++ ; 
+               dev->stats.tx_bytes += skb->len ;
 
                /* 
                 * Set the nextptr of the previous descriptor equal to this descriptor, add XL_TX_RING_SIZE -1 
        return ;        
 } 
 
-static struct net_device_stats * xl_get_stats(struct net_device *dev)
-{
-       struct xl_private *xl_priv = netdev_priv(dev);
-       return (struct net_device_stats *) &xl_priv->xl_stats; 
-}
-
 static int xl_set_mac_address (struct net_device *dev, void *addr) 
 {
        struct sockaddr *saddr = addr ;