insb(DATAPORT, skb_put(skb, pkt_len), pkt_len);
                skb->protocol = eth_type_trans(skb, dev);
                netif_rx(skb);
-               dev->last_rx = jiffies;
                dev->stats.rx_packets++;
                dev->stats.rx_bytes += pkt_len;
        }
 
                                        skb->protocol = eth_type_trans(skb,dev);
                                        dev->stats.rx_bytes += skb->len;
                                        netif_rx(skb);
-                                       dev->last_rx = jiffies;
                                }
                        }
                        adapter->dmaing = 0;
 
 
                        skb->protocol=eth_type_trans(skb,dev);
                        netif_rx(skb);
-                       dev->last_rx = jiffies;
                        dev->stats.rx_packets++;
                        dev->stats.rx_bytes += pkt_len;
                }
 
                                outw(RxDiscard, ioaddr + EL3_CMD); /* Pop top Rx packet. */
                                skb->protocol = eth_type_trans(skb,dev);
                                netif_rx(skb);
-                               dev->last_rx = jiffies;
                                dev->stats.rx_bytes += pkt_len;
                                dev->stats.rx_packets++;
                                continue;
 
                                outw(RxDiscard, ioaddr + EL3_CMD);      /* Pop top Rx packet. */
                                skb->protocol = eth_type_trans(skb, dev);
                                netif_rx(skb);
-                               dev->last_rx = jiffies;
                                dev->stats.rx_packets++;
                                dev->stats.rx_bytes += pkt_len;
                                /* Wait a limited time to go to next packet. */
                        }
                        skb->protocol = eth_type_trans(skb, dev);
                        netif_rx(skb);
-                       dev->last_rx = jiffies;
                        dev->stats.rx_packets++;
                }
                entry = (++vp->cur_rx) % RX_RING_SIZE;
 
                                        skb_copy_to_linear_data(skb, (char *) p->base+(unsigned long) rbd->buffer,totlen);
                                        skb->protocol = eth_type_trans(skb, dev);
                                        netif_rx(skb);
-                                       dev->last_rx = jiffies;
                                        dev->stats.rx_packets++;
                                        dev->stats.rx_bytes += totlen;
                                } else {
 
                        }
 
                        skb->protocol=eth_type_trans(skb,dev);
-                       dev->last_rx = jiffies;
                        dev->stats.rx_packets++;
                        dev->stats.rx_bytes += length;
                        netif_rx(skb);
 
                                iowrite16(RxDiscard, ioaddr + EL3_CMD); /* Pop top Rx packet. */
                                skb->protocol = eth_type_trans(skb, dev);
                                netif_rx(skb);
-                               dev->last_rx = jiffies;
                                dev->stats.rx_packets++;
                                /* Wait a limited time to go to next packet. */
                                for (i = 200; i >= 0; i--)
                                }
                        }
                        netif_rx(skb);
-                       dev->last_rx = jiffies;
                        dev->stats.rx_packets++;
                }
                entry = (++vp->cur_rx) % RX_RING_SIZE;
 
                                          len);
                         skb->protocol = eth_type_trans (skb, dev);
                        netif_rx (skb);
-                       dev->last_rx = jiffies;
                        dev->stats.rx_packets++;
                        dev->stats.rx_bytes += len;
                 }
 
 
        cp->dev->stats.rx_packets++;
        cp->dev->stats.rx_bytes += skb->len;
-       cp->dev->last_rx = jiffies;
 
 #if CP_VLAN_TAG_USED
        if (cp->vlgrp && (desc->opts2 & cpu_to_le32(RxVlanTagged))) {
 
 
                        skb->protocol = eth_type_trans (skb, dev);
 
-                       dev->last_rx = jiffies;
                        dev->stats.rx_bytes += pkt_size;
                        dev->stats.rx_packets++;
 
 
                                                pkt_len);
 #endif
                                netif_rx(skb);
-                               dev->last_rx = jiffies;
                                dev->stats.rx_packets++;
                                dev->stats.rx_bytes+=pkt_len;
                        }
 
                                         len);
                        skb->protocol = eth_type_trans (skb, dev);
                        netif_rx (skb);
-                       dev->last_rx = jiffies;
                        dev->stats.rx_packets++;
                        dev->stats.rx_bytes += len;
                }
 
 #endif
                        netif_rx(skb);
 
-               dev->last_rx = jiffies;
                dev->stats.rx_packets++;
                dev->stats.rx_bytes += retdesc->size;
 
 
                        lp->coal_conf.rx_packets++;
                        lp->coal_conf.rx_bytes += pkt_len;
                        num_rx_pkt++;
-                       dev->last_rx = jiffies;
 
                err_next_pkt:
                        lp->rx_ring[rx_index].buff_phy_addr
 
 
         /* Send packet to a higher place. */
         netif_rx(skb);
-       dev->last_rx = jiffies;
 }
 
 static void cops_timeout(struct net_device *dev)
 
 
        /* toss it onwards */
        netif_rx(skb);
-       dev->last_rx = jiffies;
        return 0;
 }
 
 
        skb->protocol = __constant_htons(ETH_P_ARCNET);
 ;
        netif_rx(skb);
-       dev->last_rx = jiffies;
 }
 
 
 
        skb->protocol = __constant_htons(ETH_P_ARCNET);
 ;
        netif_rx(skb);
-       dev->last_rx = jiffies;
 }
 
 
 
 
        skb->protocol = type_trans(skb, dev);
        netif_rx(skb);
-       dev->last_rx = jiffies;
 }
 
 
 
 
                skb->protocol = type_trans(skb, dev);
                netif_rx(skb);
-               dev->last_rx = jiffies;
        } else {                /* split packet */
                /*
                 * NOTE: MSDOS ARP packet correction should only need to apply to
 
                        skb->protocol = type_trans(skb, dev);
                        netif_rx(skb);
-                       dev->last_rx = jiffies;
                }
        }
 }
 
 #endif
 
            netif_rx(skb);
-           dev->last_rx = jiffies;
            dev->stats.rx_packets++;
            dev->stats.rx_bytes += pkt_len;
        }
 
                        am_writeword(dev, hdraddr + 2, RMD_OWN);
                        skb->protocol = eth_type_trans(skb, dev);
                        netif_rx(skb);
-                       dev->last_rx = jiffies;
                        priv->stats.rx_bytes += len;
                        priv->stats.rx_packets ++;
                } else {
 
                        memcpy(skb_put(skb, pktlen), p_recv, pktlen);
 
                        skb->protocol = eth_type_trans(skb, dev);
-                       dev->last_rx = jiffies;
                        dev->stats.rx_bytes += pktlen;
                        netif_rx(skb);
                }
 
                        skb_put(skb, length);
                        skb->protocol = eth_type_trans(skb, dev);
 
-                       dev->last_rx = jiffies;
-
                        netif_receive_skb(skb);
 
                        ep->stats.rx_packets++;
 
                debug_pkt(dev, "eth_poll", skb->data, skb->len);
 
                skb->protocol = eth_type_trans(skb, dev);
-               dev->last_rx = jiffies;
                port->stat.rx_packets++;
                port->stat.rx_bytes += skb->len;
                netif_receive_skb(skb);
 
                        insw(ioaddr + DATAPORT, skb_put(skb,pkt_len), (pkt_len + 1) >> 1);
                        skb->protocol=eth_type_trans(skb, dev);
                        netif_rx(skb);
-                       dev->last_rx = jiffies;
                        dev->stats.rx_packets++;
                        dev->stats.rx_bytes += pkt_len;
                }
 
                                lp->memcpy_f( skb->data, PKTBUF_ADDR(head), pkt_len );
                                skb->protocol = eth_type_trans( skb, dev );
                                netif_rx( skb );
-                               dev->last_rx = jiffies;
                                dev->stats.rx_packets++;
                                dev->stats.rx_bytes += pkt_len;
                        }
 
                                netif_receive_skb(skb);
                        }
 
-                       netdev->last_rx = jiffies;
 skip_pkt:
        /* skip current packet whether it's ok or not. */
                        rx_page->read_offset +=
 
                buffer_info->skb = NULL;
                buffer_info->alloced = 0;
                rrd->xsz.valid = 0;
-
-               adapter->netdev->last_rx = jiffies;
        }
 
        atomic_set(&rrd_ring->next_to_clean, rrd_next_to_clean);
 
                        netif_rx(skb);
                        netdev->stats.rx_bytes += rx_size;
                        netdev->stats.rx_packets++;
-                       netdev->last_rx = jiffies;
                } else {
                        netdev->stats.rx_errors++;
 
 
                /* next descriptor */
                prxd = aup->rx_dma_ring[aup->rx_head];
                buff_stat = prxd->buff_stat;
-               dev->last_rx = jiffies;
        }
        return 0;
 }
 
                skb->ip_summed = CHECKSUM_NONE;
                skb->protocol = eth_type_trans(skb, bp->dev);
                netif_receive_skb(skb);
-               bp->dev->last_rx = jiffies;
                received++;
                budget--;
        next_pkt:
 
        blackfin_dcache_invalidate_range((unsigned long)skb->head,
                                         (unsigned long)skb->tail);
 
-       dev->last_rx = jiffies;
        skb->protocol = eth_type_trans(skb, dev);
 #if defined(BFIN_MAC_CSUM_OFFLOAD)
        skb->csum = current_rx_ptr->status.ip_payload_csum;
 
                        skb_put(skb, nb);
                        skb->protocol = eth_type_trans(skb, dev);
                        netif_rx(skb);
-                       dev->last_rx = jiffies;
                        ++dev->stats.rx_packets;
                        dev->stats.rx_bytes += nb;
                } else {
                        ++dev->stats.rx_dropped;
                }
-               dev->last_rx = jiffies;
                if ((skb = bp->rx_bufs[i]) == NULL) {
                        bp->rx_bufs[i] = skb = dev_alloc_skb(RX_BUFLEN+2);
                        if (skb != NULL)
 
 #endif
                        netif_receive_skb(skb);
 
-               bp->dev->last_rx = jiffies;
                rx_pkt++;
 
 next_rx:
 
                        dev_kfree_skb(skb);
                }
 
-               bp->dev->last_rx = jiffies;
 
                /* put new skb in bin */
                fp->tpa_pool[queue].skb = new_skb;
 #endif
                        netif_receive_skb(skb);
 
-               bp->dev->last_rx = jiffies;
 
 next_rx:
                rx_buf->skb = NULL;
        rc = 0;
 
 test_loopback_rx_exit:
-       bp->dev->last_rx = jiffies;
 
        fp->rx_bd_cons = NEXT_RX_IDX(fp->rx_bd_cons);
        fp->rx_bd_prod = NEXT_RX_IDX(fp->rx_bd_prod);
 
                cp->net_stats[ring].rx_packets++;
                cp->net_stats[ring].rx_bytes += len;
                spin_unlock(&cp->stat_lock[ring]);
-               cp->dev->last_rx = jiffies;
 
        next:
                npackets++;
 
        st = per_cpu_ptr(sge->port_stats[p->iff], smp_processor_id());
 
        skb->protocol = eth_type_trans(skb, adapter->port[p->iff].dev);
-       skb->dev->last_rx = jiffies;
        if ((adapter->flags & RX_CSUM_ENABLED) && p->csum == 0xffff &&
            skb->protocol == htons(ETH_P_IP) &&
            (skb->data[9] == IPPROTO_TCP || skb->data[9] == IPPROTO_UDP)) {
 
        }
         skb->protocol=eth_type_trans(skb,dev);
        netif_rx(skb);
-       dev->last_rx = jiffies;
        lp->stats.rx_packets++;
        lp->stats.rx_bytes += length;
 }
 
         skb->protocol=eth_type_trans(skb,dev);
        netif_rx(skb);
-       dev->last_rx = jiffies;
        lp->stats.rx_packets++;
        lp->stats.rx_bytes += length;
 }
 
 
        skb_pull(skb, sizeof(*p) + pad);
        skb->protocol = eth_type_trans(skb, adap->port[p->iff]);
-       skb->dev->last_rx = jiffies;
        pi = netdev_priv(skb->dev);
        if (pi->rx_csum_offload && p->csum_valid && p->csum == htons(0xffff) &&
            !p->fragment) {
 
        netif_rx(skb);
 
        /* update stats */
-       dev->last_rx = jiffies;
        dev->stats.rx_packets++; /* count all receives */
        dev->stats.rx_bytes += size; /* count all received bytes */
 
 
                        PRINTK(("Read %d bytes\n", size));
                        skb->protocol=eth_type_trans(skb,dev);
                        netif_rx(skb); /* deliver it "upstairs" */
-                       dev->last_rx = jiffies;
                        /* count all receives */
                        dev->stats.rx_packets++;
                        dev->stats.rx_bytes += size;
 
 
                        skb->protocol = eth_type_trans(skb, dev);
                        netif_rx(skb);
-                       dev->last_rx = jiffies;
                        dev->stats.rx_packets++;
                }
 
 
                                        netif_rx(skb);
 
                                        /* Update the rcv counters */
-                                       bp->dev->last_rx = jiffies;
                                        bp->rcv_total_frames++;
                                        if (*(p_buff + RCV_BUFF_K_DA) & 0x01)
                                                bp->rcv_multicast_frames++;
 
                                        /*
                                           ** Update stats
                                         */
-                                       dev->last_rx = jiffies;
                                        dev->stats.rx_packets++;
                                        dev->stats.rx_bytes += pkt_len;
                                        for (i = 1; i < DEPCA_PKT_STAT_SZ - 1; i++) {
 
                        }
 #endif
                        netif_rx (skb);
-                       dev->last_rx = jiffies;
                }
                entry = (entry + 1) % RX_RING_SIZE;
        }
 
        } else {
                dev->stats.rx_packets++;
                dev->stats.rx_bytes += actual_size;
-               nic->netdev->last_rx = jiffies;
                netif_receive_skb(skb);
                if(work_done)
                        (*work_done)++;
 
                        netif_receive_skb(skb);
                }
 
-               netdev->last_rx = jiffies;
-
 next_desc:
                rx_desc->status = 0;
 
 
                                         le16_to_cpu(vlan));
        else
                netif_receive_skb(skb);
-
-       netdev->last_rx = jiffies;
 }
 
 /**
 
 
                        skb->protocol = eth_type_trans(skb,dev);
                        netif_rx(skb);
-                       dev->last_rx = jiffies;
                        dev->stats.rx_packets++;
                }
 
 
                                insw(ioaddr+DATAPORT, skb_put(skb,pkt_len),(pkt_len+1)>>1);
                                skb->protocol = eth_type_trans(skb,dev);
                                netif_rx(skb);
-                               dev->last_rx = jiffies;
                                dev->stats.rx_packets++;
                                dev->stats.rx_bytes += pkt_len;
                        }
 
                        }
 
                        ehea_proc_skb(pr, cqe, skb);
-                       dev->last_rx = jiffies;
                } else {
                        pr->p_stats.poll_receive_errors++;
                        port_reset = ehea_treat_poll_error(pr, rq, cqe,
 
                        /* update statistics */
                        ndev->stats.rx_packets++;
                        ndev->stats.rx_bytes += len;
-                       ndev->last_rx = jiffies;
                        netif_rx(skb);
                }
        }
 
                }
 
                skb->dev = enic->netdev;
-               enic->netdev->last_rx = jiffies;
 
                if (enic->vlan_group && vlan_stripped) {
 
 
                        }
                        skb->protocol = eth_type_trans(skb, dev);
                        netif_receive_skb(skb);
-                       dev->last_rx = jiffies;
                        ep->stats.rx_packets++;
                        ep->stats.rx_bytes += pkt_len;
                }
 
                                printk(KERN_DEBUG ".\n");
                        }
                        netif_rx(skb);
-                       dev->last_rx = jiffies;
                        dev->stats.rx_packets++;
                        dev->stats.rx_bytes += pkt_len;
 
 
                                                /*
                                                   ** Update stats
                                                 */
-                                               dev->last_rx = jiffies;
                                                dev->stats.rx_packets++;
                                                dev->stats.rx_bytes += pkt_len;
                                        } else {
 
                        }
                        skb->protocol = eth_type_trans(skb, dev);
                        netif_rx(skb);
-                       dev->last_rx = jiffies;
                        np->stats.rx_packets++;
                        np->stats.rx_bytes += pkt_len;
                }
 
                        rskb->protocol = eth_type_trans(rskb, dev);
 
                        netif_rx(rskb);
-                       dev->last_rx = jiffies;
                } else {
                        /* Can't get a new one : reuse the same & drop pkt */
                        dev_notice(&dev->dev, "Memory squeeze, dropping packet.\n");
 
 #else
                netif_rx(skb);
 #endif
-               dev->last_rx = jiffies;
                dev->stats.rx_packets++;
                dev->stats.rx_bytes += len;
 next_pkt:
                                }
                        }
 
-                       dev->last_rx = jiffies;
                        dev->stats.rx_packets++;
                        dev->stats.rx_bytes += len;
                } else {
 
                        dev->stats.rx_bytes += pkt_len;
                }
 
-               dev->last_rx = jiffies;
-
                priv->rx_skbuff[priv->skb_currx] = newskb;
 
                /* Setup the new bdp */
 
 #endif  /* RX_CHECKSUM */
 
                        netif_rx(skb);
-                       dev->last_rx = jiffies;
                        hmp->stats.rx_packets++;
                }
                entry = (++hmp->cur_rx) % RX_RING_SIZE;
 
        memcpy(ptr, sp->cooked_buf + 1, count);
        skb->protocol = ax25_type_trans(skb, sp->dev);
        netif_rx(skb);
-       sp->dev->last_rx = jiffies;
        sp->dev->stats.rx_packets++;
 
        return;
 
        memcpy(cp, bc->hdlcrx.buf, pktlen - 1);
        skb->protocol = ax25_type_trans(skb, dev);
        netif_rx(skb);
-       dev->last_rx = jiffies;
        bc->stats.rx_packets++;
 }
 
 
 
        skb->protocol = ax25_type_trans(skb, dev);
        netif_rx(skb);
-       dev->last_rx = jiffies;
 unlock:
 
        rcu_read_unlock();
 
                        memcpy(&data[1], priv->rx_buf[i], cb);
                        skb->protocol = ax25_type_trans(skb, priv->dev);
                        netif_rx(skb);
-                       priv->dev->last_rx = jiffies;
                        priv->stats.rx_packets++;
                        priv->stats.rx_bytes += cb;
                }
 
        memcpy(cp, s->hdlcrx.buffer, pkt_len - 1);
        skb->protocol = ax25_type_trans(skb, dev);
        netif_rx(skb);
-       dev->last_rx = jiffies;
        s->stats.rx_packets++;
 }
 
 
        memcpy(skb_put(skb,count), ax->rbuff, count);
        skb->protocol = ax25_type_trans(skb, ax->dev);
        netif_rx(skb);
-       ax->dev->last_rx = jiffies;
        ax->stats.rx_packets++;
        ax->stats.rx_bytes += count;
        spin_unlock_bh(&ax->buflock);
 
        skb->protocol = ax25_type_trans(skb, scc->dev);
        
        netif_rx(skb);
-       scc->dev->last_rx = jiffies;
        return;
 }
 
 
                                memcpy(cp, yp->rx_buf, pkt_len - 1);
                                skb->protocol = ax25_type_trans(skb, dev);
                                netif_rx(skb);
-                               dev->last_rx = jiffies;
                                ++yp->stats.rx_packets;
                        }
                }
 
                                        ptr[9], ptr[10], ptr[11]);
 #endif
                        netif_rx(skb);
-                       dev->last_rx = jiffies;
                        lp->stats.rx_packets++;
                        lp->stats.rx_bytes += pkt_len;
                }
 
                                netif_rx(ptr->skb);     /* Up and away... */
 
-                               dev->last_rx = jiffies;
                                lp->stats.rx_packets++;
                                lp->stats.rx_bytes += pkt_len;
                        }
 
                                skb->ip_summed = CHECKSUM_NONE;
 
                                /* bookkeeping */
-                               dev->last_rx = jiffies;
                                dev->stats.rx_packets++;
                                dev->stats.rx_bytes += rda.length;
 
 
                        netdev->stats.rx_packets++;
                        netdev->stats.rx_bytes += length;
                        frames_processed++;
-                       netdev->last_rx = jiffies;
                }
        } while (frames_processed < budget);
 
 
 
                igb_receive_skb(rx_ring, staterr, rx_desc, skb);
 
-               netdev->last_rx = jiffies;
-
 next_desc:
                rx_desc->wb.upper.status_error = 0;
 
 
                        rxb = (struct ioc3_erxbuf *) new_skb->data;
                        skb_reserve(new_skb, RX_OFFSET);
 
-                       priv_netdev(ip)->last_rx = jiffies;
                        ip->stats.rx_packets++;         /* Statistics */
                        ip->stats.rx_bytes += len;
                } else {
 
        skb->protocol = eth_type_trans(skb, dev);
        skb->ip_summed = CHECKSUM_NONE;
        netif_rx(skb);
-       dev->last_rx = jiffies;
        sp->rx_buff[entry] = NULL;
 }
 
        jumbo->skb = skb;
 
        sp->rx_buff[entry] = NULL;
-       dev->last_rx = jiffies;
 }
 
 static void ipg_nic_rx_with_end(struct net_device *dev,
                        }
                }
 
-               dev->last_rx = jiffies;
                jumbo->found_start = 0;
                jumbo->current_size = 0;
                jumbo->skb = NULL;
                                               skb->data, sp->rxfrag_size);
                                }
                        }
-                       dev->last_rx = jiffies;
                        ipg_nic_rx_free_skb(dev);
                }
        } else {
                         * when processing completes.
                         */
                        netif_rx(skb);
-
-                       /* Record frame receive time (jiffies = Linux
-                        * kernel current time stamp).
-                        */
-                       dev->last_rx = jiffies;
                }
 
                /* Assure RX buffer is not reused by IPG. */
 
                        skb_reset_mac_header(skb);
                        skb->protocol = htons(ETH_P_IRDA);
                        netif_rx(skb);
-                       self->netdev->last_rx = jiffies;
                }
        }
        
 
                /* next descriptor */
                prxd = aup->rx_ring[aup->rx_head];
                flags = prxd->flags;
-               dev->last_rx = jiffies;
 
        }
        return 0;
 
        /* Keep stats up to date */
        self->stats.rx_bytes += len;
        self->stats.rx_packets++;
-       self->netdev->last_rx = jiffies;
 
 done:
        /* Note : at this point, the URB we've just received (urb)
 
                                                  &kingsun->stats,
                                                  &kingsun->rx_buff, bytes[i]);
                        }
-                       kingsun->netdev->last_rx = jiffies;
                        do_gettimeofday(&kingsun->rx_time);
                        kingsun->receiving =
                                (kingsun->rx_buff.state != OUTSIDE_FRAME)
 
                                                  bytes[i]);
                        }
                }
-               kingsun->netdev->last_rx = jiffies;
                do_gettimeofday(&kingsun->rx_time);
                kingsun->receiving =
                    (kingsun->rx_unwrap_buff.state != OUTSIDE_FRAME) ? 1 : 0;
 
                        async_unwrap_char(kingsun->netdev, &kingsun->stats,
                                          &kingsun->rx_unwrap_buff, bytes[i]);
                }
-               kingsun->netdev->last_rx = jiffies;
                kingsun->receiving =
                    (kingsun->rx_unwrap_buff.state != OUTSIDE_FRAME) ? 1 : 0;
        }
 
                        mcs_unwrap_fir(mcs, urb->transfer_buffer,
                                urb->actual_length);
                }
-               mcs->netdev->last_rx = jiffies;
                do_gettimeofday(&mcs->rx_time);
        }
 
 
                        skb_reset_mac_header(skb);
                        skb->protocol = htons(ETH_P_IRDA);
                        netif_rx(skb);
-                       self->netdev->last_rx = jiffies;
                }
        }
        /* Restore bank register */
 
                        }
                        lsr = STLSR;
                }
-               dev->last_rx = jiffies;
                si->last_oscr = OSCR;
                break;
 
                    si->stats.rx_bytes++;
                    async_unwrap_char(dev, &si->stats, &si->rx_buff, STRBR);
                } while (STLSR & LSR_DR);
-               dev->last_rx = jiffies;
                si->last_oscr = OSCR;
                break;
 
 
                si->stats.rx_packets++;
                si->stats.rx_bytes += len;
-
-               dev->last_rx = jiffies;
        }
 }
 
 
                                          Ser2UTDR);
                } while (Ser2UTSR1 & UTSR1_RNE);
 
-               dev->last_rx = jiffies;
        }
 
        if (status & UTSR0_TFS && si->tx_buff.len) {
                sa1100_irda_rx_alloc(si);
 
                netif_rx(skb);
-               dev->last_rx = jiffies;
        } else {
                /*
                 * Remap the buffer.
 
                unwrap_chars(stir, urb->transfer_buffer,
                             urb->actual_length);
                
-               stir->netdev->last_rx = jiffies;
                do_gettimeofday(&stir->rx_time);
        }
 
 
                netif_rx(skb);
        else
                netif_rx_ni(skb);
-       ndev->last_rx = jiffies;
 
 done:
        rd_set_status(rd, 0);
 
                        skb_reset_mac_header(skb);
                        skb->protocol = htons(ETH_P_IRDA);
                        netif_rx(skb);
-                       self->netdev->last_rx = jiffies;
                }
        }
        /* Restore set register */
 
                        insw(ioaddr, skb->data, (pkt_len + 1) >> 1);
 
                        netif_rx(skb);
-                       dev->last_rx = jiffies;
                        lp->stats.rx_packets++;
                        lp->stats.rx_bytes += pkt_len;
                }
 
                } else {
                        netif_receive_skb(skb);
                }
-               netdev->last_rx = jiffies;
 
 rxdesc_done:
                /* clean up descriptor, might be written over by hw */
 
 
                skb->protocol = eth_type_trans(skb, adapter->netdev);
                ixgbe_receive_skb(adapter, skb, staterr, rx_ring, rx_desc);
-               adapter->netdev->last_rx = jiffies;
 
 next_desc:
                rx_desc->wb.upper.status_error = 0;
 
                        skb_put(skb, desc->pkt_length);
                        skb->protocol = eth_type_trans(skb, nds[desc->channel]);
 
-                       dev->last_rx = jiffies;
-
                        netif_receive_skb(skb);
                }
 
 
                                RXWBFLAG_DEST_MUL)
                        ++(NET_STAT(jme).multicast);
 
-               jme->dev->last_rx = jiffies;
                NET_STAT(jme).rx_bytes += framesize;
                ++(NET_STAT(jme).rx_packets);
        }
 
 
                                /* Pass the packet to upper layers */
                                netif_receive_skb(skb);
-                               dev->last_rx = jiffies;
                                dev->stats.rx_packets++;
                                dev->stats.rx_bytes += pkt_len;
 
 
                                        pkt_len);
                                skb->protocol=eth_type_trans(skb,dev);
                                netif_rx(skb);
-                               dev->last_rx = jiffies;
                                lp->stats.rx_packets++;
                                lp->stats.rx_bytes+=pkt_len;
                        }
 
                                skb->len = pkt_len;
                                skb->protocol = eth_type_trans(skb, dev);
                                netif_rx(skb);
-                               dev->last_rx = jiffies;
                                dev->stats.rx_packets++;
                                dev->stats.rx_bytes += pkt_len;
                        }
 
                                ei_block_input(dev, pkt_len, skb, current_offset + sizeof(rx_frame));
                                skb->protocol=eth_type_trans(skb,dev);
                                netif_rx(skb);
-                               dev->last_rx = jiffies;
                                dev->stats.rx_packets++;
                                dev->stats.rx_bytes += pkt_len;
                                if (pkt_stat & ENRSR_PHY)
 
 
        skb->protocol = eth_type_trans(skb,dev);
 
-       dev->last_rx = jiffies;
-
        /* it's OK to use per_cpu_ptr() because BHs are off */
        pcpu_lstats = dev->ml_priv;
        lb_stats = per_cpu_ptr(pcpu_lstats, smp_processor_id());
 
 
                skb->protocol = eth_type_trans(skb,dev);
                netif_rx(skb);
-               dev->last_rx = jiffies;
                dev->stats.rx_packets++;
        } else {
 #if 0
 
 
         skb->protocol=eth_type_trans(skb,dev);
        netif_rx(skb);
-       dev->last_rx = jiffies;
        lp->stats.rx_packets++;
        lp->stats.rx_bytes += length;
 }
 
 
        bp->stats.rx_packets++;
        bp->stats.rx_bytes += len;
-       bp->dev->last_rx = jiffies;
        dev_dbg(&bp->pdev->dev, "received skb of length %u, csum: %08x\n",
                skb->len, skb->csum);
        netif_receive_skb(skb);
 
                skb->protocol = eth_type_trans(skb, dev);
                dev->stats.rx_bytes += skb->len;
                netif_rx(skb);
-               dev->last_rx = jiffies;
                mp->rx_bufs[i] = NULL;
                ++dev->stats.rx_packets;
            }
 
 
                skb->protocol = eth_type_trans(skb, dev);
                netif_rx(skb);
-               dev->last_rx = jiffies;
                dev->stats.rx_packets++;
                dev->stats.rx_bytes += frame_length;
        }
 
                        dev->stats.rx_bytes += skb->len + ETH_HLEN;
                        dev->stats.rx_packets++;
                        dev->stats.multicast++;
-                       dev->last_rx = jiffies;
 
                        nskb->dev = dev;
                        if (!compare_ether_addr(eth->h_dest, dev->broadcast))
 
        dev->stats.rx_bytes += skb->len + ETH_HLEN;
        dev->stats.rx_packets++;
-       dev->last_rx = jiffies;
 
        skb->dev = dev;
        skb->pkt_type = PACKET_HOST;
 
                                        skb_put(skb_c, len);
                                        priv->rx_skbs[priv->rx_write] = skb;
                                        skb_c->protocol = eth_type_trans(skb_c, dev);
-                                       dev->last_rx = jiffies;
                                        dev->stats.rx_packets++;
                                        dev->stats.rx_bytes += len;
                                        netif_rx(skb_c);
 
                } else
                        netif_receive_skb(skb);
 
-               dev->last_rx = jiffies;
-
 next:
                ++cq->mcq.cons_index;
                index = (cq->mcq.cons_index) & ring->size_mask;
 
                        skb->protocol = eth_type_trans(skb, mp->dev);
                        netif_receive_skb(skb);
                }
-
-               mp->dev->last_rx = jiffies;
        }
 
        if (rx < budget)
 
                        myri10ge_vlan_ip_csum(skb, csum);
        }
        netif_receive_skb(skb);
-       dev->last_rx = jiffies;
        return 1;
 }
 
 
                DRX(("prot[%04x] netif_rx ", skb->protocol));
                netif_rx(skb);
 
-               dev->last_rx = jiffies;
                dev->stats.rx_packets++;
                dev->stats.rx_bytes += len;
        next:
 
                        }
                        skb->protocol = eth_type_trans(skb, dev);
                        netif_receive_skb(skb);
-                       dev->last_rx = jiffies;
                        np->stats.rx_packets++;
                        np->stats.rx_bytes += pkt_len;
                }
 
        pfifo_push(EMPTY_PTR_FIFO(priv->id),
                FIFO_PTR_SEGMENT(seg) | FIFO_PTR_FRAMENO(frameno));
 
-       ndev->last_rx = jiffies;
        skb->protocol = eth_type_trans(skb, ndev);
        netif_rx(skb);
        ndev->stats.rx_packets++;
 
                }
                adapter->stats.rxdropped++;
        } else {
-
                netif_receive_skb(skb);
-               netdev->last_rx = jiffies;
 
                adapter->stats.no_rcv++;
                adapter->stats.rxbytes += length;
 
 
        skb->protocol = eth_type_trans(skb,dev);
        netif_rx(skb);
-       dev->last_rx = jiffies;
        dev->stats.rx_packets++;
        dev->stats.rx_bytes += i_pkt_size;
 
 
                                        memcpy_fromio(skb->data, p->base + readl(&rbd->buffer), totlen);
                                        skb->protocol = eth_type_trans(skb, dev);
                                        netif_rx(skb);
-                                       dev->last_rx = jiffies;
                                        p->stats.rx_packets++;
                                        p->stats.rx_bytes += totlen;
                                } else
 
                                p->stats.rx_bytes += len;
                                skb->protocol=eth_type_trans(skb,dev);
                                netif_rx(skb);
-                               dev->last_rx = jiffies;
                        }
                        else
                        {
 
        skb->protocol = eth_type_trans(skb, np->dev);
        netif_receive_skb(skb);
 
-       np->dev->last_rx = jiffies;
-
        return num_rcr;
 }
 
 
 
                        skb->protocol = eth_type_trans (skb, dev);
                        netif_rx (skb);
-                       dev->last_rx = jiffies;
                        dev->stats.rx_bytes += pkt_size;
                        dev->stats.rx_packets++;
                } else {
 
                                                ((pkt_len+3)>>2));
                                skb->protocol = eth_type_trans(skb, dev);
                                netif_rx(skb);
-                               dev->last_rx = jiffies;
                                dev->stats.rx_packets++;
                                dev->stats.rx_bytes += pkt_len;
                        } else {
 
                        (pkt_len+3)>>2);
                skb->protocol = eth_type_trans(skb, dev);
                netif_rx(skb);
-               dev->last_rx = jiffies;
                dev->stats.rx_packets++;
                dev->stats.rx_bytes += pkt_len;
            } else {
 
                                ei_block_input(dev, pkt_len, skb, current_offset + sizeof(rx_frame));
                                skb->protocol=eth_type_trans(skb,dev);
                                netif_rx(skb);
-                               dev->last_rx = jiffies;
                                dev->stats.rx_packets++;
                                dev->stats.rx_bytes += pkt_len;
                                if (pkt_stat & ENRSR_PHY)
 
 #endif
 
            netif_rx(skb);
-           dev->last_rx = jiffies;
            lp->stats.rx_packets++;
            lp->stats.rx_bytes += pkt_len;
        }
 
        
        netif_rx(skb); /* Send the packet to the upper (protocol) layers. */
 
-       dev->last_rx = jiffies;
        lp->linux_stats.rx_packets++;
        lp->linux_stats.rx_bytes += pkt_len;
        outb(0xFF, ioaddr + AM2150_RCV_NEXT); /* skip to next frame */
 
                }
                skb->protocol = eth_type_trans(skb, dev);
                netif_rx(skb);
-               dev->last_rx = jiffies;
                lp->stats.rx_packets++;
                lp->stats.rx_bytes += pktlen;
                if (!(rsr & PhyPkt))
 
        dev->stats.rx_bytes += skb->len;
        skb->protocol = eth_type_trans(skb, dev);
        netif_receive_skb(skb);
-       dev->last_rx = jiffies;
        dev->stats.rx_packets++;
        return;
 }
 
                /* Inform the upper layer for the arrival of a packet. */
                rcv->skb->protocol=plip_type_trans(rcv->skb, dev);
                netif_rx_ni(rcv->skb);
-               dev->last_rx = jiffies;
                dev->stats.rx_bytes += rcv->length.h;
                dev->stats.rx_packets++;
                rcv->skb = NULL;
 
                        skb->protocol = htons(npindex_to_ethertype[npi]);
                        skb_reset_mac_header(skb);
                        netif_rx(skb);
-                       ppp->dev->last_rx = jiffies;
                }
        }
        return;
 
        skb->protocol = eth_type_trans(skb, qdev->ndev);
 
        netif_receive_skb(skb);
-       qdev->ndev->last_rx = jiffies;
        lrg_buf_cb2->skb = NULL;
 
        if (qdev->device_id == QL3022_DEVICE_ID)
        netif_receive_skb(skb2);
        ndev->stats.rx_packets++;
        ndev->stats.rx_bytes += length;
-       ndev->last_rx = jiffies;
        lrg_buf_cb2->skb = NULL;
 
        if (qdev->device_id == QL3022_DEVICE_ID)
 
                        "Passing a normal packet upstream.\n");
                netif_rx(skb);
        }
-       ndev->last_rx = jiffies;
 }
 
 /* Process an outbound completion from an rx ring. */
 
                
                /* Send to upper layer */
                netif_receive_skb(skb_ptr);
-               dev->last_rx = jiffies;
                dev->stats.rx_packets++;
                dev->stats.rx_bytes += descptr->len - 4;
 
 
                        if (rtl8169_rx_vlan_skb(tp, desc, skb) < 0)
                                netif_receive_skb(skb);
 
-                       dev->last_rx = jiffies;
                        dev->stats.rx_bytes += pkt_size;
                        dev->stats.rx_packets++;
                }
 
 
                        netif_rx(skb);          /* send it up */
 
-                       dev->last_rx = jiffies;
                        dev->stats.rx_packets++;
                        dev->stats.rx_bytes += pkt_len;
                }
 
        sp->mac_control.stats_info->sw_stat.mem_freed += skb->truesize;
 send_up:
        queue_rx_frame(skb, RXD_GET_VLAN_TAG(rxdp->Control_2));
-       dev->last_rx = jiffies;
 aggregate:
        sp->mac_control.rings[ring_no].rx_bufs_left -= 1;
        return SUCCESS;
 
        /* datagram completed: send to upper level */
        skb_trim(skb, dlen);
        netif_rx(skb);
-       dev->last_rx = jiffies;
        stats->rx_bytes+=dlen;
        stats->rx_packets++;
        lp->rx_skb[ns] = NULL;
 
                }
 
                skb->protocol = eth_type_trans(skb, dev);
-               dev->last_rx = jiffies;
                netif_rx(skb);
 
                dev->stats.rx_bytes += pkt_size;
 
 
                        skb->protocol=eth_type_trans(skb,dev);
                        netif_rx(skb);
-                       dev->last_rx = jiffies;
                        dev->stats.rx_packets++;
                        dev->stats.rx_bytes += pkt_len;
                }
 
        channel->rx_alloc_level += RX_ALLOC_FACTOR_SKB;
 
 done:
-       efx->net_dev->last_rx = jiffies;
+       ;
 }
 
 void efx_rx_strategy(struct efx_channel *channel)
 
                                        skb_put(skb, len);
                                        skb->protocol = eth_type_trans(skb, dev);
                                        netif_rx(skb);
-                                       dev->last_rx = jiffies;
                                        dev->stats.rx_packets++;
                                        dev->stats.rx_bytes += len;
                                } else {
 
                        skb_put(skb, pkt_len);
                        skb->protocol = eth_type_trans(skb, ndev);
                        netif_rx(skb);
-                       ndev->last_rx = jiffies;
                        mdp->stats.rx_packets++;
                        mdp->stats.rx_bytes += pkt_len;
                }
 
 
                        sis190_rx_skb(skb);
 
-                       dev->last_rx = jiffies;
                        stats->rx_packets++;
                        stats->rx_bytes += pkt_size;
                        if ((status & BCAST) == MCAST)
 
                        /* some network statistics */
                        if ((rx_status & BCAST) == MCAST)
                                net_dev->stats.multicast++;
-                       net_dev->last_rx = jiffies;
                        net_dev->stats.rx_bytes += rx_size;
                        net_dev->stats.rx_packets++;
                        sis_priv->dirty_rx++;
 
        skb->protocol = fddi_type_trans(skb, bp->dev);
 
        netif_rx(skb);
-       bp->dev->last_rx = jiffies;
 
        HWM_RX_CHECK(smc, RX_LOW_WATERMARK);
        return;
 
        // deliver frame to system
        skb->protocol = fddi_type_trans(skb, smc->os.dev);
-       skb->dev->last_rx = jiffies;
        netif_rx(skb);
 
        return (0);
 
 
                skb = skge_rx_get(dev, e, control, rd->status, rd->csum2);
                if (likely(skb)) {
-                       dev->last_rx = jiffies;
                        netif_receive_skb(skb);
 
                        ++work_done;
 
        skb_reset_mac_header(skb);
        skb->protocol = htons(ETH_P_IP);
        netif_rx(skb);
-       sl->dev->last_rx = jiffies;
        sl->rx_packets++;
 }
 
 
 
                DBG(SMC_DEBUG_PKTS, "%s: Received packet\n", dev->name);
                PRINT_PKT(data, ((pkt_len - 4) <= 64) ? pkt_len - 4 : 64);
-               dev->last_rx = jiffies;
                skb->protocol = eth_type_trans(skb, dev);
                netif_rx(skb);
                dev->stats.rx_packets++;
        BUG_ON(skb == NULL);
        lp->current_rx_skb = NULL;
        PRINT_PKT(skb->data, skb->len);
-       dev->last_rx = jiffies;
        skb->protocol = eth_type_trans(skb, dev);
        dev->stats.rx_packets++;
        dev->stats.rx_bytes += skb->len;
 
 
                skb->protocol = eth_type_trans(skb, dev );
                netif_rx(skb);
-               dev->last_rx = jiffies;
                dev->stats.rx_packets++;
                dev->stats.rx_bytes += packet_length;
        } else {
 
 
                PRINT_PKT(data, packet_len - 4);
 
-               dev->last_rx = jiffies;
                skb->protocol = eth_type_trans(skb, dev);
                netif_rx(skb);
                dev->stats.rx_packets++;
 
                        skb_trim(used_skb, pkt_len);
                        used_skb->protocol = eth_type_trans(used_skb, dev);
                        netif_rx(used_skb);
-                       dev->last_rx = jiffies;
                        lp->stats.rx_packets++;
                        lp->stats.rx_bytes += pkt_len;
 
 
                } else
 #endif /* VLAN_SUPPORT */
                        netif_receive_skb(skb);
-               dev->last_rx = jiffies;
                np->stats.rx_packets++;
 
        next_rx:
 
 
                                skb->protocol = eth_type_trans( skb, dev );
                                netif_rx( skb );
-                               dev->last_rx = jiffies;
                                dev->stats.rx_packets++;
                                dev->stats.rx_bytes += pkt_len;
                        }
 
                /* No checksums done by the BigMAC ;-( */
                skb->protocol = eth_type_trans(skb, bp->dev);
                netif_rx(skb);
-               bp->dev->last_rx = jiffies;
                bp->enet_stats.rx_packets++;
                bp->enet_stats.rx_bytes += len;
        next:
 
                        skb->protocol = eth_type_trans(skb, dev);
                        /* Note: checksum -> skb->ip_summed = CHECKSUM_UNNECESSARY; */
                        netif_rx(skb);
-                       dev->last_rx = jiffies;
                }
                entry = (entry + 1) % RX_RING_SIZE;
                received++;
 
 
                gp->net_stats.rx_packets++;
                gp->net_stats.rx_bytes += len;
-               gp->dev->last_rx = jiffies;
 
        next:
                entry = NEXT_RX(entry);
 
                skb->protocol = eth_type_trans(skb, dev);
                netif_rx(skb);
 
-               dev->last_rx = jiffies;
                hp->net_stats.rx_packets++;
                hp->net_stats.rx_bytes += len;
        next:
 
                                         len);
                        skb->protocol = eth_type_trans(skb, dev);
                        netif_rx(skb);
-                       dev->last_rx = jiffies;
                        dev->stats.rx_packets++;
                }
 
                        lance_piocopy_to_skb(skb, &(ib->rx_buf[entry][0]), len);
                        skb->protocol = eth_type_trans(skb, dev);
                        netif_rx(skb);
-                       dev->last_rx = jiffies;
                        dev->stats.rx_packets++;
                }
 
 
                                                 len);
                                skb->protocol = eth_type_trans(skb, qep->dev);
                                netif_rx(skb);
-                               qep->dev->last_rx = jiffies;
                                dev->stats.rx_packets++;
                                dev->stats.rx_bytes += len;
                        }
 
 #else
                        netif_rx(skb);
 #endif
-                       dev->last_rx = jiffies;
                        dev->stats.rx_packets++;
                        dev->stats.rx_bytes += pkt_len;
                } else {
 
        ENTER;
        max_done = budget;
 
-       priv->ndev->last_rx = jiffies;
        f->m.wptr = READ_REG(priv, f->m.reg_WPTR) & TXF_WPTR_WR_PTR;
 
        size = f->m.wptr - f->m.rptr;
 
 #endif
                        netif_receive_skb(skb);
 
-               tp->dev->last_rx = jiffies;
                received++;
                budget--;
 
 
                }
        }
 
-       dev->last_rx = jiffies;
-
        return ack;
 
 } /* TLan_HandleRxEOF */
 
 
                        netif_rx(skb2) ;                
                 } /* if multiple buffers */
-               dev->last_rx = jiffies ;        
        } /* while packet to do */
 
        /* Clear the updComplete interrupt */
                 * anyway.
                 */
 
-               dev->last_rx = jiffies ; 
                /* Acknowledge interrupt, this tells nic we are done with the arb */
                writel(ACK_INTERRUPT | ARBCACK | LATCH_ACK, xl_mmio + MMIO_COMMAND) ; 
 
 
                skb->ip_summed = CHECKSUM_COMPLETE;
        }
        netif_rx(skb);
-       dev->last_rx = jiffies;
 }                              /*tr_rx */
 
 /*****************************************************************************/
 
                                        /* send up to the protocol */
                                        netif_rx(skb);
                                }
-                               dev->last_rx = jiffies;
                                streamer_priv->streamer_stats.rx_packets++;
                                streamer_priv->streamer_stats.rx_bytes += length;
                        }       /* if skb == null */
 
                                                skb->protocol = tr_type_trans(skb,dev);
                                                netif_rx(skb) ; 
                                        } 
-                                       dev->last_rx = jiffies ; 
                                        olympic_priv->olympic_stats.rx_packets++ ; 
                                        olympic_priv->olympic_stats.rx_bytes += length ; 
                                } /* if skb == null */
                               dev->name, mac_hdr->saddr);
                }
                netif_rx(mac_frame);
-               dev->last_rx = jiffies;
 
 drop_frame:
                /* Now tell the card we have dealt with the received frame */
 
                 /* Kick the packet on up. */
                 skb->protocol = tr_type_trans(skb, dev);
                 netif_rx(skb);
-               dev->last_rx = jiffies;
                 err = 0;
         }
 
                                        /* Kick the packet on up. */
                                        skb->protocol = tr_type_trans(skb, dev);
                                        netif_rx(skb);
-                                       dev->last_rx = jiffies;
                                } else {
                                }
                         }
 
                                skb_trim(skb,Length);
                                skb->protocol = tr_type_trans(skb,dev);
                                netif_rx(skb);
-                               dev->last_rx = jiffies;
                        }
                }
                else    /* Invalid frame */
 
                skb_put(skb, data->rxring[rx].len);
                skb->protocol = eth_type_trans(skb, dev);
                netif_receive_skb(skb);
-               dev->last_rx = jiffies;
        }
 
        return done;
 
 
                de->net_stats.rx_packets++;
                de->net_stats.rx_bytes += skb->len;
-               de->dev->last_rx = jiffies;
                rc = netif_rx (skb);
                if (rc == NET_RX_DROP)
                        drop = 1;
 
                    netif_rx(skb);
 
                    /* Update stats */
-                   dev->last_rx = jiffies;
                    lp->stats.rx_packets++;
                    lp->stats.rx_bytes += pkt_len;
                }
 
 
                                        skb->protocol = eth_type_trans(skb, dev);
                                        netif_rx(skb);
-                                       dev->last_rx = jiffies;
                                        db->stats.rx_packets++;
                                        db->stats.rx_bytes += rxlen;
                                }
 
 
                                netif_receive_skb(skb);
 
-                               dev->last_rx = jiffies;
                                tp->stats.rx_packets++;
                                tp->stats.rx_bytes += pkt_len;
                        }
 
                        netif_rx(skb);
 
-                       dev->last_rx = jiffies;
                        tp->stats.rx_packets++;
                        tp->stats.rx_bytes += pkt_len;
                }
 
 
                                skb->protocol = eth_type_trans(skb, dev);
                                netif_rx(skb);
-                               dev->last_rx = jiffies;
                                db->stats.rx_packets++;
                                db->stats.rx_bytes += rxlen;
 
 
 #endif
                        skb->protocol = eth_type_trans(skb, dev);
                        netif_rx(skb);
-                       dev->last_rx = jiffies;
                        np->stats.rx_packets++;
                        np->stats.rx_bytes += pkt_len;
                }
 
                        skb_put(skb, pkt_len);
                        skb->protocol = eth_type_trans(skb, dev);
                        netif_rx(skb);
-                       dev->last_rx = jiffies;
                        card->stats.rx_packets++;
                        card->stats.rx_bytes += pkt_len;
 
 
        }
 
        netif_rx_ni(skb);
-       tun->dev->last_rx = jiffies;
 
        tun->dev->stats.rx_packets++;
        tun->dev->stats.rx_bytes += len;
 
                        netif_receive_skb(new_skb);
                spin_unlock(&tp->state_lock);
 
-               tp->dev->last_rx = jiffies;
                received++;
                budget--;
        }
 
                        netif_receive_skb(skb);
                }
 
-               ugeth->dev->last_rx = jiffies;
-
                skb = get_new_skb(ugeth, bd);
                if (!skb) {
                        if (netif_msg_rx_err(ugeth))
 
 
        } while (pkt_start - (u8 *) urb->transfer_buffer < urb->actual_length);
 
-       catc->netdev->last_rx = jiffies;
-
        if (catc->is_f5u011) {
                if (atomic_read(&catc->recq_sz)) {
                        int status;
 
                        }
                        skb->protocol = eth_type_trans(skb, dev);
                        netif_receive_skb(skb);
-                       dev->last_rx = jiffies;
                        rp->stats.rx_bytes += pkt_len;
                        rp->stats.rx_packets++;
                }
 
 
                rd->size |= RX_INTEN;
 
-               vptr->dev->last_rx = jiffies;
-
                rd_curr++;
                if (rd_curr >= vptr->options.numrx)
                        rd_curr = 0;
 
        chan->netdev->stats.rx_bytes += chan->cosa->rxsize;
        netif_rx(chan->rx_skb);
        chan->rx_skb = NULL;
-       chan->netdev->last_rx = jiffies;
        return 0;
 }
 
 
 
        skb_reset_mac_header(skb);
        netif_rx(skb);
-       dev->last_rx = jiffies;         /* timestamp */
 }
 
 /* Connect interrupt handler. */
 
        skb->protocol = x25_type_trans(skb, dev);
        netif_rx(skb);
-       dev->last_rx = jiffies;         /* timestamp */
 }
 
 /* Convert line speed in bps to a number used by cyclom 2x code. */
 
                dlp->stats.rx_bytes += skb->len;
                netif_rx(skb);
                dlp->stats.rx_packets++;
-               dev->last_rx = jiffies;
        }
        else
                dev_kfree_skb(skb);
 
                skb_put(skb, pkt_len);
                if (netif_running(dev))
                        skb->protocol = hdlc_type_trans(skb, dev);
-               skb->dev->last_rx = jiffies;
                netif_rx(skb);
        } else {
                if (skb->data[pkt_len] & FrameRdo)
 
        fst_process_rx_status(rx_status, port_to_dev(port)->name);
        if (rx_status == NET_RX_DROP)
                dev->stats.rx_dropped++;
-       dev->last_rx = jiffies;
 }
 
 /*
                fst_process_rx_status(rx_status, port_to_dev(port)->name);
                if (rx_status == NET_RX_DROP)
                        dev->stats.rx_dropped++;
-               dev->last_rx = jiffies;
        } else {
                card->dma_skb_rx = skb;
                card->dma_port_rx = port;
 
 #endif
        dev->stats.rx_packets++;
        dev->stats.rx_bytes += skb->len;
-       dev->last_rx = jiffies;
        skb->protocol = hdlc_type_trans(skb, dev);
        netif_rx(skb);
 }
 
         *      it right now.
         */
        netif_rx(skb);
-       c->netdevice->last_rx = jiffies;
 }
 
 /*
 
        *ptr = 0x00;
 
        skb->protocol = x25_type_trans(skb, dev);
-       skb->dev->last_rx = jiffies;
        return netif_rx(skb);
 }
 
        *ptr = 0x01;
 
        skb->protocol = x25_type_trans(skb, dev);
-       skb->dev->last_rx = jiffies;
        netif_rx(skb);
 }
 
        *ptr = 0x02;
 
        skb->protocol = x25_type_trans(skb, dev);
-       skb->dev->last_rx = jiffies;
        netif_rx(skb);
 }
 
 
             goto skip_packet;
         }
         
-        dev->last_rx = jiffies;
        sc->lmc_device->stats.rx_packets++;
        sc->lmc_device->stats.rx_bytes += len;
 
 
     case LMC_PPP:
     case LMC_NET:
     default:
-        skb->dev->last_rx = jiffies;
         netif_rx(skb);
         break;
     case LMC_RAW:
 
 #ifdef CONFIG_SBNI_MULTILINE
        skb->protocol = eth_type_trans( skb, nl->master );
        netif_rx( skb );
-       dev->last_rx = jiffies;
        ++((struct net_local *) nl->master->priv)->stats.rx_packets;
        ((struct net_local *) nl->master->priv)->stats.rx_bytes += nl->inppos;
 #else
        skb->protocol = eth_type_trans( skb, dev );
        netif_rx( skb );
-       dev->last_rx = jiffies;
        ++nl->stats.rx_packets;
        nl->stats.rx_bytes += nl->inppos;
 #endif
 
        skb_reset_mac_header(skb);
        skb->dev = c->netdevice;
        netif_rx(skb);
-       c->netdevice->last_rx = jiffies;
 }
 
 /*
 
                                        printk(KERN_DEBUG "Yow an IP frame.\n");
                                skb->protocol=htons(ETH_P_IP);
                                netif_rx(skb);
-                               dev->last_rx = jiffies;
                                goto done;
                        }
                        break;
                        if (sp->lcp.state == LCP_STATE_OPENED) {
                                skb->protocol=htons(ETH_P_IPX);
                                netif_rx(skb);
-                               dev->last_rx = jiffies;
                                goto done;
                        }
                        break;
                case ETH_P_IP:
                        skb->protocol=htons(ETH_P_IP);
                        netif_rx(skb);
-                       dev->last_rx = jiffies;
                        goto done;
 #endif
 #ifdef CONFIG_IPX
                case ETH_P_IPX:
                        skb->protocol=htons(ETH_P_IPX);
                        netif_rx(skb);
-                       dev->last_rx = jiffies;
                        goto done;
 #endif
                }
 
 #endif
                                dev->stats.rx_packets++;
                                dev->stats.rx_bytes += skb->len;
-                               dev->last_rx = jiffies;
                                skb->protocol = hdlc_type_trans(skb, dev);
                                netif_rx(skb);
                                skb = NULL;
 
                printk(KERN_DEBUG "x25_asy: data received err - %d\n", err);
        } else {
                netif_rx(skb);
-               sl->dev->last_rx = jiffies;
                sl->stats.rx_packets++;
        }
 }
 
 static int x25_asy_data_indication(struct net_device *dev, struct sk_buff *skb)
 {
-       skb->dev->last_rx = jiffies;
        return netif_rx(skb);
 }
 
 
        skb->protocol = x25_type_trans(skb, sl->dev);
        netif_rx(skb);
-       sl->dev->last_rx = jiffies;
 }
 
 static void x25_asy_disconnected(struct net_device *dev, int reason)
 
        skb->protocol = x25_type_trans(skb, sl->dev);
        netif_rx(skb);
-       sl->dev->last_rx = jiffies;
 }
 
 static struct lapb_register_struct x25_asy_callbacks = {
 
                                skb->protocol = htons(ETH_P_802_2);
                        } else
                                skb->protocol = eth_type_trans(skb,dev);
-                       skb->dev->last_rx = jiffies;
                        skb->ip_summed = CHECKSUM_NONE;
 
                        netif_rx( skb );
 
                skb->ip_summed = CHECKSUM_NONE;
                skb->protocol = eth_type_trans(skb, ai->dev);
-               skb->dev->last_rx = jiffies;
                netif_rx(skb);
        }
 badrx:
        skb->pkt_type = PACKET_OTHERHOST;
        skb->dev = ai->wifidev;
        skb->protocol = htons(ETH_P_802_2);
-       skb->dev->last_rx = jiffies;
        skb->ip_summed = CHECKSUM_NONE;
        netif_rx( skb );
 badrx:
 
                                        printk(KERN_WARNING "arlan kernel pkt type trans %x \n", skb->protocol);
                                }
                        netif_rx(skb);
-                       dev->last_rx = jiffies;
                        dev->stats.rx_packets++;
                        dev->stats.rx_bytes += pkt_len;
                }
 
        else
                memcpy(&skbp[6], header->addr2, 6); /* source address */
 
-       priv->dev->last_rx = jiffies;
        skb->protocol = eth_type_trans(skb, priv->dev);
        skb->ip_summed = CHECKSUM_NONE;
        netif_rx(skb);
                                memcpy(skb_put(skb, priv->frag_len + 12),
                                       priv->rx_buf,
                                       priv->frag_len + 12);
-                               priv->dev->last_rx = jiffies;
                                skb->protocol = eth_type_trans(skb, priv->dev);
                                skb->ip_summed = CHECKSUM_NONE;
                                netif_rx(skb);
 
 
        iface = netdev_priv(dev);
        local = iface->local;
-       dev->last_rx = jiffies;
 
        if (dev->type == ARPHRD_IEEE80211_PRISM) {
                if (local->monitor_type == PRISM2_MONITOR_PRISM) {
                from_assoc_ap = 1;
        }
 
-       dev->last_rx = jiffies;
-
        if ((local->iw_mode == IW_MODE_MASTER ||
             local->iw_mode == IW_MODE_REPEAT) &&
            !from_assoc_ap) {
 
        /* Queue packet for network layer */
        netif_rx(skb);
 
-       dev->last_rx = jiffies;
        priv->stats.rx_packets++;
        priv->stats.rx_bytes += rcvLen;
 
 
        skb->pkt_type = PACKET_OTHERHOST;
        skb->protocol = __constant_htons(ETH_P_802_2);
        
-       dev->last_rx = jiffies;
        stats->rx_packets++;
        stats->rx_bytes += skb->len;
 
        else
                memcpy(hdr->h_source, desc->addr2, ETH_ALEN);
 
-       dev->last_rx = jiffies;
        skb->protocol = eth_type_trans(skb, dev);
        skb->ip_summed = CHECKSUM_NONE;
        if (fc & IEEE80211_FCTL_TODS)
 
 
     skb->protocol = eth_type_trans(skb,dev);
     netif_rx(skb);
-    dev->last_rx = jiffies;
     local->stats.rx_packets++;
     local->stats.rx_bytes += total_len;
 
 
 #ifdef EXT_COUNTERS
                strip_info->rx_bytes += packetlen;
 #endif
-               skb->dev->last_rx = jiffies;
                netif_rx(skb);
        }
 }
         */
 
        dev->trans_start = 0;
-       dev->last_rx = 0;
        dev->tx_queue_len = 30; /* Drop after 30 frames queued */
 
        dev->flags = 0;
 
        netif_rx(skb);
 
        /* Keep statistics up to date */
-       dev->last_rx = jiffies;
        lp->stats.rx_packets++;
        lp->stats.rx_bytes += sksize;
 
 
   netif_rx(skb);
 
   /* Keep stats up to date */
-  dev->last_rx = jiffies;
   lp->stats.rx_packets++;
   lp->stats.rx_bytes += sksize;
 
 
                wl3501_receive(this, skb->data, pkt_len);
                skb_put(skb, pkt_len);
                skb->protocol   = eth_type_trans(skb, dev);
-               dev->last_rx    = jiffies;
                this->stats.rx_packets++;
                this->stats.rx_bytes += skb->len;
                netif_rx(skb);
 
                        memcpy(skb_put(skb, 2), &data[datalen-24], 2);
                        memcpy(skb_put(skb, len), data, len);
                        skb->protocol = eth_type_trans(skb, zd->dev);
-                       skb->dev->last_rx = jiffies;
                        zd->stats.rx_packets++;
                        zd->stats.rx_bytes += skb->len;
                        netif_rx(skb);
                        memcpy(skb_put(skb, len), data+8, len);
                }
                skb->protocol = eth_type_trans(skb, zd->dev);
-               skb->dev->last_rx = jiffies;
                zd->stats.rx_packets++;
                zd->stats.rx_bytes += skb->len;
                netif_rx(skb);
 
 
                /* Pass it up. */
                netif_receive_skb(skb);
-               dev->last_rx = jiffies;
        }
 
        return packets_dropped;
 
                        }
                        skb->protocol = eth_type_trans(skb, dev);
                        netif_rx(skb);
-                       dev->last_rx = jiffies;
                        dev->stats.rx_packets++;
                        dev->stats.rx_bytes += pkt_len;
                }
 
                  }
                  skb->protocol=eth_type_trans(skb,dev);
                  netif_rx(skb);
-                 dev->last_rx = jiffies;
                  dev->stats.rx_packets++;
                  dev->stats.rx_bytes += pkt_len;
                }