net: trans_start cleanups
authorEric Dumazet <eric.dumazet@gmail.com>
Mon, 10 May 2010 12:01:31 +0000 (05:01 -0700)
committerDavid S. Miller <davem@davemloft.net>
Mon, 10 May 2010 12:01:31 +0000 (05:01 -0700)
Now that core network takes care of trans_start updates, dont do it
in drivers themselves, if possible. Drivers can avoid one cache miss
(on dev->trans_start) in their start_xmit() handler.

Exceptions are NETIF_F_LLTX drivers

Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
168 files changed:
drivers/net/3c501.c
drivers/net/3c505.c
drivers/net/3c507.c
drivers/net/3c509.c
drivers/net/3c515.c
drivers/net/3c523.c
drivers/net/3c59x.c
drivers/net/7990.c
drivers/net/8139cp.c
drivers/net/8139too.c
drivers/net/82596.c
drivers/net/a2065.c
drivers/net/amd8111e.c
drivers/net/appletalk/cops.c
drivers/net/arcnet/arcnet.c
drivers/net/ariadne.c
drivers/net/arm/am79c961a.c
drivers/net/arm/at91_ether.c
drivers/net/arm/ep93xx_eth.c
drivers/net/arm/ether1.c
drivers/net/arm/ether3.c
drivers/net/arm/ixp4xx_eth.c
drivers/net/arm/ks8695net.c
drivers/net/arm/w90p910_ether.c
drivers/net/at1700.c
drivers/net/atarilance.c
drivers/net/atlx/atl2.c
drivers/net/atp.c
drivers/net/au1000_eth.c
drivers/net/b44.c
drivers/net/bcm63xx_enet.c
drivers/net/bfin_mac.c
drivers/net/can/at91_can.c
drivers/net/can/bfin_can.c
drivers/net/can/mcp251x.c
drivers/net/can/sja1000/sja1000.c
drivers/net/cassini.c
drivers/net/cpmac.c
drivers/net/cris/eth_v10.c
drivers/net/cs89x0.c
drivers/net/davinci_emac.c
drivers/net/de600.c
drivers/net/de620.c
drivers/net/declance.c
drivers/net/depca.c
drivers/net/dm9000.c
drivers/net/dnet.c
drivers/net/e100.c
drivers/net/eepro.c
drivers/net/eexpress.c
drivers/net/ehea/ehea_main.c
drivers/net/enc28j60.c
drivers/net/epic100.c
drivers/net/eth16i.c
drivers/net/ethoc.c
drivers/net/ewrk3.c
drivers/net/fealnx.c
drivers/net/fec.c
drivers/net/fec_mpc52xx.c
drivers/net/forcedeth.c
drivers/net/fs_enet/fs_enet-main.c
drivers/net/gianfar.c
drivers/net/hp100.c
drivers/net/ibmveth.c
drivers/net/ifb.c
drivers/net/ioc3-eth.c
drivers/net/irda/au1k_ir.c
drivers/net/irda/donauboe.c
drivers/net/irda/pxaficp_ir.c
drivers/net/irda/sa1100_ir.c
drivers/net/irda/sir_dev.c
drivers/net/irda/smsc-ircc2.c
drivers/net/irda/vlsi_ir.c
drivers/net/irda/w83977af_ir.c
drivers/net/ixgbevf/ixgbevf_main.c
drivers/net/ixp2000/ixpdev.c
drivers/net/lance.c
drivers/net/lib82596.c
drivers/net/lib8390.c
drivers/net/ll_temac_main.c
drivers/net/lp486e.c
drivers/net/mac89x0.c
drivers/net/macb.c
drivers/net/macmace.c
drivers/net/meth.c
drivers/net/mv643xx_eth.c
drivers/net/natsemi.c
drivers/net/netx-eth.c
drivers/net/ni5010.c
drivers/net/ni52.c
drivers/net/ni65.c
drivers/net/octeon/octeon_mgmt.c
drivers/net/pci-skeleton.c
drivers/net/pcmcia/3c574_cs.c
drivers/net/pcmcia/3c589_cs.c
drivers/net/pcmcia/axnet_cs.c
drivers/net/pcmcia/fmvj18x_cs.c
drivers/net/pcmcia/nmclan_cs.c
drivers/net/pcmcia/smc91c92_cs.c
drivers/net/pcmcia/xirc2ps_cs.c
drivers/net/pcnet32.c
drivers/net/plip.c
drivers/net/ps3_gelic_net.c
drivers/net/r6040.c
drivers/net/rrunner.c
drivers/net/s6gmac.c
drivers/net/sb1250-mac.c
drivers/net/sc92031.c
drivers/net/seeq8005.c
drivers/net/sgiseeq.c
drivers/net/sh_eth.c
drivers/net/sis900.c
drivers/net/skfp/skfddi.c
drivers/net/slip.c
drivers/net/smc911x.c
drivers/net/smc9194.c
drivers/net/smc91x.c
drivers/net/smsc911x.c
drivers/net/smsc9420.c
drivers/net/sonic.c
drivers/net/starfire.c
drivers/net/sun3_82586.c
drivers/net/sun3lance.c
drivers/net/sunbmac.c
drivers/net/sundance.c
drivers/net/sungem.c
drivers/net/sunhme.c
drivers/net/sunlance.c
drivers/net/sunqe.c
drivers/net/sunvnet.c
drivers/net/tc35815.c
drivers/net/tlan.c
drivers/net/tokenring/ibmtr.c
drivers/net/tokenring/smctr.c
drivers/net/tokenring/tms380tr.c
drivers/net/tulip/de2104x.c
drivers/net/tulip/de4x5.c
drivers/net/tulip/dmfe.c
drivers/net/tulip/pnic.c
drivers/net/tulip/tulip_core.c
drivers/net/tulip/uli526x.c
drivers/net/tulip/winbond-840.c
drivers/net/tun.c
drivers/net/typhoon.c
drivers/net/ucc_geth.c
drivers/net/usb/hso.c
drivers/net/usb/kaweth.c
drivers/net/usb/pegasus.c
drivers/net/via-rhine.c
drivers/net/via-velocity.c
drivers/net/vmxnet3/vmxnet3_drv.c
drivers/net/wan/dscc4.c
drivers/net/wan/hd64570.c
drivers/net/wan/hd64572.c
drivers/net/wan/ixp4xx_hss.c
drivers/net/wan/lmc/lmc_main.c
drivers/net/wan/pc300_drv.c
drivers/net/wan/wanxl.c
drivers/net/wireless/atmel.c
drivers/net/wireless/libertas/main.c
drivers/net/wireless/libertas/tx.c
drivers/net/wireless/orinoco/main.c
drivers/net/wireless/prism54/islpci_eth.c
drivers/net/wireless/ray_cs.c
drivers/net/wireless/wl3501_cs.c
drivers/net/wireless/zd1201.c
drivers/net/xilinx_emaclite.c
drivers/net/znet.c

index 3ea42ff176577900c734b5e9d7bbd67973a1d324..4fed2a88243bf3be54579cd25b7d97d69fd0a552 100644 (file)
@@ -480,7 +480,6 @@ static netdev_tx_t el_start_xmit(struct sk_buff *skb, struct net_device *dev)
                        /* fire ... Trigger xmit.  */
                        outb(AX_XMIT, AX_CMD);
                        lp->loading = 0;
-                       dev->trans_start = jiffies;
                        if (el_debug > 2)
                                pr_debug(" queued xmit.\n");
                        dev_kfree_skb(skb);
index 8d584f5fd02d09e3edc5eb0a5eb0bf411a416534..88d766ee0e1bc35c89a53effa08d9c41b80fa198 100644 (file)
@@ -1055,7 +1055,7 @@ static void elp_timeout(struct net_device *dev)
                   (stat & ACRF) ? "interrupt" : "command");
        if (elp_debug >= 1)
                pr_debug("%s: status %#02x\n", dev->name, stat);
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        dev->stats.tx_dropped++;
        netif_wake_queue(dev);
 }
@@ -1093,11 +1093,6 @@ static netdev_tx_t elp_start_xmit(struct sk_buff *skb, struct net_device *dev)
        if (elp_debug >= 3)
                pr_debug("%s: packet of length %d sent\n", dev->name, (int) skb->len);
 
-       /*
-        * start the transmit timeout
-        */
-       dev->trans_start = jiffies;
-
        prime_rx(dev);
        spin_unlock_irqrestore(&adapter->lock, flags);
        netif_start_queue(dev);
index 9e95afa49fbe26b546dd75b35a239e4a0e3fbb45..c4e272fbc2cc83d315d0a1c84f01816f7249c4b8 100644 (file)
@@ -504,7 +504,7 @@ static void el16_tx_timeout (struct net_device *dev)
                outb (0, ioaddr + SIGNAL_CA);   /* Issue channel-attn. */
                lp->last_restart = dev->stats.tx_packets;
        }
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        netif_wake_queue (dev);
 }
 
@@ -528,7 +528,6 @@ static netdev_tx_t el16_send_packet (struct sk_buff *skb,
 
        hardware_send_packet (dev, buf, skb->len, length - skb->len);
 
-       dev->trans_start = jiffies;
        /* Enable the 82586 interrupt input. */
        outb (0x84, ioaddr + MISC_CTRL);
 
index ab9bb3c520020f3a047181c58f957aadddd58f7a..54deaa91e7c66e4954bd562fb6b7bd4e4fe84560 100644 (file)
@@ -807,7 +807,7 @@ el3_tx_timeout (struct net_device *dev)
                   dev->name, inb(ioaddr + TX_STATUS), inw(ioaddr + EL3_STATUS),
                   inw(ioaddr + TX_FREE));
        dev->stats.tx_errors++;
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        /* Issue TX_RESET and TX_START commands. */
        outw(TxReset, ioaddr + EL3_CMD);
        outw(TxEnable, ioaddr + EL3_CMD);
@@ -868,7 +868,6 @@ el3_start_xmit(struct sk_buff *skb, struct net_device *dev)
        /* ... and the packet rounded to a doubleword. */
        outsl(ioaddr + TX_FIFO, skb->data, (skb->len + 3) >> 2);
 
-       dev->trans_start = jiffies;
        if (inw(ioaddr + TX_FREE) > 1536)
                netif_start_queue(dev);
        else
index 2e17837be546b2d5f0a90e7984ae80a4fc15ea6c..569e269f282e7792a3c7d0952b09a85dd64d8798 100644 (file)
@@ -992,7 +992,7 @@ static void corkscrew_timeout(struct net_device *dev)
                if (!(inw(ioaddr + EL3_STATUS) & CmdInProgress))
                        break;
        outw(TxEnable, ioaddr + EL3_CMD);
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        dev->stats.tx_errors++;
        dev->stats.tx_dropped++;
        netif_wake_queue(dev);
@@ -1055,7 +1055,6 @@ static netdev_tx_t corkscrew_start_xmit(struct sk_buff *skb,
                                prev_entry->status &= ~0x80000000;
                        netif_wake_queue(dev);
                }
-               dev->trans_start = jiffies;
                return NETDEV_TX_OK;
        }
        /* Put out the doubleword header... */
@@ -1091,7 +1090,6 @@ static netdev_tx_t corkscrew_start_xmit(struct sk_buff *skb,
                outw(SetTxThreshold + (1536 >> 2), ioaddr + EL3_CMD);
 #endif                         /* bus master */
 
-       dev->trans_start = jiffies;
 
        /* Clear the Tx status stack. */
        {
index 55d219e585fb095240d9702e3e183116d023a4f7..a7b0e5e43a529f6f5cb5ecf08f41d94ec97b5efb 100644 (file)
@@ -1152,7 +1152,6 @@ static netdev_tx_t elmc_send_packet(struct sk_buff *skb, struct net_device *dev)
                p->scb->cmd = CUC_START;
                p->xmit_cmds[0]->cmd_status = 0;
                        elmc_attn586();
-               dev->trans_start = jiffies;
                if (!i) {
                        dev_kfree_skb(skb);
                }
@@ -1176,7 +1175,6 @@ static netdev_tx_t elmc_send_packet(struct sk_buff *skb, struct net_device *dev)
        p->xmit_cmds[0]->cmd_status = p->nop_cmds[next_nop]->cmd_status = 0;
 
        p->nop_cmds[p->nop_point]->cmd_link = make16((p->xmit_cmds[0]));
-       dev->trans_start = jiffies;
        p->nop_point = next_nop;
        dev_kfree_skb(skb);
 #endif
@@ -1190,7 +1188,6 @@ static netdev_tx_t elmc_send_packet(struct sk_buff *skb, struct net_device *dev)
            = make16((p->nop_cmds[next_nop]));
        p->nop_cmds[next_nop]->cmd_status = 0;
                p->nop_cmds[p->xmit_count]->cmd_link = make16((p->xmit_cmds[p->xmit_count]));
-       dev->trans_start = jiffies;
        p->xmit_count = next_nop;
        if (p->xmit_count != p->xmit_last)
                netif_wake_queue(dev);
index 97525307ed27c508da243d890948217ec3ccd6ed..dab2afac6ddc9e0624aa45c9db1b0884493c4557 100644 (file)
@@ -1917,7 +1917,7 @@ static void vortex_tx_timeout(struct net_device *dev)
 
        /* Issue Tx Enable */
        iowrite16(TxEnable, ioaddr + EL3_CMD);
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
 
        /* Switch to register set 7 for normal use. */
        EL3WINDOW(7);
@@ -2063,7 +2063,6 @@ vortex_start_xmit(struct sk_buff *skb, struct net_device *dev)
                }
        }
 
-       dev->trans_start = jiffies;
 
        /* Clear the Tx status stack. */
        {
@@ -2174,7 +2173,6 @@ boomerang_start_xmit(struct sk_buff *skb, struct net_device *dev)
        }
        iowrite16(DownUnstall, ioaddr + EL3_CMD);
        spin_unlock_irqrestore(&vp->lock, flags);
-       dev->trans_start = jiffies;
        return NETDEV_TX_OK;
 }
 
index f09e594514958bf8eabd58a131e5fc9fb4c8c863..561d3d582813874974236cc8fdbac7b80a64adcf 100644 (file)
@@ -262,7 +262,7 @@ static int lance_reset (struct net_device *dev)
 
         load_csrs (lp);
         lance_init_ring (dev);
-        dev->trans_start = jiffies;
+        dev->trans_start = jiffies; /* prevent tx timeout */
         status = init_restart_lance (lp);
 #ifdef DEBUG_DRIVER
         printk ("Lance restart=%d\n", status);
@@ -526,7 +526,7 @@ void lance_tx_timeout(struct net_device *dev)
 {
        printk("lance_tx_timeout\n");
        lance_reset(dev);
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        netif_wake_queue (dev);
 }
 EXPORT_SYMBOL_GPL(lance_tx_timeout);
@@ -574,7 +574,6 @@ int lance_start_xmit (struct sk_buff *skb, struct net_device *dev)
         outs++;
         /* Kick the lance: transmit now */
         WRITERDP(lp, LE_C0_INEA | LE_C0_TDMD);
-        dev->trans_start = jiffies;
         dev_kfree_skb (skb);
 
        spin_lock_irqsave (&lp->devlock, flags);
index 4e8d11cfe47755854c71309299a509b80c80b739..cd63b97f3c6863bf9386a497ebd06386274b5fe9 100644 (file)
@@ -882,7 +882,6 @@ static netdev_tx_t cp_start_xmit (struct sk_buff *skb,
        spin_unlock_irqrestore(&cp->lock, intr_flags);
 
        cpw8(TxPoll, NormalTxPoll);
-       dev->trans_start = jiffies;
 
        return NETDEV_TX_OK;
 }
index d0cb372a0f0d81907a286c0be18d310abfd41c68..4ba72933f0da57b72f069e4d95a29fc1ad8da1f1 100644 (file)
@@ -1716,8 +1716,6 @@ static netdev_tx_t rtl8139_start_xmit (struct sk_buff *skb,
        RTL_W32_F (TxStatus0 + (entry * sizeof (u32)),
                   tp->tx_flag | max(len, (unsigned int)ETH_ZLEN));
 
-       dev->trans_start = jiffies;
-
        tp->cur_tx++;
 
        if ((tp->cur_tx - NUM_TX_DESC) == tp->dirty_tx)
index 97c5fc019cd42060fdfe061cddb625c8474db3be..dd8dc15556cbda41d26691fdbd42308e08a5c911 100644 (file)
@@ -1050,7 +1050,7 @@ static void i596_tx_timeout (struct net_device *dev)
                lp->last_restart = dev->stats.tx_packets;
        }
 
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        netif_wake_queue (dev);
 }
 
@@ -1060,7 +1060,6 @@ static netdev_tx_t i596_start_xmit(struct sk_buff *skb, struct net_device *dev)
        struct tx_cmd *tx_cmd;
        struct i596_tbd *tbd;
        short length = skb->len;
-       dev->trans_start = jiffies;
 
        DEB(DEB_STARTTX,printk(KERN_DEBUG "%s: i596_start_xmit(%x,%p) called\n",
                                dev->name, skb->len, skb->data));
index ce0a0b8787d8a706effd1033acc02211cb8d8787..ecaa28c6f5058d6da6c1e9f3ea58950922cf0640 100644 (file)
@@ -525,7 +525,7 @@ static inline int lance_reset (struct net_device *dev)
        load_csrs (lp);
 
        lance_init_ring (dev);
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        netif_start_queue(dev);
 
        status = init_restart_lance (lp);
@@ -588,7 +588,6 @@ static netdev_tx_t lance_start_xmit (struct sk_buff *skb,
 
        /* Kick the lance: transmit now */
        ll->rdp = LE_C0_INEA | LE_C0_TDMD;
-       dev->trans_start = jiffies;
        dev_kfree_skb (skb);
 
        local_irq_restore(flags);
index 97d71a960602e5427bbbcca0eba8eedeec8913e0..585c25f4b60c27437043eacbea291d137a60a210 100644 (file)
@@ -1339,8 +1339,6 @@ static netdev_tx_t amd8111e_start_xmit(struct sk_buff *skb,
        writel( VAL1 | TDMD0, lp->mmio + CMD0);
        writel( VAL2 | RDMD0,lp->mmio + CMD0);
 
-       dev->trans_start = jiffies;
-
        if(amd8111e_tx_queue_avail(lp) < 0){
                netif_stop_queue(dev);
        }
index 6f8d6206b5c483a6bbac6102a57a0a96813bcb59..14e1d952226e92cbedd0c29c57f642235e22c159 100644 (file)
@@ -866,7 +866,7 @@ static void cops_timeout(struct net_device *dev)
        }
        printk(KERN_WARNING "%s: Transmit timed out.\n", dev->name);
        cops_jumpstart(dev);    /* Restart the card. */
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        netif_wake_queue(dev);
 }
 
@@ -919,9 +919,8 @@ static netdev_tx_t cops_send_packet(struct sk_buff *skb,
        /* Done sending packet, update counters and cleanup. */
        dev->stats.tx_packets++;
        dev->stats.tx_bytes += skb->len;
-       dev->trans_start = jiffies;
        dev_kfree_skb (skb);
-        return NETDEV_TX_OK;
+       return NETDEV_TX_OK;
 }
 
 /*
index d8f029303754a76c4feae384986b2b6efbc21ca1..a746ba272f04b5e3b77a4e45f65809a398c73585 100644 (file)
@@ -654,7 +654,6 @@ netdev_tx_t arcnet_send_packet(struct sk_buff *skb,
                        }
                }
                retval = NETDEV_TX_OK;
-               dev->trans_start = jiffies;
                lp->next_tx = txbuf;
        } else {
                retval = NETDEV_TX_BUSY;
index fa1a2354f5f99f78b8c45ffb3e4a2e07ca82fff6..705373a5308d9a6c0f540545e56715b95cff432b 100644 (file)
@@ -676,8 +676,6 @@ static netdev_tx_t ariadne_start_xmit(struct sk_buff *skb,
     lance->RAP = CSR0;         /* PCnet-ISA Controller Status */
     lance->RDP = INEA|TDMD;
 
-    dev->trans_start = jiffies;
-
     if (lowb(priv->tx_ring[(entry+1) % TX_RING_SIZE]->TMD1) != 0) {
        netif_stop_queue(dev);
        priv->tx_full = 1;
index a4b5b08276f8dcace12c45d00f4de592e593576f..8c496fb1ac9e5fc17108d9b14ba5ac489030740c 100644 (file)
@@ -469,7 +469,6 @@ am79c961_sendpacket(struct sk_buff *skb, struct net_device *dev)
 
        spin_lock_irqsave(&priv->chip_lock, flags);
        write_rreg (dev->base_addr, CSR0, CSR0_TDMD|CSR0_IENA);
-       dev->trans_start = jiffies;
        spin_unlock_irqrestore(&priv->chip_lock, flags);
 
        /*
index 0adab30f626b43c1595cc7c777438a82777b9dfc..e07b314ed8fdb0d90914da9271cc66bd18728035 100644 (file)
@@ -824,7 +824,6 @@ static int at91ether_start_xmit(struct sk_buff *skb, struct net_device *dev)
                /* Set length of the packet in the Transmit Control register */
                at91_emac_write(AT91_EMAC_TCR, skb->len);
 
-               dev->trans_start = jiffies;
        } else {
                printk(KERN_ERR "at91_ether.c: at91ether_start_xmit() called, but device is busy!\n");
                return NETDEV_TX_BUSY;  /* if we return anything but zero, dev.c:1055 calls kfree_skb(skb)
index 6995169d285ab10b71ede945c68451d6dc972f21..c5f6736b7d692fa3ae00536d340aeefaaa504d0e 100644 (file)
@@ -374,8 +374,6 @@ static int ep93xx_xmit(struct sk_buff *skb, struct net_device *dev)
                                skb->len, DMA_TO_DEVICE);
        dev_kfree_skb(skb);
 
-       dev->trans_start = jiffies;
-
        spin_lock_irq(&ep->tx_pending_lock);
        ep->tx_pending++;
        if (ep->tx_pending == TX_QUEUE_ENTRIES)
index e47c0d9628579f50fc51a6a1bb32a85a70c66147..b17ab5153f51e5aca038cb7a32c9bde62a0496e5 100644 (file)
@@ -736,7 +736,6 @@ ether1_sendpacket (struct sk_buff *skb, struct net_device *dev)
        local_irq_restore(flags);
 
        /* handle transmit */
-       dev->trans_start = jiffies;
 
        /* check to see if we have room for a full sized ether frame */
        tmp = priv(dev)->tx_head;
index d9de9bce23957ca66847cf7f847620ec94602580..1361b7367c28bd86f6bbd63ad3816186ec55eaf8 100644 (file)
@@ -529,7 +529,6 @@ ether3_sendpacket(struct sk_buff *skb, struct net_device *dev)
                return NETDEV_TX_BUSY;  /* unable to queue */
        }
 
-       dev->trans_start = jiffies;
        ptr              = 0x600 * priv(dev)->tx_head;
        priv(dev)->tx_head = next_ptr;
        next_ptr        *= 0x600;
index 7800d7dfd299fc7760b009b00a761dfa51fae185..24df0325090c8ae8075f09afcc3a60bb67ce972c 100644 (file)
@@ -708,7 +708,6 @@ static int eth_xmit(struct sk_buff *skb, struct net_device *dev)
        /* NPE firmware pads short frames with zeros internally */
        wmb();
        queue_put_desc(TX_QUEUE(port->id), tx_desc_phys(port, n), desc);
-       dev->trans_start = jiffies;
 
        if (qmgr_stat_below_low_watermark(txreadyq)) { /* empty */
 #if DEBUG_TX
index 6404704f7eac8d5c8d3b18da32eaeda8e8c6355b..54c6d849cf25683cf4d2831c2c7b5d50605ec452 100644 (file)
@@ -1302,8 +1302,6 @@ ks8695_start_xmit(struct sk_buff *skb, struct net_device *ndev)
        if (++ksp->tx_ring_used == MAX_TX_DESC)
                netif_stop_queue(ndev);
 
-       ndev->trans_start = jiffies;
-
        /* Kick the TX DMA in case it decided to go IDLE */
        ks8695_writereg(ksp, KS8695_DTSC, 0);
 
index 2491934b73e81bd052fddfcd16884681fecc1a3b..2e852463382b3e166db62dfde492ba7d5141dd78 100644 (file)
@@ -483,7 +483,7 @@ static void w90p910_reset_mac(struct net_device *dev)
 
        w90p910_init_desc(dev);
 
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        ether->cur_tx = 0x0;
        ether->finish_tx = 0x0;
        ether->cur_rx = 0x0;
@@ -497,7 +497,7 @@ static void w90p910_reset_mac(struct net_device *dev)
        w90p910_trigger_tx(dev);
        w90p910_trigger_rx(dev);
 
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
 
        if (netif_queue_stopped(dev))
                netif_wake_queue(dev);
@@ -634,8 +634,6 @@ static int w90p910_send_frame(struct net_device *dev,
 
        txbd = &ether->tdesc->desclist[ether->cur_tx];
 
-       dev->trans_start = jiffies;
-
        if (txbd->mode & TX_OWEN_DMA)
                netif_stop_queue(dev);
 
index 332f9806b78eb9d7ca2aba7236df637aba3c44a0..861f07a775fb29973222fc2184a663925dfb672c 100644 (file)
@@ -583,7 +583,7 @@ static void net_tx_timeout (struct net_device *dev)
        outb (0x00, ioaddr + TX_START);
        outb (0x03, ioaddr + COL16CNTL);
 
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
 
        lp->tx_started = 0;
        lp->tx_queue_ready = 1;
@@ -636,7 +636,6 @@ static netdev_tx_t net_send_packet (struct sk_buff *skb,
                outb (0x80 | lp->tx_queue, ioaddr + TX_START);
                lp->tx_queue = 0;
                lp->tx_queue_len = 0;
-               dev->trans_start = jiffies;
                lp->tx_started = 1;
                netif_start_queue (dev);
        } else if (lp->tx_queue_len < 4096 - 1502)
index a8686bfec7a18c7c7537308b73750635aef33628..b57d7dee389a6b43d87c6556962270b0a1fead22 100644 (file)
@@ -767,8 +767,8 @@ static void lance_tx_timeout (struct net_device *dev)
        /* lance_restart, essentially */
        lance_init_ring(dev);
        REGA( CSR0 ) = CSR0_INEA | CSR0_INIT | CSR0_STRT;
-       dev->trans_start = jiffies;
-       netif_wake_queue (dev);
+       dev->trans_start = jiffies; /* prevent tx timeout */
+       netif_wake_queue(dev);
 }
 
 /* XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX */
@@ -836,7 +836,6 @@ static int lance_start_xmit( struct sk_buff *skb, struct net_device *dev )
 
        /* Trigger an immediate send poll. */
        DREG = CSR0_INEA | CSR0_TDMD;
-       dev->trans_start = jiffies;
 
        if ((MEM->tx_head[(entry+1) & TX_RING_MOD_MASK].flag & TMD1_OWN) ==
                TMD1_OWN_HOST)
index fee9cf6a5bd4f82f4b5b530577a7bbc8733110a1..8da87383fb3938dc0fe8d9031ff3860a3f24ac97 100644 (file)
@@ -892,7 +892,6 @@ static netdev_tx_t atl2_xmit_frame(struct sk_buff *skb,
                (adapter->txd_write_ptr >> 2));
 
        mmiowb();
-       netdev->trans_start = jiffies;
        dev_kfree_skb_any(skb);
        return NETDEV_TX_OK;
 }
index 2bd1a5c0ec17cf0201949a4b92d4cd1535655b94..75ff0c59e9c71260d72dfdb47222d28767bce048 100644 (file)
@@ -547,7 +547,7 @@ static void tx_timeout(struct net_device *dev)
        dev->stats.tx_errors++;
        /* Try to restart the adapter. */
        hardware_init(dev);
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        netif_wake_queue(dev);
        dev->stats.tx_errors++;
 }
@@ -586,7 +586,6 @@ static netdev_tx_t atp_send_packet(struct sk_buff *skb,
        write_reg(ioaddr, IMR, ISR_RxOK | ISR_TxErr | ISR_TxOK);
        write_reg_high(ioaddr, IMR, ISRh_RxErr);
 
-       dev->trans_start = jiffies;
        dev_kfree_skb (skb);
        return NETDEV_TX_OK;
 }
index 7abb2c84ba5ddf38082f38c7c85048fa8c63ac98..ece6128bef146aa330f98f486d23f2bed1c15ed5 100644 (file)
@@ -924,7 +924,6 @@ static netdev_tx_t au1000_tx(struct sk_buff *skb, struct net_device *dev)
        au_sync();
        dev_kfree_skb(skb);
        aup->tx_head = (aup->tx_head + 1) & (NUM_TX_DMA - 1);
-       dev->trans_start = jiffies;
        return NETDEV_TX_OK;
 }
 
@@ -937,7 +936,7 @@ static void au1000_tx_timeout(struct net_device *dev)
        netdev_err(dev, "au1000_tx_timeout: dev=%p\n", dev);
        au1000_reset_mac(dev);
        au1000_init(dev);
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        netif_wake_queue(dev);
 }
 
index 458272196997a3891153a99f70427b723a6dc8c3..293f9c16e7860b87944812c104a50804245326fe 100644 (file)
@@ -1014,8 +1014,6 @@ static netdev_tx_t b44_start_xmit(struct sk_buff *skb, struct net_device *dev)
        if (TX_BUFFS_AVAIL(bp) < 1)
                netif_stop_queue(dev);
 
-       dev->trans_start = jiffies;
-
 out_unlock:
        spin_unlock_irqrestore(&bp->lock, flags);
 
index f48ba80025a26c5ac5061125f421e83ad6040d65..faf5add894d7788ebb8b1621951f164d772505d8 100644 (file)
@@ -565,7 +565,6 @@ static int bcm_enet_start_xmit(struct sk_buff *skb, struct net_device *dev)
 
        priv->stats.tx_bytes += skb->len;
        priv->stats.tx_packets++;
-       dev->trans_start = jiffies;
        ret = NETDEV_TX_OK;
 
 out_unlock:
index c488cea8f455fe118342c01c8c89f6764fce8f3c..b0207f01eb6b1eb28f89234d086944e13b02fe7d 100644 (file)
@@ -654,7 +654,6 @@ static int bfin_mac_hard_start_xmit(struct sk_buff *skb,
 out:
        adjust_tx_list();
        current_tx_ptr = current_tx_ptr->next;
-       dev->trans_start = jiffies;
        dev->stats.tx_packets++;
        dev->stats.tx_bytes += (skb->len);
        return NETDEV_TX_OK;
@@ -805,7 +804,7 @@ static void bfin_mac_timeout(struct net_device *dev)
        bfin_mac_enable();
 
        /* We can accept TX packets again */
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        netif_wake_queue(dev);
 }
 
index 5f983487d6e4aa2ba0ce5abf8be0779343e7c9ec..2d8bd86bc5e2072bf66d4966d5042869044fb0b9 100644 (file)
@@ -375,7 +375,6 @@ static netdev_tx_t at91_start_xmit(struct sk_buff *skb, struct net_device *dev)
        at91_write(priv, AT91_MCR(mb), reg_mcr);
 
        stats->tx_bytes += cf->can_dlc;
-       dev->trans_start = jiffies;
 
        /* _NOTE_: substract AT91_MB_TX_FIRST offset from mb! */
        can_put_echo_skb(skb, dev, mb - AT91_MB_TX_FIRST);
index d77264ad326d041d083a09dbe8664f903073f6f7..b6e890d28366c68bf2ae078b4a73f688dfe75962 100644 (file)
@@ -269,8 +269,6 @@ static int bfin_can_start_xmit(struct sk_buff *skb, struct net_device *dev)
        /* fill data length code */
        bfin_write16(&reg->chl[TRANSMIT_CHL].dlc, dlc);
 
-       dev->trans_start = jiffies;
-
        can_put_echo_skb(skb, dev, 0);
 
        /* set transmit request */
index 8431eb08075d84d0778dbb378b3db4ffec879767..b11a0cb5ed81eb9ffabaa067dcdc544edabadc22 100644 (file)
@@ -475,7 +475,6 @@ static netdev_tx_t mcp251x_hard_start_xmit(struct sk_buff *skb,
 
        netif_stop_queue(net);
        priv->tx_skb = skb;
-       net->trans_start = jiffies;
        queue_work(priv->wq, &priv->tx_work);
 
        return NETDEV_TX_OK;
index 618c11222abc1537466e6f62c9d41036da7d721b..24b58619f7c1121b35b941aab3a0b74c9a2640b2 100644 (file)
@@ -292,8 +292,6 @@ static netdev_tx_t sja1000_start_xmit(struct sk_buff *skb,
        for (i = 0; i < dlc; i++)
                priv->write_reg(priv, dreg++, cf->data[i]);
 
-       dev->trans_start = jiffies;
-
        can_put_echo_skb(skb, dev, 0);
 
        priv->write_reg(priv, REG_CMR, CMD_TR);
index bd857a20a7556af536ca3b8dbd07446e9a9d15b7..6d76236ea069f1640e44c6028631222036f65c3a 100644 (file)
@@ -2889,7 +2889,6 @@ static netdev_tx_t cas_start_xmit(struct sk_buff *skb, struct net_device *dev)
         */
        if (cas_xmit_tx_ringN(cp, ring++ & N_TX_RINGS_MASK, skb))
                return NETDEV_TX_BUSY;
-       dev->trans_start = jiffies;
        return NETDEV_TX_OK;
 }
 
index bdfff784645cc6bfc7dae94a8351426f7e05033d..3c58db5952852ad5319741c7135e452e2ad086a0 100644 (file)
@@ -579,7 +579,6 @@ static int cpmac_start_xmit(struct sk_buff *skb, struct net_device *dev)
        }
 
        spin_lock(&priv->lock);
-       dev->trans_start = jiffies;
        spin_unlock(&priv->lock);
        desc->dataflags = CPMAC_SOP | CPMAC_EOP | CPMAC_OWN;
        desc->skb = skb;
index f49ad8ed9b0732a4f8424ac88b5c0d321040ebba..7e00027b9f8e8fbaf395f18f30d1ee059a87234f 100644 (file)
@@ -1108,7 +1108,7 @@ e100_send_packet(struct sk_buff *skb, struct net_device *dev)
 
        myNextTxDesc->skb = skb;
 
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* NETIF_F_LLTX driver :( */
 
        e100_hardware_send_packet(np, buf, skb->len);
 
index 4c38491b8efb02584e9e543a650494641bbd2692..2281ebcb400bb83038d6207328e352ec019bd5ef 100644 (file)
@@ -1554,7 +1554,6 @@ static netdev_tx_t net_send_packet(struct sk_buff *skb,struct net_device *dev)
        writewords(dev->base_addr, TX_FRAME_PORT,skb->data,(skb->len+1) >>1);
        spin_unlock_irqrestore(&lp->lock, flags);
        lp->stats.tx_bytes += skb->len;
-       dev->trans_start = jiffies;
        dev_kfree_skb (skb);
 
        /*
index 1f9df5c6a75aa67ae42f100f14029a6f5ad451e6..08e82b1a0b336219279738984c8511c0fbe50c4e 100644 (file)
@@ -1468,7 +1468,6 @@ static int emac_dev_xmit(struct sk_buff *skb, struct net_device *ndev)
        tx_buf.length = skb->len;
        tx_buf.buf_token = (void *)skb;
        tx_buf.data_ptr = skb->data;
-       ndev->trans_start = jiffies;
        ret_code = emac_send(priv, &tx_packet, EMAC_DEF_TX_CH);
        if (unlikely(ret_code != 0)) {
                if (ret_code == EMAC_ERR_TX_OUT_OF_BD) {
index 6b13f4fd2e9635b29327222f4083482aae05dc07..23a65398d0115d5c879da96fe59c56bfa7339046 100644 (file)
@@ -166,8 +166,8 @@ static int de600_start_xmit(struct sk_buff *skb, struct net_device *dev)
        int     i;
 
        if (free_tx_pages <= 0) {       /* Do timeouts, to avoid hangs. */
-               tickssofar = jiffies - dev->trans_start;
-               if (tickssofar < 5)
+               tickssofar = jiffies - dev_trans_start(dev);
+               if (tickssofar < HZ/20)
                        return NETDEV_TX_BUSY;
                /* else */
                printk(KERN_WARNING "%s: transmit timed out (%d), %s?\n", dev->name, tickssofar, "network cable problem");
index a0a6830b5e6de3a486106689bdf2995d99fe03cb..f3650fd096f4fd9e62b84966adee3a9615c723c3 100644 (file)
@@ -535,7 +535,6 @@ static int de620_start_xmit(struct sk_buff *skb, struct net_device *dev)
        }
        de620_write_block(dev, buffer, skb->len, len-skb->len);
 
-       dev->trans_start = jiffies;
        if(!(using_txbuf == (TXBF0 | TXBF1)))
                netif_wake_queue(dev);
 
index fb3f0984c289eb85542bbd66163d47020c01d00a..74abe195212cdcdc97d40f60ba1a350a9801eb58 100644 (file)
@@ -874,7 +874,7 @@ static inline int lance_reset(struct net_device *dev)
 
        lance_init_ring(dev);
        load_csrs(lp);
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        status = init_restart_lance(lp);
        return status;
 }
@@ -930,7 +930,6 @@ static int lance_start_xmit(struct sk_buff *skb, struct net_device *dev)
 
        spin_unlock_irqrestore(&lp->lock, flags);
 
-       dev->trans_start = jiffies;
        dev_kfree_skb(skb);
 
        return NETDEV_TX_OK;
index a88300a0d1e8abfa25374ad2199975a6597d088e..38d4d9eefbdd2d76be6bfe13e26d4c5daabf5f1c 100644 (file)
@@ -921,7 +921,7 @@ static void depca_tx_timeout(struct net_device *dev)
        STOP_DEPCA;
        depca_init_ring(dev);
        LoadCSRs(dev);
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        netif_wake_queue(dev);
        InitRestartDepca(dev);
 }
@@ -954,7 +954,6 @@ static netdev_tx_t depca_start_xmit(struct sk_buff *skb,
                        outw(CSR0, DEPCA_ADDR);
                        outw(INEA | TDMD, DEPCA_DATA);
 
-                       dev->trans_start = jiffies;
                        dev_kfree_skb(skb);
                }
                if (TX_BUFFS_AVAIL)
index a818ea998bbe1110fc6760173f81ba18758fc683..254b6f724c60afb052df4c2c0d5e3bac970035f8 100644 (file)
@@ -769,7 +769,7 @@ dm9000_hash_table(struct net_device *dev)
 }
 
 /*
- * Initilize dm9000 board
+ * Initialize dm9000 board
  */
 static void
 dm9000_init_dm9000(struct net_device *dev)
@@ -825,7 +825,7 @@ dm9000_init_dm9000(struct net_device *dev)
        /* Init Driver variable */
        db->tx_pkt_cnt = 0;
        db->queue_pkt_len = 0;
-       dev->trans_start = 0;
+       dev->trans_start = jiffies;
 }
 
 /* Our watchdog timed out. Called by the networking layer */
@@ -843,7 +843,7 @@ static void dm9000_timeout(struct net_device *dev)
        dm9000_reset(db);
        dm9000_init_dm9000(dev);
        /* We can accept TX packets again */
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        netif_wake_queue(dev);
 
        /* Restore previous register address */
index d51a83e69585e6cc9166ce5d50d1af461e8ce3f6..8b0f50bbf3e5cd13bfa4b240387071b3d2a939c9 100644 (file)
@@ -594,8 +594,6 @@ static netdev_tx_t dnet_start_xmit(struct sk_buff *skb, struct net_device *dev)
 
        spin_unlock_irqrestore(&bp->lock, flags);
 
-       dev->trans_start = jiffies;
-
        return NETDEV_TX_OK;
 }
 
index ef97bfcef9dd70386dae81d2066d84774b3fc6dd..b194bad29ace251c2f33bfe5d9845ca571af352a 100644 (file)
@@ -1764,7 +1764,6 @@ static netdev_tx_t e100_xmit_frame(struct sk_buff *skb,
                return NETDEV_TX_BUSY;
        }
 
-       netdev->trans_start = jiffies;
        return NETDEV_TX_OK;
 }
 
index eed65d821e4714c88d00cf9fb4420e25a348953a..8d97f168f018734bcaeb1af1372b77ba9fca2eef 100644 (file)
@@ -1161,8 +1161,7 @@ static netdev_tx_t eepro_send_packet(struct sk_buff *skb,
                        /* we won't wake queue here because we're out of space */
                        dev->stats.tx_dropped++;
                else {
-               dev->stats.tx_bytes+=skb->len;
-               dev->trans_start = jiffies;
+                       dev->stats.tx_bytes+=skb->len;
                        netif_wake_queue(dev);
                }
 
index c31dd0685553ae13636c74854dcaa290a6f7fc87..43c9c9c5cf4cd8909abf73ffe9ec4cb43b3fe3ac 100644 (file)
@@ -543,7 +543,7 @@ static void unstick_cu(struct net_device *dev)
 
        if (lp->started)
        {
-               if (time_after(jiffies, dev->trans_start + 50))
+               if (time_after(jiffies, dev_trans_start(dev) + HZ/2))
                {
                        if (lp->tx_link==lp->last_tx_restart)
                        {
@@ -1018,7 +1018,7 @@ static void eexp_hw_tx_pio(struct net_device *dev, unsigned short *buf,
        outw(lp->tx_head+0x16, ioaddr + DATAPORT);
        outw(0, ioaddr + DATAPORT);
 
-        outsw(ioaddr + DATAPORT, buf, (len+1)>>1);
+       outsw(ioaddr + DATAPORT, buf, (len+1)>>1);
 
        outw(lp->tx_tail+0xc, ioaddr + WRITE_PTR);
        outw(lp->tx_head, ioaddr + DATAPORT);
index 39774817c3ebf4a9342f355d9589cf21fb515cd8..33a41e29ec834d18bb93bff948083d5862e3721e 100644 (file)
@@ -2241,7 +2241,7 @@ static int ehea_start_xmit(struct sk_buff *skb, struct net_device *dev)
                }
                spin_unlock_irqrestore(&pr->netif_queue, flags);
        }
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* NETIF_F_LLTX driver :( */
        spin_unlock(&pr->xmit_lock);
 
        return NETDEV_TX_OK;
index ff27f728fd9db290132db8f6a0a91952a1962079..112c5aa9af7f84f353156929671b0456e2796715 100644 (file)
@@ -1293,8 +1293,6 @@ static netdev_tx_t enc28j60_send_packet(struct sk_buff *skb,
         */
        netif_stop_queue(dev);
 
-       /* save the timestamp */
-       priv->netdev->trans_start = jiffies;
        /* Remember the skb for deferred processing */
        priv->tx_skb = skb;
        schedule_work(&priv->tx_work);
index 8b5a203d3aa2cf0b4cd127be67941ec20fada45b..a48da2dc907fe997e4cc4a827b82554f1a91684f 100644 (file)
@@ -908,7 +908,7 @@ static void epic_tx_timeout(struct net_device *dev)
                outl(TxQueued, dev->base_addr + COMMAND);
        }
 
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        ep->stats.tx_errors++;
        if (!ep->tx_full)
                netif_wake_queue(dev);
@@ -1006,7 +1006,6 @@ static netdev_tx_t epic_start_xmit(struct sk_buff *skb, struct net_device *dev)
        /* Trigger an immediate transmit demand. */
        outl(TxQueued, dev->base_addr + COMMAND);
 
-       dev->trans_start = jiffies;
        if (debug > 4)
                printk(KERN_DEBUG "%s: Queued Tx packet size %d to slot %d, "
                           "flag %2.2x Tx status %8.8x.\n",
index d4e24f08b3ba3bb0c51d925109cd0ffc88964b1c..874973f558e92ee1b7ddc4fba185aecdc49f127a 100644 (file)
@@ -1027,7 +1027,7 @@ static void eth16i_timeout(struct net_device *dev)
        inw(ioaddr + TX_STATUS_REG),  (inb(ioaddr + TX_STATUS_REG) & TX_DONE) ?
                       "IRQ conflict" : "network cable problem");
 
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
 
        /* Let's dump all registers */
        if(eth16i_debug > 0) {
@@ -1047,7 +1047,7 @@ static void eth16i_timeout(struct net_device *dev)
        }
        dev->stats.tx_errors++;
        eth16i_reset(dev);
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        outw(ETH16I_INTR_ON, ioaddr + TX_INTR_REG);
        netif_wake_queue(dev);
 }
@@ -1109,7 +1109,6 @@ static netdev_tx_t eth16i_tx(struct sk_buff *skb, struct net_device *dev)
                outb(TX_START | lp->tx_queue, ioaddr + TRANSMIT_START_REG);
                lp->tx_queue = 0;
                lp->tx_queue_len = 0;
-               dev->trans_start = jiffies;
                lp->tx_started = 1;
                netif_wake_queue(dev);
        }
index ad1bc7317df655bce75691dc138927f50e2af6d6..14cbde5cf68e52546d0b2f4c0e42f26fa95b89f5 100644 (file)
@@ -851,7 +851,6 @@ static netdev_tx_t ethoc_start_xmit(struct sk_buff *skb, struct net_device *dev)
                netif_stop_queue(dev);
        }
 
-       dev->trans_start = jiffies;
        spin_unlock_irq(&priv->lock);
 out:
        dev_kfree_skb(skb);
index 11ba70f49971d63c85a64cd325a076c6f7df29ab..99eb56be093f5ff368183a12b8b85e14f5b93f81 100644 (file)
@@ -757,7 +757,7 @@ static void ewrk3_timeout(struct net_device *dev)
                 */
                ENABLE_IRQs;
 
-               dev->trans_start = jiffies;
+               dev->trans_start = jiffies; /* prevent tx timeout */
                netif_wake_queue(dev);
        }
 }
@@ -862,7 +862,6 @@ static netdev_tx_t ewrk3_queue_pkt(struct sk_buff *skb, struct net_device *dev)
        spin_unlock_irq (&lp->hw_lock);
 
        dev->stats.tx_bytes += skb->len;
-       dev->trans_start = jiffies;
        dev_kfree_skb (skb);
 
        /* Check for free resources: stop Tx queue if there are none */
index 51b738dd65475bb604362cc7d759455f696f12d8..15f4f8d3d46d9e24396f783d79a027f97d90c246 100644 (file)
@@ -1233,7 +1233,7 @@ static void fealnx_tx_timeout(struct net_device *dev)
 
        spin_unlock_irqrestore(&np->lock, flags);
 
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        np->stats.tx_errors++;
        netif_wake_queue(dev); /* or .._start_.. ?? */
 }
@@ -1374,7 +1374,6 @@ static netdev_tx_t start_tx(struct sk_buff *skb, struct net_device *dev)
                netif_stop_queue(dev);
        ++np->really_tx_count;
        iowrite32(0, np->mem + TXPDR);
-       dev->trans_start = jiffies;
 
        spin_unlock_irqrestore(&np->lock, flags);
        return NETDEV_TX_OK;
index 2b1651aee13f51c402f8da32fe5e8af76cd184af..47da5195780397c2e293e69643391381fe433bef 100644 (file)
@@ -275,8 +275,6 @@ fec_enet_start_xmit(struct sk_buff *skb, struct net_device *dev)
                        | BD_ENET_TX_LAST | BD_ENET_TX_TC);
        bdp->cbd_sc = status;
 
-       dev->trans_start = jiffies;
-
        /* Trigger transmission start */
        writel(0, fep->hwp + FEC_X_DES_ACTIVE);
 
index 0376c3e472a795cff28dd413dde361293c598403..221f440c10f4b59c49232283dae0fbbd48920856 100644 (file)
@@ -327,7 +327,6 @@ static int mpc52xx_fec_start_xmit(struct sk_buff *skb, struct net_device *dev)
        }
 
        spin_lock_irqsave(&priv->lock, flags);
-       dev->trans_start = jiffies;
 
        bd = (struct bcom_fec_bd *)
                bcom_prepare_next_buffer(priv->tx_dmatsk);
index e282d0ae6a3dcb14b80db8fdd80f674c92091b6d..268ea4d566d732b1fd0705898d82dd854eb8be8f 100644 (file)
@@ -2214,7 +2214,6 @@ static netdev_tx_t nv_start_xmit(struct sk_buff *skb, struct net_device *dev)
                dprintk("\n");
        }
 
-       dev->trans_start = jiffies;
        writel(NVREG_TXRXCTL_KICK|np->txrxctl_bits, get_hwbase(dev) + NvRegTxRxControl);
        return NETDEV_TX_OK;
 }
@@ -2369,7 +2368,6 @@ static netdev_tx_t nv_start_xmit_optimized(struct sk_buff *skb,
                dprintk("\n");
        }
 
-       dev->trans_start = jiffies;
        writel(NVREG_TXRXCTL_KICK|np->txrxctl_bits, get_hwbase(dev) + NvRegTxRxControl);
        return NETDEV_TX_OK;
 }
index 0770e2f6da6bb28ec73e33d8aa8c57e178e757e0..0fb0fefcb7874f5ba159be21a73db0fb3d710523 100644 (file)
@@ -674,8 +674,6 @@ static int fs_enet_start_xmit(struct sk_buff *skb, struct net_device *dev)
                                skb->data, skb->len, DMA_TO_DEVICE));
        CBDW_DATLEN(bdp, skb->len);
 
-       dev->trans_start = jiffies;
-
        /*
         * If this was the last BD in the ring, start at the beginning again.
         */
index 5267c27e317413f286fcb82b68908e229c0963b0..11d8cae415e543d79376636fa29ad0f88debf17c 100644 (file)
@@ -1738,7 +1738,7 @@ void gfar_start(struct net_device *dev)
                gfar_write(&regs->imask, IMASK_DEFAULT);
        }
 
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
 }
 
 void gfar_configure_coalescing(struct gfar_private *priv,
@@ -2161,8 +2161,6 @@ static int gfar_start_xmit(struct sk_buff *skb, struct net_device *dev)
        /* reduce TxBD free count */
        tx_queue->num_txbdfree -= (nr_txbds);
 
-       dev->trans_start = jiffies;
-
        /* If the next BD still needs to be cleaned up, then the bds
           are full.  We need to tell the kernel to stop sending us stuff. */
        if (!tx_queue->num_txbdfree) {
index 0f3f6c2e6942fee3293e0f3db516f45998e66b07..68e5ac8832ad0b8a1678fb50e38d996fbd684524 100644 (file)
@@ -1102,7 +1102,7 @@ static int hp100_open(struct net_device *dev)
                return -EAGAIN;
        }
 
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        netif_start_queue(dev);
 
        lp->lan_type = hp100_sense_lan(dev);
@@ -1510,7 +1510,7 @@ static netdev_tx_t hp100_start_xmit_bm(struct sk_buff *skb,
                printk("hp100: %s: start_xmit_bm: No TX PDL available.\n", dev->name);
 #endif
                /* not waited long enough since last tx? */
-               if (time_before(jiffies, dev->trans_start + HZ))
+               if (time_before(jiffies, dev_trans_start(dev) + HZ))
                        goto drop;
 
                if (hp100_check_lan(dev))
@@ -1547,7 +1547,6 @@ static netdev_tx_t hp100_start_xmit_bm(struct sk_buff *skb,
                        }
                }
 
-               dev->trans_start = jiffies;
                goto drop;
        }
 
@@ -1585,7 +1584,6 @@ static netdev_tx_t hp100_start_xmit_bm(struct sk_buff *skb,
        /* Update statistics */
        lp->stats.tx_packets++;
        lp->stats.tx_bytes += skb->len;
-       dev->trans_start = jiffies;
 
        return NETDEV_TX_OK;
 
@@ -1663,7 +1661,7 @@ static netdev_tx_t hp100_start_xmit(struct sk_buff *skb,
                printk("hp100: %s: start_xmit: tx free mem = 0x%x\n", dev->name, i);
 #endif
                /* not waited long enough since last failed tx try? */
-               if (time_before(jiffies, dev->trans_start + HZ)) {
+               if (time_before(jiffies, dev_trans_start(dev) + HZ)) {
 #ifdef HP100_DEBUG
                        printk("hp100: %s: trans_start timing problem\n",
                               dev->name);
@@ -1701,7 +1699,6 @@ static netdev_tx_t hp100_start_xmit(struct sk_buff *skb,
                                mdelay(1);
                        }
                }
-               dev->trans_start = jiffies;
                goto drop;
        }
 
@@ -1745,7 +1742,6 @@ static netdev_tx_t hp100_start_xmit(struct sk_buff *skb,
 
        lp->stats.tx_packets++;
        lp->stats.tx_bytes += skb->len;
-       dev->trans_start = jiffies;
        hp100_ints_on();
        spin_unlock_irqrestore(&lp->lock, flags);
 
index 0d2c3ac2005e99b79a23a6a102a541b161af8e25..092fb9d766932bcc3b481636fbc931ac9710d77f 100644 (file)
@@ -957,7 +957,7 @@ static netdev_tx_t ibmveth_start_xmit(struct sk_buff *skb,
        } else {
                tx_packets++;
                tx_bytes += skb->len;
-               netdev->trans_start = jiffies;
+               netdev->trans_start = jiffies; /* NETIF_F_LLTX driver :( */
        }
 
        if (!used_bounce)
index f4081c0a2d9c1bd8c2f4b9609b6a7d0bfd6996ca..ab9f675c5b8b8b86473d07b60b3ad933523b3ab5 100644 (file)
@@ -182,7 +182,6 @@ static netdev_tx_t ifb_xmit(struct sk_buff *skb, struct net_device *dev)
                netif_stop_queue(dev);
        }
 
-       dev->trans_start = jiffies;
        skb_queue_tail(&dp->rq, skb);
        if (!dp->tasklet_pending) {
                dp->tasklet_pending = 1;
index 091ea3377ed030040fe577fcc0beb26967fa655a..e3b5e949060136a619bee08d429a1a7e10c4ef2e 100644 (file)
@@ -1503,7 +1503,6 @@ static int ioc3_start_xmit(struct sk_buff *skb, struct net_device *dev)
 
        BARRIER();
 
-       dev->trans_start = jiffies;
        ip->tx_skbs[produce] = skb;                     /* Remember skb */
        produce = (produce + 1) & 127;
        ip->tx_pi = produce;
index b5cbd39d068558b6ee5c7ac544e1350889427751..a3d696a9456a10a9d4f659cc70ad1982f2a7e58d 100644 (file)
@@ -546,7 +546,6 @@ static int au1k_irda_hard_xmit(struct sk_buff *skb, struct net_device *dev)
 
        dev_kfree_skb(skb);
        aup->tx_head = (aup->tx_head + 1) & (NUM_IR_DESC - 1);
-       dev->trans_start = jiffies;
        return NETDEV_TX_OK;
 }
 
index b7e6625ca75e35a34b1f2907ed040de0eb0591ce..48bd5ec9f29b34edafeeda78d08fafba543376e5 100644 (file)
@@ -1002,8 +1002,6 @@ toshoboe_hard_xmit (struct sk_buff *skb, struct net_device *dev)
 
   toshoboe_checkstuck (self);
 
-  dev->trans_start = jiffies;
-
  /* Check if we need to change the speed */
   /* But not now. Wait after transmission if mtt not required */
   speed=irda_get_next_speed(skb);
index 1a54f6bb68c5066612af0125c358abcf9285ccdc..c192c31e4c5c3792a2113afac14b28ca8748c1c0 100644 (file)
@@ -556,7 +556,6 @@ static int pxa_irda_hard_xmit(struct sk_buff *skb, struct net_device *dev)
        }
 
        dev_kfree_skb(skb);
-       dev->trans_start = jiffies;
        return NETDEV_TX_OK;
 }
 
index 1dcdce0631aa9439815047628ed30547072f2dc3..da2705061a60fd2bac8c4ff60d2328995c46fb46 100644 (file)
@@ -715,8 +715,6 @@ static int sa1100_irda_hard_xmit(struct sk_buff *skb, struct net_device *dev)
                Ser2HSCR0 = si->hscr0 | HSCR0_HSSP | HSCR0_TXE;
        }
 
-       dev->trans_start = jiffies;
-
        return NETDEV_TX_OK;
 }
 
index de91cd14016be75de37513939d018d8b35df806e..1b051dab7b298a761a5d9e4f2ff38af16f062238 100644 (file)
@@ -655,7 +655,6 @@ static netdev_tx_t sirdev_hard_xmit(struct sk_buff *skb,
 
        if (likely(actual > 0)) {
                dev->tx_skb = skb;
-               ndev->trans_start = jiffies;
                dev->tx_buff.data += actual;
                dev->tx_buff.len -= actual;
        }
index 6af84d88cd03c960237927ee71752a06c087de60..35e4e44040a2097d3643ea28d79a8ecec993c50a 100644 (file)
@@ -868,7 +868,7 @@ static void smsc_ircc_timeout(struct net_device *dev)
        spin_lock_irqsave(&self->lock, flags);
        smsc_ircc_sir_start(self);
        smsc_ircc_change_speed(self, self->io.speed);
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        netif_wake_queue(dev);
        spin_unlock_irqrestore(&self->lock, flags);
 }
index e14505272870c545bdc6f6c25f5003c05285970e..c3d07382b7fa48c84846be41a7c30c0596af2b90 100644 (file)
@@ -1037,7 +1037,6 @@ static netdev_tx_t vlsi_hard_start_xmit(struct sk_buff *skb,
                wmb();
                outw(0, iobase+VLSI_PIO_PROMPT);
        }
-       ndev->trans_start = jiffies;
 
        if (ring_put(r) == NULL) {
                netif_stop_queue(ndev);
index cb0cb758be64a23e5eae893b296bc2d642451975..1f9c3f08d1a3c0f35f6318daa2d5c992fc9025b3 100644 (file)
@@ -515,7 +515,6 @@ static netdev_tx_t w83977af_hard_xmit(struct sk_buff *skb,
                /* Check for empty frame */
                if (!skb->len) {
                        w83977af_change_speed(self, speed); 
-                       dev->trans_start = jiffies;
                        dev_kfree_skb(skb);
                        return NETDEV_TX_OK;
                } else
@@ -549,7 +548,6 @@ static netdev_tx_t w83977af_hard_xmit(struct sk_buff *skb,
                switch_bank(iobase, SET0);
                outb(ICR_ETXTHI, iobase+ICR);
        }
-       dev->trans_start = jiffies;
        dev_kfree_skb(skb);
 
        /* Restore set register */
index 460c37fee965306301bc22cff34cc704d3a15c67..40f47b8fe4173770a439641b3725241e65e20ebe 100644 (file)
@@ -3184,8 +3184,6 @@ static int ixgbevf_xmit_frame(struct sk_buff *skb, struct net_device *netdev)
                         ixgbevf_tx_map(adapter, tx_ring, skb, tx_flags, first),
                         skb->len, hdr_len);
 
-       netdev->trans_start = jiffies;
-
        ixgbevf_maybe_stop_tx(netdev, tx_ring, DESC_NEEDED);
 
        return NETDEV_TX_OK;
index d5932ca3e27db3700c84f19e9518edf447f71250..78ddd8b79e7ea67551d9f683dcf690893d869a5e 100644 (file)
@@ -64,8 +64,6 @@ static int ixpdev_xmit(struct sk_buff *skb, struct net_device *dev)
        ixp2000_reg_write(RING_TX_PENDING,
                TX_BUF_DESC_BASE + (entry * sizeof(struct ixpdev_tx_desc)));
 
-       dev->trans_start = jiffies;
-
        local_irq_save(flags);
        ip->tx_queue_entries++;
        if (ip->tx_queue_entries == TX_BUF_COUNT_PER_CHAN)
index 7b9447646f8a0c437fba01f007b5f090948c457d..21f8adaa87c164c8b2f604bf75937f5a072fb773 100644 (file)
@@ -945,7 +945,7 @@ static void lance_tx_timeout (struct net_device *dev)
 #endif
        lance_restart (dev, 0x0043, 1);
 
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        netif_wake_queue (dev);
 }
 
@@ -1011,8 +1011,6 @@ static netdev_tx_t lance_start_xmit(struct sk_buff *skb,
        outw(0x0000, ioaddr+LANCE_ADDR);
        outw(0x0048, ioaddr+LANCE_DATA);
 
-       dev->trans_start = jiffies;
-
        if ((lp->cur_tx - lp->dirty_tx) >= TX_RING_SIZE)
                netif_stop_queue(dev);
 
index 61c38ab4c2474c663199b6f2d8dba7f31e4e1cf9..de856d8abc90fab268b2301c176906e63788ce59 100644 (file)
@@ -963,7 +963,7 @@ static void i596_tx_timeout (struct net_device *dev)
                lp->last_restart = dev->stats.tx_packets;
        }
 
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        netif_wake_queue (dev);
 }
 
@@ -974,7 +974,6 @@ static int i596_start_xmit(struct sk_buff *skb, struct net_device *dev)
        struct tx_cmd *tx_cmd;
        struct i596_tbd *tbd;
        short length = skb->len;
-       dev->trans_start = jiffies;
 
        DEB(DEB_STARTTX, printk(KERN_DEBUG
                                "%s: i596_start_xmit(%x,%p) called\n",
index 770b606a9e3a6f034bc1930c13bc9d98f99fa8f0..64d51d627d8dc4a3f3403848ed7e3358bd59f38f 100644 (file)
@@ -257,7 +257,7 @@ static void __ei_tx_timeout(struct net_device *dev)
 {
        unsigned long e8390_base = dev->base_addr;
        struct ei_device *ei_local = (struct ei_device *) netdev_priv(dev);
-       int txsr, isr, tickssofar = jiffies - dev->trans_start;
+       int txsr, isr, tickssofar = jiffies - dev_trans_start(dev);
        unsigned long flags;
 
        dev->stats.tx_errors++;
@@ -386,7 +386,6 @@ static netdev_tx_t __ei_start_xmit(struct sk_buff *skb,
        {
                ei_local->txing = 1;
                NS8390_trigger_send(dev, send_length, output_page);
-               dev->trans_start = jiffies;
                if (output_page == ei_local->tx_start_page)
                {
                        ei_local->tx1 = -1;
index 78c9a2e6e51ec4b8b392de19a3262436f13eaee7..b59b24d667f0a0a4d9b3f823961506465a191b44 100644 (file)
@@ -527,7 +527,7 @@ static void temac_device_reset(struct net_device *ndev)
                dev_err(&ndev->dev, "Error setting TEMAC options\n");
 
        /* Init Driver variable */
-       ndev->trans_start = 0;
+       ndev->trans_start = jiffies; /* prevent tx timeout */
 }
 
 void temac_adjust_link(struct net_device *ndev)
index 72379c5439dc11ca6f192d6217f3afa09c9c7ebc..3df046a58b1d484c11625e984b1a8b5b0420c327 100644 (file)
@@ -875,8 +875,6 @@ static netdev_tx_t i596_start_xmit (struct sk_buff *skb, struct net_device *dev)
                length = ETH_ZLEN;
        }
 
-       dev->trans_start = jiffies;
-
        tx_cmd = kmalloc((sizeof (struct tx_cmd) + sizeof (struct i596_tbd)), GFP_ATOMIC);
        if (tx_cmd == NULL) {
                printk(KERN_WARNING "%s: i596_xmit Memory squeeze, dropping packet.\n", dev->name);
index c0876e915eed7afe6adf84df917bf426a497707b..69fa4ef64dd24d99f6b7981735578d1f7aae65c5 100644 (file)
@@ -408,7 +408,6 @@ net_send_packet(struct sk_buff *skb, struct net_device *dev)
                                  skb->len+1);
 
        local_irq_restore(flags);
-       dev->trans_start = jiffies;
        dev_kfree_skb (skb);
 
        return NETDEV_TX_OK;
index cf7debc865b3919457d45c42605c3fa92a7d8f73..40797fbdca9f774798668dba14381a96f9b68511 100644 (file)
@@ -666,8 +666,6 @@ static int macb_start_xmit(struct sk_buff *skb, struct net_device *dev)
 
        spin_unlock_irqrestore(&bp->lock, flags);
 
-       dev->trans_start = jiffies;
-
        return NETDEV_TX_OK;
 }
 
index a6e19fc8a80a786a37ffb34ec0eccc38ad38ed10..c685a4656878c7793e222e448eab39c75dc93c5f 100644 (file)
@@ -488,7 +488,6 @@ static int mace_xmit_start(struct sk_buff *skb, struct net_device *dev)
 
        dev_kfree_skb(skb);
 
-       dev->trans_start = jiffies;
        return NETDEV_TX_OK;
 }
 
index 9f72cb45f4af65933b41b5ec5951032fd5ad6a09..16a35944c2daaa2372c725f1de9a015103e65594 100644 (file)
@@ -746,7 +746,7 @@ static void meth_tx_timeout(struct net_device *dev)
        /* Enable interrupt */
        spin_unlock_irqrestore(&priv->meth_lock, flags);
 
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        netif_wake_queue(dev);
 
        return;
index 4ee9d04f6599171e8b4165ef81635c62902eeee9..1f724e53c7285a6d7ae2c3af9cb543d76402d4bb 100644 (file)
@@ -882,7 +882,6 @@ static netdev_tx_t mv643xx_eth_xmit(struct sk_buff *skb, struct net_device *dev)
 
                txq->tx_bytes += skb->len;
                txq->tx_packets++;
-               dev->trans_start = jiffies;
 
                entries_left = txq->tx_ring_size - txq->tx_desc_count;
                if (entries_left < MAX_SKB_FRAGS + 1)
index 9250bf6573ece1af4d2270f4a210fe9be56e143a..2a17b503feaa9c72975454a983a2e28596667d7d 100644 (file)
@@ -1905,7 +1905,7 @@ static void ns_tx_timeout(struct net_device *dev)
        spin_unlock_irq(&np->lock);
        enable_irq(dev->irq);
 
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        np->stats.tx_errors++;
        netif_wake_queue(dev);
 }
@@ -2119,8 +2119,6 @@ static netdev_tx_t start_tx(struct sk_buff *skb, struct net_device *dev)
        }
        spin_unlock_irqrestore(&np->lock, flags);
 
-       dev->trans_start = jiffies;
-
        if (netif_msg_tx_queued(np)) {
                printk(KERN_DEBUG "%s: Transmit frame #%d queued in slot %d.\n",
                        dev->name, np->cur_tx, entry);
index 64770298c4f7121a3a49b3752a25a56b5691b509..2e4b42175f3fb3ff6fdae5d0d8b6fceac17af87d 100644 (file)
@@ -126,7 +126,6 @@ netx_eth_hard_start_xmit(struct sk_buff *skb, struct net_device *ndev)
                   FIFO_PTR_FRAMENO(1) |
                   FIFO_PTR_FRAMELEN(len));
 
-       ndev->trans_start = jiffies;
        ndev->stats.tx_packets++;
        ndev->stats.tx_bytes += skb->len;
 
index 3892330f244a0e65b6a96bf3be8e2b72236f6e79..f80b5015911486473b22dd214b941c50783fcc01 100644 (file)
@@ -444,7 +444,7 @@ static void ni5010_timeout(struct net_device *dev)
        /* Try to restart the adaptor. */
        /* FIXME: Give it a real kick here */
        chipset_init(dev, 1);
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        netif_wake_queue(dev);
 }
 
@@ -460,7 +460,6 @@ static int ni5010_send_packet(struct sk_buff *skb, struct net_device *dev)
 
        netif_stop_queue(dev);
        hardware_send_packet(dev, (unsigned char *)skb->data, skb->len, length-skb->len);
-       dev->trans_start = jiffies;
        dev_kfree_skb (skb);
        return NETDEV_TX_OK;
 }
index b7837ebd9a7d6d938f8e48df01698594815c0ad8..9bddb5fa7a9697d6d4a85ab9ea73960742ed7658 100644 (file)
@@ -1147,7 +1147,7 @@ static void ni52_timeout(struct net_device *dev)
                writeb(CUC_START, &p->scb->cmd_cuc);
                ni_attn586();
                wait_for_scb_cmd(dev);
-               dev->trans_start = jiffies;
+               dev->trans_start = jiffies; /* prevent tx timeout */
                return 0;
        }
 #endif
@@ -1165,7 +1165,7 @@ static void ni52_timeout(struct net_device *dev)
                ni52_close(dev);
                ni52_open(dev);
        }
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
 }
 
 /******************************************************
@@ -1218,7 +1218,6 @@ static netdev_tx_t ni52_send_packet(struct sk_buff *skb,
                        writeb(CUC_START, &p->scb->cmd_cuc);
                }
                ni_attn586();
-               dev->trans_start = jiffies;
                if (!i)
                        dev_kfree_skb(skb);
                wait_for_scb_cmd(dev);
@@ -1240,7 +1239,6 @@ static netdev_tx_t ni52_send_packet(struct sk_buff *skb,
        writew(0, &p->nop_cmds[next_nop]->cmd_status);
 
        writew(make16(p->xmit_cmds[0]), &p->nop_cmds[p->nop_point]->cmd_link);
-       dev->trans_start = jiffies;
        p->nop_point = next_nop;
        dev_kfree_skb(skb);
 #      endif
@@ -1256,7 +1254,6 @@ static netdev_tx_t ni52_send_packet(struct sk_buff *skb,
        writew(0, &p->nop_cmds[next_nop]->cmd_status);
        writew(make16(p->xmit_cmds[p->xmit_count]),
                                &p->nop_cmds[p->xmit_count]->cmd_link);
-       dev->trans_start = jiffies;
        p->xmit_count = next_nop;
        {
                unsigned long flags;
index 9225c76cac40fdce9cf83ce5d917fb3439082195..da228a0dd6cd6d810f60d85d1e07e7308e711104 100644 (file)
@@ -784,7 +784,7 @@ static void ni65_stop_start(struct net_device *dev,struct priv *p)
                if(!p->lock)
                        if (p->tmdnum || !p->xmit_queued)
                                netif_wake_queue(dev);
-               dev->trans_start = jiffies;
+               dev->trans_start = jiffies; /* prevent tx timeout */
        }
        else
                writedatareg(CSR0_STRT | csr0);
@@ -1150,7 +1150,7 @@ static void ni65_timeout(struct net_device *dev)
                printk("%02x ",p->tmdhead[i].u.s.status);
        printk("\n");
        ni65_lance_reinit(dev);
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        netif_wake_queue(dev);
 }
 
@@ -1213,7 +1213,6 @@ static netdev_tx_t ni65_send_packet(struct sk_buff *skb,
                        netif_wake_queue(dev);
 
                p->lock = 0;
-               dev->trans_start = jiffies;
 
                spin_unlock_irqrestore(&p->ring_lock, flags);
        }
index 3924703331740be6a344d76ecad56eb25e198a6f..43bf26fb5133f36cff601f6286c9b780ffe2058d 100644 (file)
@@ -992,7 +992,6 @@ static int octeon_mgmt_xmit(struct sk_buff *skb, struct net_device *netdev)
        /* Ring the bell.  */
        cvmx_write_csr(CVMX_MIXX_ORING2(port), 1);
 
-       netdev->trans_start = jiffies;
        rv = NETDEV_TX_OK;
 out:
        octeon_mgmt_update_tx_stats(netdev);
index dc3b4c7914fd0e67b402fe0f77b02d69f40bc4e3..56f3fc45dbaa84ab9ecbc9f2e8a29902413c6ef6 100644 (file)
@@ -1354,7 +1354,6 @@ static int netdrv_start_xmit(struct sk_buff *skb, struct net_device *dev)
        NETDRV_W32(TxStatus0 + (entry * sizeof(u32)),
                   tp->tx_flag | (skb->len >= ETH_ZLEN ? skb->len : ETH_ZLEN));
 
-       dev->trans_start = jiffies;
        atomic_inc(&tp->cur_tx);
        if ((atomic_read(&tp->cur_tx) - atomic_read(&tp->dirty_tx)) >= NUM_TX_DESC)
                netif_stop_queue(dev);
index 757f87bb1db30e75fd5835ef0b209c30867d95ed..b6d9313cec00dce377f043c1dcc6755b9cc40a16 100644 (file)
@@ -739,7 +739,7 @@ static void el3_tx_timeout(struct net_device *dev)
        printk(KERN_NOTICE "%s: Transmit timed out!\n", dev->name);
        dump_status(dev);
        dev->stats.tx_errors++;
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        /* Issue TX_RESET and TX_START commands. */
        tc574_wait_for_completion(dev, TxReset);
        outw(TxEnable, ioaddr + EL3_CMD);
@@ -790,8 +790,6 @@ static netdev_tx_t el3_start_xmit(struct sk_buff *skb,
        /* ... and the packet rounded to a doubleword. */
        outsl(ioaddr + TX_FIFO, skb->data, (skb->len+3)>>2);
 
-       dev->trans_start = jiffies;
-
        /* TxFree appears only in Window 1, not offset 0x1c. */
        if (inw(ioaddr + TxFree) <= 1536) {
                netif_stop_queue(dev);
index 580977f56ad0f2cb781665b09599dabd9d23f0bc..d6a459dd4894bc8a9a61a8d2022a5141344a6f6d 100644 (file)
@@ -563,7 +563,7 @@ static void el3_tx_timeout(struct net_device *dev)
     netdev_warn(dev, "Transmit timed out!\n");
     dump_status(dev);
     dev->stats.tx_errors++;
-    dev->trans_start = jiffies;
+    dev->trans_start = jiffies; /* prevent tx timeout */
     /* Issue TX_RESET and TX_START commands. */
     tc589_wait_for_completion(dev, TxReset);
     outw(TxEnable, ioaddr + EL3_CMD);
@@ -611,7 +611,6 @@ static netdev_tx_t el3_start_xmit(struct sk_buff *skb,
     /* ... and the packet rounded to a doubleword. */
     outsl(ioaddr + TX_FIFO, skb->data, (skb->len + 3) >> 2);
 
-    dev->trans_start = jiffies;
     if (inw(ioaddr + TX_FREE) <= 1536) {
        netif_stop_queue(dev);
        /* Interrupt us when the FIFO has room for max-sized packet. */
index 70fc9591821f4e39ce8f26427fb86ec1c28cc21b..a1a6b087e2429892264256feecbfa75d4a106f06 100644 (file)
@@ -1005,7 +1005,7 @@ static void axnet_tx_timeout(struct net_device *dev)
 {
        long e8390_base = dev->base_addr;
        struct ei_device *ei_local = (struct ei_device *) netdev_priv(dev);
-       int txsr, isr, tickssofar = jiffies - dev->trans_start;
+       int txsr, isr, tickssofar = jiffies - dev_trans_start(dev);
        unsigned long flags;
 
        dev->stats.tx_errors++;
index 6734f7d6da9879bd2fd95188bdc075483844db34..16fc3e53c5cbd60e97a1be44db446bef17891bd5 100644 (file)
@@ -890,7 +890,6 @@ static netdev_tx_t fjn_start_xmit(struct sk_buff *skb,
            lp->sent = lp->tx_queue ;
            lp->tx_queue = 0;
            lp->tx_queue_len = 0;
-           dev->trans_start = jiffies;
            lp->tx_started = 1;
            netif_start_queue(dev);
        } else {
index c516c19963546f8dad73468581936f7e627871b6..ca4efd2871f3d58fa68ce3abef49a979840bc33c 100644 (file)
@@ -903,7 +903,7 @@ static void mace_tx_timeout(struct net_device *dev)
 #else /* #if RESET_ON_TIMEOUT */
   printk("NOT resetting card\n");
 #endif /* #if RESET_ON_TIMEOUT */
-  dev->trans_start = jiffies;
+  dev->trans_start = jiffies; /* prevent tx timeout */
   netif_wake_queue(dev);
 }
 
@@ -945,8 +945,6 @@ static netdev_tx_t mace_start_xmit(struct sk_buff *skb,
       outb(skb->data[skb->len-1], ioaddr + AM2150_XMT);
     }
 
-    dev->trans_start = jiffies;
-
 #if MULTI_TX
     if (lp->tx_free_frames > 0)
       netif_start_queue(dev);
index 949ac1a12537eb400985afc9aa22a93735df8f2d..b5c62db251db30ff0e71f34d400b45f1341d647c 100644 (file)
@@ -1254,7 +1254,7 @@ static void smc_tx_timeout(struct net_device *dev)
           dev->name, inw(ioaddr)&0xff, inw(ioaddr + 2));
     dev->stats.tx_errors++;
     smc_reset(dev);
-    dev->trans_start = jiffies;
+    dev->trans_start = jiffies; /* prevent tx timeout */
     smc->saved_skb = NULL;
     netif_wake_queue(dev);
 }
index 656be931207a390384514c15e317019a2d08444a..6622f0401794167bd7aa9c620788e243332ce270 100644 (file)
@@ -1295,7 +1295,7 @@ xirc2ps_tx_timeout_task(struct work_struct *work)
        struct net_device *dev = local->dev;
     /* reset the card */
     do_reset(dev,1);
-    dev->trans_start = jiffies;
+    dev->trans_start = jiffies; /* prevent tx timeout */
     netif_wake_queue(dev);
 }
 
@@ -1358,7 +1358,6 @@ do_start_xmit(struct sk_buff *skb, struct net_device *dev)
        PutByte(XIRCREG_CR, TransmitPacket|EnableIntr);
 
     dev_kfree_skb (skb);
-    dev->trans_start = jiffies;
     dev->stats.tx_bytes += pktlen;
     netif_start_queue(dev);
     return NETDEV_TX_OK;
index a2254f749a9aaee5dea112226198a1e364daa5f6..566fd89da8615895ef4046e887a55950d468e2d8 100644 (file)
@@ -448,7 +448,7 @@ static void pcnet32_netif_stop(struct net_device *dev)
 {
        struct pcnet32_private *lp = netdev_priv(dev);
 
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        napi_disable(&lp->napi);
        netif_tx_disable(dev);
 }
@@ -2398,7 +2398,7 @@ static void pcnet32_tx_timeout(struct net_device *dev)
        }
        pcnet32_restart(dev, CSR0_NORMAL);
 
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        netif_wake_queue(dev);
 
        spin_unlock_irqrestore(&lp->lock, flags);
@@ -2449,8 +2449,6 @@ static netdev_tx_t pcnet32_start_xmit(struct sk_buff *skb,
        /* Trigger an immediate send poll. */
        lp->a.write_csr(ioaddr, CSR0, CSR0_INTEN | CSR0_TXPOLL);
 
-       dev->trans_start = jiffies;
-
        if (lp->tx_ring[(entry + 1) & lp->tx_mod_mask].base != 0) {
                lp->tx_full = 1;
                netif_stop_queue(dev);
index 9a2103a69e172280e933de679b8cf303ff8ce767..f4e1f9a38b873bfd6107af898720b526fc020a38 100644 (file)
@@ -979,7 +979,6 @@ plip_tx_packet(struct sk_buff *skb, struct net_device *dev)
                printk(KERN_DEBUG "%s: send request\n", dev->name);
 
        spin_lock_irq(&nl->lock);
-       dev->trans_start = jiffies;
        snd->skb = skb;
        snd->length.h = skb->len;
        snd->state = PLIP_PK_TRIGGER;
index 022317db46738dbadaffac7990b1d3eacf591bac..87d6b8f3630470cce8219a4738352377e9d6cac6 100644 (file)
@@ -903,9 +903,6 @@ int gelic_net_xmit(struct sk_buff *skb, struct net_device *netdev)
                gelic_descr_release_tx(card, descr->next);
                card->tx_chain.tail = descr->next->next;
                dev_info(ctodev(card), "%s: kick failure\n", __func__);
-       } else {
-               /* OK, DMA started/reserved */
-               netdev->trans_start = jiffies;
        }
 
        spin_unlock_irqrestore(&card->tx_lock, flags);
index 41229164559685b78ec3aaa7019d9f4c0eb79fe4..3cc7befa3eb18f355e63b7abbe87afeb77738abe 100644 (file)
@@ -924,7 +924,6 @@ static netdev_tx_t r6040_start_xmit(struct sk_buff *skb,
        if (!lp->tx_free_desc)
                netif_stop_queue(dev);
 
-       dev->trans_start = jiffies;
        spin_unlock_irqrestore(&lp->lock, flags);
 
        return NETDEV_TX_OK;
index f2e335f0d1b760d7e8c0d23ae9cb5999d24f013c..e26e107f93e0c4ee18156a3c188bdc673c7c3691 100644 (file)
@@ -1467,7 +1467,6 @@ static netdev_tx_t rr_start_xmit(struct sk_buff *skb,
 
        spin_unlock_irqrestore(&rrpriv->lock, flags);
 
-       dev->trans_start = jiffies;
        return NETDEV_TX_OK;
 }
 
index 6b12524ad7c1d491177c65bf94eecc10d03cd899..a7ff8ea342b4329baae598c4f1b08a704e016356 100644 (file)
@@ -852,8 +852,8 @@ static int s6gmac_tx(struct sk_buff *skb, struct net_device *dev)
 {
        struct s6gmac *pd = netdev_priv(dev);
        unsigned long flags;
+
        spin_lock_irqsave(&pd->lock, flags);
-       dev->trans_start = jiffies;
        writel(skb->len << S6_GMAC_BURST_PREWR_LEN |
                0 << S6_GMAC_BURST_PREWR_CFE |
                1 << S6_GMAC_BURST_PREWR_PPE |
index fec3c29b2ea8675a5664ec79167933ba70de1ee2..1f3acc3a5dfd0510d487334ac31b2a266eac13db 100644 (file)
@@ -2068,8 +2068,6 @@ static int sbmac_start_tx(struct sk_buff *skb, struct net_device *dev)
                return NETDEV_TX_BUSY;
        }
 
-       dev->trans_start = jiffies;
-
        spin_unlock_irqrestore(&sc->sbm_lock, flags);
 
        return NETDEV_TX_OK;
@@ -2488,7 +2486,7 @@ static void sbmac_tx_timeout (struct net_device *dev)
        spin_lock_irqsave(&sc->sbm_lock, flags);
 
 
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        dev->stats.tx_errors++;
 
        spin_unlock_irqrestore(&sc->sbm_lock, flags);
index 1b3260588933feba9df2cc7368d520b0290b6263..8c4067af32b0fbc671d2d38652a09e0594268611 100644 (file)
@@ -987,8 +987,6 @@ static netdev_tx_t sc92031_start_xmit(struct sk_buff *skb,
        iowrite32(tx_status, port_base + TxStatus0 + entry * 4);
        mmiowb();
 
-       dev->trans_start = jiffies;
-
        if (priv->tx_head - priv->tx_tail >= NUM_TX_DESC)
                netif_stop_queue(dev);
 
index 374832cca11fd092a42ee15719a8421f106e4f24..11ab32e0060b6377e8a8446a8ab541946bf81507 100644 (file)
@@ -390,7 +390,7 @@ static void seeq8005_timeout(struct net_device *dev)
                   tx_done(dev) ? "IRQ conflict" : "network cable problem");
        /* Try to restart the adaptor. */
        seeq8005_init(dev, 1);
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        netif_wake_queue(dev);
 }
 
@@ -411,7 +411,6 @@ static netdev_tx_t seeq8005_send_packet(struct sk_buff *skb,
        netif_stop_queue(dev);
 
        hardware_send_packet(dev, buf, length);
-       dev->trans_start = jiffies;
        dev->stats.tx_bytes += length;
        dev_kfree_skb (skb);
        /* You might need to clean up and record Tx statistics here. */
index c8fc896fc4600dfc348d0229f0cf91b8755be037..cc4bd8c65f8b6a58846065430f8b89c1be6a4bc3 100644 (file)
@@ -574,7 +574,7 @@ static inline int sgiseeq_reset(struct net_device *dev)
        if (err)
                return err;
 
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        netif_wake_queue(dev);
 
        return 0;
@@ -638,8 +638,6 @@ static int sgiseeq_start_xmit(struct sk_buff *skb, struct net_device *dev)
        if (!(hregs->tx_ctrl & HPC3_ETXCTRL_ACTIVE))
                kick_tx(dev, sp, hregs);
 
-       dev->trans_start = jiffies;
-
        if (!TX_BUFFS_AVAIL(sp))
                netif_stop_queue(dev);
        spin_unlock_irqrestore(&sp->tx_lock, flags);
@@ -652,7 +650,7 @@ static void timeout(struct net_device *dev)
        printk(KERN_NOTICE "%s: transmit timed out, resetting\n", dev->name);
        sgiseeq_reset(dev);
 
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        netif_wake_queue(dev);
 }
 
index 6242b85d5d1589bfeb8728308ad4e5a93b7bf4d3..586ed0915a293f25d6dd5d6cd1fee28e6ece283e 100644 (file)
@@ -1148,8 +1148,6 @@ static int sh_eth_start_xmit(struct sk_buff *skb, struct net_device *ndev)
        if (!(ctrl_inl(ndev->base_addr + EDTRR) & EDTRR_TRNS))
                ctrl_outl(EDTRR_TRNS, ndev->base_addr + EDTRR);
 
-       ndev->trans_start = jiffies;
-
        return NETDEV_TX_OK;
 }
 
index 6293592635bec7aed0d193abb9345cd35d7901e8..11f7ebedcde546e305c3b9fc5a0b57e369049fbe 100644 (file)
@@ -1553,7 +1553,7 @@ static void sis900_tx_timeout(struct net_device *net_dev)
 
        spin_unlock_irqrestore(&sis_priv->lock, flags);
 
-       net_dev->trans_start = jiffies;
+       net_dev->trans_start = jiffies; /* prevent tx timeout */
 
        /* load Transmit Descriptor Register */
        outl(sis_priv->tx_ring_dma, ioaddr + txdp);
@@ -1623,8 +1623,6 @@ sis900_start_xmit(struct sk_buff *skb, struct net_device *net_dev)
 
        spin_unlock_irqrestore(&sis_priv->lock, flags);
 
-       net_dev->trans_start = jiffies;
-
        if (netif_msg_tx_queued(sis_priv))
                printk(KERN_DEBUG "%s: Queued Tx packet at %p size %d "
                       "to slot %d.\n",
index 7912606b0bc7c7464024a21c812b2c9038643707..91adc38d571051949a44331b101a18ae03e010d2 100644 (file)
@@ -1076,7 +1076,6 @@ static netdev_tx_t skfp_send_pkt(struct sk_buff *skb,
        if (bp->QueueSkb == 0) {
                netif_stop_queue(dev);
        }
-       dev->trans_start = jiffies;
        return NETDEV_TX_OK;
 
 }                              // skfp_send_pkt
index 89696156c059a826231dd8c6bb8c2ae14ca6645e..d92772e992d2fea565a1f42f7fd49750c03e0c6d 100644 (file)
@@ -458,7 +458,7 @@ static void sl_tx_timeout(struct net_device *dev)
                 *      14 Oct 1994 Dmitry Gorodchanin.
                 */
 #ifdef SL_CHECK_TRANSMIT
-               if (time_before(jiffies, dev->trans_start + 20 * HZ))  {
+               if (time_before(jiffies, dev_trans_start(dev) + 20 * HZ))  {
                        /* 20 sec timeout not reached */
                        goto out;
                }
index 1e49fcfa28abecf2ab6d0d76b003949a7d526853..66831f378396b1e910e79b74a0340499c7d3c5b5 100644 (file)
@@ -1289,7 +1289,7 @@ static void smc911x_timeout(struct net_device *dev)
                schedule_work(&lp->phy_configure);
 
        /* We can accept TX packets again */
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        netif_wake_queue(dev);
 }
 
index d76c8154f52bc56dff021f5036c81da05e63fc86..acb81a876ac605975337b413dde9fef36d4acab5 100644 (file)
@@ -1164,7 +1164,7 @@ static void smc_timeout(struct net_device *dev)
        /* "kick" the adaptor */
        smc_reset( dev->base_addr );
        smc_enable( dev->base_addr );
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        /* clear anything saved */
        ((struct smc_local *)netdev_priv(dev))->saved_skb = NULL;
        netif_wake_queue(dev);
index 682bc4fe604f3d843b33d3e4ba527a9dad31c39b..10cf0cbc218507111b26959f119645672fcd5666 100644 (file)
@@ -1360,7 +1360,7 @@ static void smc_timeout(struct net_device *dev)
                schedule_work(&lp->phy_configure);
 
        /* We can accept TX packets again */
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        netif_wake_queue(dev);
 }
 
index 746fb91a0fb042e8f391ba24cc1f9990f46bfaf5..89f35f94f720603429b8c6bf698ce08d2a174aa1 100644 (file)
@@ -1335,7 +1335,6 @@ static int smsc911x_hard_start_xmit(struct sk_buff *skb, struct net_device *dev)
        smsc911x_tx_writefifo(pdata, (unsigned int *)bufp, wrsz);
        freespace -= (skb->len + 32);
        dev_kfree_skb(skb);
-       dev->trans_start = jiffies;
 
        if (unlikely(smsc911x_tx_get_txstatcount(pdata) >= 30))
                smsc911x_tx_update_txcounters(dev);
index ada05c45217518a4629f13ad9eb722b0e82f4cf2..6cdee6a15f9f2897fa06baa40ad5c34c90c2e27d 100644 (file)
@@ -1034,8 +1034,6 @@ static netdev_tx_t smsc9420_hard_start_xmit(struct sk_buff *skb,
        smsc9420_reg_write(pd, TX_POLL_DEMAND, 1);
        smsc9420_pci_flush_write(pd);
 
-       dev->trans_start = jiffies;
-
        return NETDEV_TX_OK;
 }
 
index e5d67327d707798f748183dfce897d918b0afadd..26e25d7f58298c16cd0d48df2b58d368f56cfafa 100644 (file)
@@ -174,7 +174,7 @@ static void sonic_tx_timeout(struct net_device *dev)
        /* Try to restart the adaptor. */
        sonic_init(dev);
        lp->stats.tx_errors++;
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        netif_wake_queue(dev);
 }
 
@@ -263,8 +263,6 @@ static int sonic_send_packet(struct sk_buff *skb, struct net_device *dev)
 
        SONIC_WRITE(SONIC_CMD, SONIC_CR_TXP);
 
-       dev->trans_start = jiffies;
-
        return NETDEV_TX_OK;
 }
 
index 8a6d27cdc0bd44286a63ea17d83f07624a9719db..e19b5a143886b54361ba874669de9001e8c8a1bc 100644 (file)
@@ -1173,7 +1173,7 @@ static void tx_timeout(struct net_device *dev)
 
        /* Trigger an immediate transmit demand. */
 
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        np->stats.tx_errors++;
        netif_wake_queue(dev);
 }
@@ -1312,8 +1312,6 @@ static netdev_tx_t start_tx(struct sk_buff *skb, struct net_device *dev)
        if ((np->cur_tx - np->dirty_tx) + 4 > TX_RING_SIZE)
                netif_stop_queue(dev);
 
-       dev->trans_start = jiffies;
-
        return NETDEV_TX_OK;
 }
 
index 31ab4ab0796f47a3aeb66ed24e2c8729cbe61482..151312342243d3c784613ed07e2dd2f7aec2ac1f 100644 (file)
@@ -985,7 +985,7 @@ static void sun3_82586_timeout(struct net_device *dev)
                p->scb->cmd_cuc = CUC_START;
                sun3_attn586();
                WAIT_4_SCB_CMD();
-               dev->trans_start = jiffies;
+               dev->trans_start = jiffies; /* prevent tx timeout */
                return 0;
        }
 #endif
@@ -998,7 +998,7 @@ static void sun3_82586_timeout(struct net_device *dev)
                sun3_82586_close(dev);
                sun3_82586_open(dev);
        }
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
 }
 
 /******************************************************
@@ -1062,7 +1062,6 @@ static int sun3_82586_send_packet(struct sk_buff *skb, struct net_device *dev)
                        }
 
                        sun3_attn586();
-                       dev->trans_start = jiffies;
                        if(!i)
                                dev_kfree_skb(skb);
                        WAIT_4_SCB_CMD();
@@ -1082,7 +1081,6 @@ static int sun3_82586_send_packet(struct sk_buff *skb, struct net_device *dev)
                p->xmit_cmds[0]->cmd_status = p->nop_cmds[next_nop]->cmd_status = 0;
 
                p->nop_cmds[p->nop_point]->cmd_link = make16((p->xmit_cmds[0]));
-               dev->trans_start = jiffies;
                p->nop_point = next_nop;
                dev_kfree_skb(skb);
 #      endif
@@ -1097,7 +1095,6 @@ static int sun3_82586_send_packet(struct sk_buff *skb, struct net_device *dev)
                p->nop_cmds[next_nop]->cmd_status = 0;
 
                p->nop_cmds[p->xmit_count]->cmd_link = make16((p->xmit_cmds[p->xmit_count]));
-               dev->trans_start = jiffies;
                p->xmit_count = next_nop;
 
                {
index 1694ca5bfb41a4f85c5ebee6e1b067938e982130..358c22f9acbef8e4978cf8cc0969123dbe9c3974 100644 (file)
@@ -523,8 +523,8 @@ static int lance_start_xmit( struct sk_buff *skb, struct net_device *dev )
 
        /* Transmitter timeout, serious problems. */
        if (netif_queue_stopped(dev)) {
-               int tickssofar = jiffies - dev->trans_start;
-               if (tickssofar < 20)
+               int tickssofar = jiffies - dev_trans_start(dev);
+               if (tickssofar < HZ/5)
                        return NETDEV_TX_BUSY;
 
                DPRINTK( 1, ( "%s: transmit timed out, status %04x, resetting.\n",
@@ -559,7 +559,6 @@ static int lance_start_xmit( struct sk_buff *skb, struct net_device *dev )
                REGA( CSR0 ) = CSR0_INEA | CSR0_INIT | CSR0_STRT;
 
                netif_start_queue(dev);
-               dev->trans_start = jiffies;
 
                return NETDEV_TX_OK;
        }
@@ -637,8 +636,7 @@ static int lance_start_xmit( struct sk_buff *skb, struct net_device *dev )
        AREG = CSR0;
        DPRINTK( 2, ( "%s: lance_start_xmit() exiting, csr0 %4.4x.\n",
                                  dev->name, DREG ));
-       dev->trans_start = jiffies;
-       dev_kfree_skb( skb );
+       dev_kfree_skb(skb);
 
        lp->lock = 0;
        if ((MEM->tx_head[(entry+1) & TX_RING_MOD_MASK].flag & TMD1_OWN) ==
index 52913155ce476eecc98e9d1fa4c05d3a52fc4bd3..34446b6d9a3c1b6535722283c2118087c56f412d 100644 (file)
@@ -982,8 +982,6 @@ static int bigmac_start_xmit(struct sk_buff *skb, struct net_device *dev)
        sbus_writel(CREG_CTRL_TWAKEUP, bp->creg + CREG_CTRL);
 
 
-       dev->trans_start = jiffies;
-
        return NETDEV_TX_OK;
 }
 
index da45f01279c4991192ba0926f8c5578bf3023dc7..16803251a999a3cf4c9baad27182ecc1d18297e0 100644 (file)
@@ -972,7 +972,7 @@ static void tx_timeout(struct net_device *dev)
 
        dev->if_port = 0;
 
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        dev->stats.tx_errors++;
        if (np->cur_tx - np->dirty_tx < TX_QUEUE_LEN - 4) {
                netif_wake_queue(dev);
@@ -1084,7 +1084,6 @@ start_tx (struct sk_buff *skb, struct net_device *dev)
        } else {
                netif_stop_queue (dev);
        }
-       dev->trans_start = jiffies;
        if (netif_msg_tx_queued(np)) {
                printk (KERN_DEBUG
                        "%s: Transmit frame #%d queued in slot %d.\n",
index 2b78e97ea9c0e744aa54ca464ed5407e639ffb5b..5bc786f73e4d93930d8ebf16c47216b19250b5c1 100644 (file)
@@ -1136,7 +1136,7 @@ static netdev_tx_t gem_start_xmit(struct sk_buff *skb,
        writel(gp->tx_new, gp->regs + TXDMA_KICK);
        spin_unlock_irqrestore(&gp->tx_lock, flags);
 
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* NETIF_F_LLTX driver :( */
 
        return NETDEV_TX_OK;
 }
index 982ff12764a3f848e92e078c4cd769e1d53fab88..377c0b51e559e5c4153586fcc9ab46c528ec9d6c 100644 (file)
@@ -2341,8 +2341,6 @@ static netdev_tx_t happy_meal_start_xmit(struct sk_buff *skb,
 
        spin_unlock_irq(&hp->happy_lock);
 
-       dev->trans_start = jiffies;
-
        tx_add_log(hp, TXLOG_ACTION_TXMIT, 0);
        return NETDEV_TX_OK;
 }
index c7748b73fa09c4cf18dc1333930166207a5f83be..f88a60fa25f8f9328bd467f51ccf40609c4a9ca7 100644 (file)
@@ -1003,7 +1003,7 @@ static int lance_reset(struct net_device *dev)
        }
        lp->init_ring(dev);
        load_csrs(lp);
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        status = init_restart_lance(lp);
        return status;
 }
@@ -1160,7 +1160,6 @@ static int lance_start_xmit(struct sk_buff *skb, struct net_device *dev)
 
        spin_unlock_irq(&lp->lock);
 
-       dev->trans_start = jiffies;
        dev_kfree_skb(skb);
 
        return NETDEV_TX_OK;
index 239f0977219198cc7554bd44d05f0dc905b1980d..a7542d25c8451f31b0420e586fd96b74e77eced4 100644 (file)
@@ -602,7 +602,6 @@ static int qe_start_xmit(struct sk_buff *skb, struct net_device *dev)
        qep->tx_new = NEXT_TX(entry);
 
        /* Get it going. */
-       dev->trans_start = jiffies;
        sbus_writel(CREG_CTRL_TWAKEUP, qep->qcregs + CREG_CTRL);
 
        dev->stats.tx_packets++;
index 6cf8b06be5cdeacc0fac9590197038afc1fad428..d281a7b34701060d4ab23f3f2c764b684bf7bb0d 100644 (file)
@@ -717,7 +717,6 @@ static int vnet_start_xmit(struct sk_buff *skb, struct net_device *dev)
 
        dev_kfree_skb(skb);
 
-       dev->trans_start = jiffies;
        return NETDEV_TX_OK;
 
 out_dropped_unlock:
index 36149ddace4689e8f90e00173a61dd79378ea6fe..be08b75dbc15a3d2d6adaf8d76c6d1de83c4d362 100644 (file)
@@ -1357,8 +1357,6 @@ static int tc35815_send_packet(struct sk_buff *skb, struct net_device *dev)
        }
        lp->tfd_start = (lp->tfd_start + 1) % TX_FD_NUM;
 
-       dev->trans_start = jiffies;
-
        /* If we just used up the very last entry in the
         * TX ring on this device, tell the queueing
         * layer to send no more.
index 8ffec22b74bff43bdc6722fb3211454d747c7f53..ccee3eddc5f4c24b4afcdf6cb4dcaf8759165b7a 100644 (file)
@@ -1034,7 +1034,7 @@ static void TLan_tx_timeout(struct net_device *dev)
        TLan_ResetLists( dev );
        TLan_ReadAndClearStats( dev, TLAN_IGNORE );
        TLan_ResetAdapter( dev );
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        netif_wake_queue( dev );
 
 }
@@ -1147,7 +1147,6 @@ static netdev_tx_t TLan_StartTx( struct sk_buff *skb, struct net_device *dev )
 
        CIRC_INC( priv->txTail, TLAN_NUM_TX_LISTS );
 
-       dev->trans_start = jiffies;
        return NETDEV_TX_OK;
 
 } /* TLan_StartTx */
index eebdaae243283fbd9a2e6846af5fc37b36331b1b..91e6c78271a3a09f4b8a5e4aba0b508e6f1ee134 100644 (file)
@@ -1041,7 +1041,6 @@ static netdev_tx_t tok_send_packet(struct sk_buff *skb,
        writew(ti->exsap_station_id, ti->srb + STATION_ID_OFST);
        writeb(CMD_IN_SRB, ti->mmio + ACA_OFFSET + ACA_SET + ISRA_ODD);
        spin_unlock_irqrestore(&(ti->lock), flags);
-       dev->trans_start = jiffies;
        return NETDEV_TX_OK;
 }
 
index e40560137c460938633c4750986d9b4a9d1cdd7c..213b9affc22a9094f65cb0e1e5949c2b368b2a67 100644 (file)
@@ -4562,7 +4562,7 @@ static void smctr_timeout(struct net_device *dev)
          * fake transmission time and go on trying. Our own timeout
          * routine is in sktr_timer_chk()
          */
-        dev->trans_start = jiffies;
+        dev->trans_start = jiffies; /* prevent tx timeout */
         netif_wake_queue(dev);
 }
 
index c169fd05dde0021084ddaea9992414235252bf37..8cb126a800702018899362395e32814e3367242f 100644 (file)
@@ -592,7 +592,7 @@ static void tms380tr_timeout(struct net_device *dev)
         * fake transmission time and go on trying. Our own timeout
         * routine is in tms380tr_timer_chk()
         */
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        netif_wake_queue(dev);
 }
 
index 9c0f29ce8ba7ff87e5f73a693313a7b6e3ab3463..c0e70006374e826930f8797b1c1c2a65710ea78c 100644 (file)
@@ -654,7 +654,6 @@ static netdev_tx_t de_start_xmit (struct sk_buff *skb,
 
        /* Trigger an immediate transmit demand. */
        dw32(TxPoll, NormalTxPoll);
-       dev->trans_start = jiffies;
 
        return NETDEV_TX_OK;
 }
index d818456f47133d228cf66d2a1ce2b97ffde981bb..9522baf8d997d2f9c328a3e84dac5e86e7241524 100644 (file)
@@ -1337,7 +1337,7 @@ de4x5_open(struct net_device *dev)
     }
 
     lp->interrupt = UNMASK_INTERRUPTS;
-    dev->trans_start = jiffies;
+    dev->trans_start = jiffies; /* prevent tx timeout */
 
     START_DE4X5;
 
@@ -1507,7 +1507,6 @@ de4x5_queue_pkt(struct sk_buff *skb, struct net_device *dev)
            outl(POLL_DEMAND, DE4X5_TPD);/* Start the TX */
 
            lp->tx_new = (++lp->tx_new) % lp->txRingSize;
-           dev->trans_start = jiffies;
 
            if (TX_BUFFS_AVAIL) {
                netif_start_queue(dev);         /* Another pkt may be queued */
@@ -1937,7 +1936,7 @@ set_multicast_list(struct net_device *dev)
 
            lp->tx_new = (++lp->tx_new) % lp->txRingSize;
            outl(POLL_DEMAND, DE4X5_TPD);       /* Start the TX */
-           dev->trans_start = jiffies;
+           dev->trans_start = jiffies; /* prevent tx timeout */
        }
     }
 }
index 7278ecb823cba4bf4ff98c5ee029f4f09296745e..bdb25b8b10174abc434aa52b4d22d694d8849950 100644 (file)
@@ -1180,11 +1180,11 @@ static void dmfe_timer(unsigned long data)
 
        /* TX polling kick monitor */
        if ( db->tx_packet_cnt &&
-            time_after(jiffies, dev->trans_start + DMFE_TX_KICK) ) {
+            time_after(jiffies, dev_trans_start(dev) + DMFE_TX_KICK) ) {
                outl(0x1, dev->base_addr + DCR1);   /* Tx polling again */
 
                /* TX Timeout */
-               if ( time_after(jiffies, dev->trans_start + DMFE_TX_TIMEOUT) ) {
+               if (time_after(jiffies, dev_trans_start(dev) + DMFE_TX_TIMEOUT) ) {
                        db->reset_TXtimeout++;
                        db->wait_reset = 1;
                        dev_warn(&dev->dev, "Tx timeout - resetting\n");
index 966efa1a27d70ca01c0c8cf3fb6458cd72c90bf0..a63e64b6863d852def7dc6c1a2a8c6b9b081fe73 100644 (file)
@@ -67,7 +67,7 @@ void pnic_lnk_change(struct net_device *dev, int csr5)
                 */
                if (tulip_media_cap[dev->if_port] & MediaIsMII)
                        return;
-               if (! tp->nwayset  ||  time_after(jiffies, dev->trans_start + 1*HZ)) {
+               if (! tp->nwayset || time_after(jiffies, dev_trans_start(dev) + 1*HZ)) {
                        tp->csr6 = 0x00420000 | (tp->csr6 & 0x0000fdff);
                        iowrite32(tp->csr6, ioaddr + CSR6);
                        iowrite32(0x30, ioaddr + CSR12);
index 22e766e90063eadef4c95b6808f43f1d319146f9..254643ed945e60e068336dc7d8218fada93798b3 100644 (file)
@@ -605,7 +605,7 @@ static void tulip_tx_timeout(struct net_device *dev)
 
 out_unlock:
        spin_unlock_irqrestore (&tp->lock, flags);
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        netif_wake_queue (dev);
 }
 
@@ -707,8 +707,6 @@ tulip_start_xmit(struct sk_buff *skb, struct net_device *dev)
 
        spin_unlock_irqrestore(&tp->lock, flags);
 
-       dev->trans_start = jiffies;
-
        return NETDEV_TX_OK;
 }
 
index c7f972852921e54520174d470b3813bf6fe32819..96de5829b940806729f02fa26eeb7537713e821d 100644 (file)
@@ -1040,11 +1040,11 @@ static void uli526x_timer(unsigned long data)
 
        /* TX polling kick monitor */
        if ( db->tx_packet_cnt &&
-            time_after(jiffies, dev->trans_start + ULI526X_TX_KICK) ) {
+            time_after(jiffies, dev_trans_start(dev) + ULI526X_TX_KICK) ) {
                outl(0x1, dev->base_addr + DCR1);   // Tx polling again
 
                // TX Timeout
-               if ( time_after(jiffies, dev->trans_start + ULI526X_TX_TIMEOUT) ) {
+               if ( time_after(jiffies, dev_trans_start(dev) + ULI526X_TX_TIMEOUT) ) {
                        db->reset_TXtimeout++;
                        db->wait_reset = 1;
                        printk( "%s: Tx timeout - resetting\n",
index 18c8cedf4cac2f719d4c59e440a006e24754bfc5..60a87542f8f0ecdb6daec66f755c5e3351f447a0 100644 (file)
@@ -969,7 +969,7 @@ static void tx_timeout(struct net_device *dev)
        enable_irq(dev->irq);
 
        netif_wake_queue(dev);
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        np->stats.tx_errors++;
        return;
 }
@@ -1055,8 +1055,6 @@ static netdev_tx_t start_tx(struct sk_buff *skb, struct net_device *dev)
        }
        spin_unlock_irq(&np->lock);
 
-       dev->trans_start = jiffies;
-
        if (debug > 4) {
                printk(KERN_DEBUG "%s: Transmit frame #%d queued in slot %d\n",
                       dev->name, np->cur_tx, entry);
index 6b150c072a4140a4368530cf37ed1990c6f34ffe..dbdfb1ff7ca0cbc201b6a9b7d1a54c814d3899c5 100644 (file)
@@ -396,7 +396,6 @@ static netdev_tx_t tun_net_xmit(struct sk_buff *skb, struct net_device *dev)
 
        /* Enqueue packet */
        skb_queue_tail(&tun->socket.sk->sk_receive_queue, skb);
-       dev->trans_start = jiffies;
 
        /* Notify and wake up reader process */
        if (tun->flags & TUN_FASYNC)
index b94c4cce93c2c976f10a1c1d1b673bd81c462b22..22bde49262c075de51aedc7ae75a4a9cefb79387 100644 (file)
@@ -881,8 +881,6 @@ typhoon_start_tx(struct sk_buff *skb, struct net_device *dev)
        wmb();
        iowrite32(txRing->lastWrite, tp->tx_ioaddr + txRing->writeRegister);
 
-       dev->trans_start = jiffies;
-
        /* If we don't have room to put the worst case packet on the
         * queue, then we must stop the queue. We need 2 extra
         * descriptors -- one to prevent ring wrap, and one for the
index 081f76bff341bfbcbd7f3d85384acb48af23b510..932602db54b39c09b1c7bbb9e62e6a663c356903 100644 (file)
@@ -3148,8 +3148,6 @@ static int ucc_geth_start_xmit(struct sk_buff *skb, struct net_device *dev)
        /* set bd status and length */
        out_be32((u32 __iomem *)bd, bd_status);
 
-       dev->trans_start = jiffies;
-
        /* Move to next BD in the ring */
        if (!(bd_status & T_W))
                bd += sizeof(struct qe_bd);
index be0cc99e881a6c4c41c8b8f502d0392f4be343e5..a6227f892d1b9bd7d1926dc02991f13bce0a0375 100644 (file)
@@ -834,8 +834,6 @@ static netdev_tx_t hso_net_start_xmit(struct sk_buff *skb,
        } else {
                net->stats.tx_packets++;
                net->stats.tx_bytes += skb->len;
-               /* And tell the kernel when the last transmit started. */
-               net->trans_start = jiffies;
        }
        dev_kfree_skb(skb);
        /* we're done */
index c4c334d9770f9916f2f67c85661c6694fa5f4c25..46890dc625dcfb36a7692b277c7add70d63195dd 100644 (file)
@@ -856,7 +856,6 @@ skip:
        {
                kaweth->stats.tx_packets++;
                kaweth->stats.tx_bytes += skb->len;
-               net->trans_start = jiffies;
        }
 
        spin_unlock_irq(&kaweth->device_lock);
index 41838773b568dca9674410a0c22c8390741941e6..1cd17d274a121f7119ccc3c6f566931adf769bd3 100644 (file)
@@ -808,7 +808,7 @@ static void write_bulk_callback(struct urb *urb)
                break;
        }
 
-       net->trans_start = jiffies;
+       net->trans_start = jiffies; /* prevent tx timeout */
        netif_wake_queue(net);
 }
 
@@ -909,7 +909,6 @@ static netdev_tx_t pegasus_start_xmit(struct sk_buff *skb,
        } else {
                pegasus->stats.tx_packets++;
                pegasus->stats.tx_bytes += skb->len;
-               net->trans_start = jiffies;
        }
        dev_kfree_skb(skb);
 
index 467bcff13cd04d87e32008890ff6d7025c8769b0..4930f9dbc493d50d2b46f7829d62541bc8b1e646 100644 (file)
@@ -1209,7 +1209,7 @@ static void rhine_reset_task(struct work_struct *work)
        spin_unlock_bh(&rp->lock);
        enable_irq(rp->pdev->irq);
 
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        dev->stats.tx_errors++;
        netif_wake_queue(dev);
 }
@@ -1294,8 +1294,6 @@ static netdev_tx_t rhine_start_tx(struct sk_buff *skb,
        if (rp->cur_tx == rp->dirty_tx + TX_QUEUE_LEN)
                netif_stop_queue(dev);
 
-       dev->trans_start = jiffies;
-
        spin_unlock_irqrestore(&rp->lock, flags);
 
        if (debug > 4) {
index 616f8c92b7451a3a374fcbb8b680b7883f63550d..42dffd3e5795b6737943170e0e6e4ccfe4043f62 100644 (file)
@@ -2606,7 +2606,6 @@ static netdev_tx_t velocity_xmit(struct sk_buff *skb,
        td_ptr->td_buf[0].size |= TD_QUEUE;
        mac_tx_queue_wake(vptr->mac_regs, qnum);
 
-       dev->trans_start = jiffies;
        spin_unlock_irqrestore(&vptr->lock, flags);
 out:
        return NETDEV_TX_OK;
index 90e783a0924598d2e71668595059b045252b816f..39462321f5fb6d155ede341c2e1d9422d51423f9 100644 (file)
@@ -992,7 +992,6 @@ vmxnet3_tq_xmit(struct sk_buff *skb, struct vmxnet3_tx_queue *tq,
                VMXNET3_WRITE_BAR0_REG(adapter, VMXNET3_REG_TXPROD,
                                       tq->tx_ring.next2fill);
        }
-       netdev->trans_start = jiffies;
 
        return NETDEV_TX_OK;
 
index a4859f7a7cc0c9aa62ce537dcef3740999890b29..d45b08d1dbc939bc390ddbfc99c0a056f1e9582f 100644 (file)
@@ -1175,8 +1175,6 @@ static netdev_tx_t dscc4_start_xmit(struct sk_buff *skb,
        spin_unlock(&dpriv->lock);
 #endif
 
-       dev->trans_start = jiffies;
-
        if (debug > 2)
                dscc4_tx_print(dev, dpriv, "Xmit");
        /* To be cleaned(unsigned int)/optimized. Later, ok ? */
index 4dde2ea4a189d75ae6e7c3da6ec03469c13bc253..a3ea27ce04f236c54b420ff5bbb3f1f28933c975 100644 (file)
@@ -658,7 +658,6 @@ static netdev_tx_t sca_xmit(struct sk_buff *skb, struct net_device *dev)
 #endif
        writew(len, &desc->len);
        writeb(ST_TX_EOM, &desc->stat);
-       dev->trans_start = jiffies;
 
        port->txin = next_desc(port, port->txin, 1);
        sca_outw(desc_offset(port, port->txin, 1),
index aad9ed45c254c52af53510ba2158b2a11b22ced0..ea476cbd38b511039c8cb21ecdba7c61c1071ff1 100644 (file)
@@ -585,7 +585,6 @@ static netdev_tx_t sca_xmit(struct sk_buff *skb, struct net_device *dev)
 
        writew(len, &desc->len);
        writeb(ST_TX_EOM, &desc->stat);
-       dev->trans_start = jiffies;
 
        port->txin = (port->txin + 1) % card->tx_ring_buffers;
        sca_outl(desc_offset(port, port->txin, 1),
index 0c2cdde686a03fd6f50efa58fa9d3538c2f8407a..88e363033e23a629101736b03d79c552759583fe 100644 (file)
@@ -891,7 +891,6 @@ static int hss_hdlc_xmit(struct sk_buff *skb, struct net_device *dev)
 
        wmb();
        queue_put_desc(queue_ids[port->id].tx, tx_desc_phys(port, n), desc);
-       dev->trans_start = jiffies;
 
        if (qmgr_stat_below_low_watermark(txreadyq)) { /* empty */
 #if DEBUG_TX
index b278503771212dd02b59977dba0033957181a587..e2c6f7f4f51c16a36bea5d11daff068200ed125d 100644 (file)
@@ -1506,8 +1506,6 @@ static netdev_tx_t lmc_start_xmit(struct sk_buff *skb,
     /* send now! */
     LMC_CSR_WRITE (sc, csr_txpoll, 0);
 
-    dev->trans_start = jiffies;
-
     spin_unlock_irqrestore(&sc->lmc_lock, flags);
 
     lmc_trace(dev, "lmc_start_xmit_out");
@@ -2103,7 +2101,7 @@ static void lmc_driver_timeout(struct net_device *dev)
     printk("%s: Xmitter busy|\n", dev->name);
 
     sc->extra_stats.tx_tbusy_calls++;
-    if (jiffies - dev->trans_start < TX_TIMEOUT)
+    if (jiffies - dev_trans_start(dev) < TX_TIMEOUT)
            goto bug_out;
 
     /*
@@ -2135,7 +2133,7 @@ static void lmc_driver_timeout(struct net_device *dev)
     sc->lmc_device->stats.tx_errors++;
     sc->extra_stats.tx_ProcTimeout++; /* -baz */
 
-    dev->trans_start = jiffies;
+    dev->trans_start = jiffies; /* prevent tx timeout */
 
 bug_out:
 
index 17502d80b65a95d987102e9da4c05cd5da6c19a6..c6aa66e5b52f34aedd5736e3c7e8c967870c24d2 100644 (file)
@@ -1790,7 +1790,7 @@ static void cpc_tx_timeout(struct net_device *dev)
                           cpc_readb(card->hw.falcbase + card->hw.cpld_reg2) &
                           ~(CPLD_REG2_FALC_LED1 << (2 * ch)));
        }
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
        CPC_UNLOCK(card, flags);
        netif_wake_queue(dev);
 }
@@ -1849,7 +1849,6 @@ static int cpc_queue_xmit(struct sk_buff *skb, struct net_device *dev)
        if (d->trace_on) {
                cpc_trace(dev, skb, 'T');
        }
-       dev->trans_start = jiffies;
 
        /* Start transmission */
        CPC_LOCK(card, flags);
index 541c700dceef44b84d54f06db8c2797073bc3b3f..db73a7be199f0183fef7f40fa50c013b1db8d263 100644 (file)
@@ -298,7 +298,6 @@ static netdev_tx_t wanxl_xmit(struct sk_buff *skb, struct net_device *dev)
        desc->stat = PACKET_FULL;
        writel(1 << (DOORBELL_TO_CARD_TX_0 + port->node),
               port->card->plx + PLX_DOORBELL_TO_CARD);
-       dev->trans_start = jiffies;
 
        port->tx_out = (port->tx_out + 1) % TX_BUFFERS;
 
index 3edbbcf0f54837b5c1ef52d870910df86150ab40..c8f7090b27d3a69cc0792b176812bdc28300e867 100644 (file)
@@ -865,7 +865,6 @@ static netdev_tx_t start_tx(struct sk_buff *skb, struct net_device *dev)
 
        /* low bit of first byte of destination tells us if broadcast */
        tx_update_descriptor(priv, *(skb->data) & 0x01, len + 18, buff, TX_PACKET_TYPE_DATA);
-       dev->trans_start = jiffies;
        dev->stats.tx_bytes += len;
 
        spin_unlock_irqrestore(&priv->irqlock, flags);
index 38edad6f24b84caeb464a743d9b507a55384be9c..d9b8ee130c450eb4006cafa411baa7a5b5038f60 100644 (file)
@@ -229,7 +229,7 @@ static void lbs_tx_timeout(struct net_device *dev)
 
        lbs_pr_err("tx watch dog timeout\n");
 
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
 
        if (priv->currenttxskb)
                lbs_send_tx_feedback(priv, 0);
index 52d244ea3d972809f7a528d8077dea7262879505..a9bf658659ebae51d0fe1575b211cbfbdb0ac054 100644 (file)
@@ -147,8 +147,6 @@ netdev_tx_t lbs_hard_start_xmit(struct sk_buff *skb, struct net_device *dev)
        dev->stats.tx_packets++;
        dev->stats.tx_bytes += skb->len;
 
-       dev->trans_start = jiffies;
-
        if (priv->monitormode) {
                /* Keep the skb to echo it back once Tx feedback is
                   received from FW */
index 1d60c7e4392a2ffa86cbf0c977c04f2999fc9522..884a7779fc5f823b96a65e1cbc63fb9cd72a85bd 100644 (file)
@@ -517,7 +517,6 @@ static netdev_tx_t orinoco_xmit(struct sk_buff *skb, struct net_device *dev)
                goto busy;
        }
 
-       dev->trans_start = jiffies;
        stats->tx_bytes += HERMES_802_3_OFFSET + skb->len;
        goto ok;
 
index 64585da8a96c953a99ca23d13cd4f19d3c6a5123..2fc52bc2d7dde40e4d242f9502ddd7d499356277 100644 (file)
@@ -224,8 +224,6 @@ islpci_eth_transmit(struct sk_buff *skb, struct net_device *ndev)
                priv->data_low_tx_full = 1;
        }
 
-       /* set the transmission time */
-       ndev->trans_start = jiffies;
        ndev->stats.tx_packets++;
        ndev->stats.tx_bytes += skb->len;
 
index d9c45bfcee611f7961eaa8bd8e8fb0aa21c75896..73972ee76540135e563dcc817c4f2c47bb6bb2ff 100644 (file)
@@ -941,7 +941,6 @@ static netdev_tx_t ray_dev_start_xmit(struct sk_buff *skb,
        case XMIT_MSG_BAD:
        case XMIT_OK:
        default:
-               dev->trans_start = jiffies;
                dev_kfree_skb(skb);
        }
 
index 65dd502eab0d9ff5ec2b76fd5805b3d11c56ca6b..1e61e6cace90cd966ab85f88e40223140c2e21dd 100644 (file)
@@ -1307,7 +1307,7 @@ static void wl3501_tx_timeout(struct net_device *dev)
                printk(KERN_ERR "%s: Error %d resetting card on Tx timeout!\n",
                       dev->name, rc);
        else {
-               dev->trans_start = jiffies;
+               dev->trans_start = jiffies; /* prevent tx timeout */
                netif_wake_queue(dev);
        }
 }
@@ -1326,7 +1326,6 @@ static netdev_tx_t wl3501_hard_start_xmit(struct sk_buff *skb,
 
        spin_lock_irqsave(&this->lock, flags);
        enabled = wl3501_block_interrupt(this);
-       dev->trans_start = jiffies;
        rc = wl3501_send_pkt(this, skb->data, skb->len);
        if (enabled)
                wl3501_unblock_interrupt(this);
index 1e2b684f8ed44b3670922be31be7f5145a9e37e5..ece86a5d335526ecf5820b18dc6b17112df4b26a 100644 (file)
@@ -827,7 +827,6 @@ static netdev_tx_t zd1201_hard_start_xmit(struct sk_buff *skb,
        } else {
                dev->stats.tx_packets++;
                dev->stats.tx_bytes += skb->len;
-               dev->trans_start = jiffies;
        }
        kfree_skb(skb);
 
@@ -845,7 +844,7 @@ static void zd1201_tx_timeout(struct net_device *dev)
        usb_unlink_urb(zd->tx_urb);
        dev->stats.tx_errors++;
        /* Restart the timeout to quiet the watchdog: */
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
 }
 
 static int zd1201_set_mac_address(struct net_device *dev, void *p)
index 93828d565390f6dcfb61860fa1811f526eaf48ad..a7db68d37ee98c3e3359507ad31630110a55d8f4 100644 (file)
@@ -558,7 +558,7 @@ static void xemaclite_tx_timeout(struct net_device *dev)
        }
 
        /* To exclude tx timeout */
-       dev->trans_start = 0xffffffff - TX_TIMEOUT - TX_TIMEOUT;
+       dev->trans_start = jiffies; /* prevent tx timeout */
 
        /* We're all ready to go. Start the queue */
        netif_wake_queue(dev);
@@ -590,7 +590,7 @@ static void xemaclite_tx_handler(struct net_device *dev)
                        dev->stats.tx_bytes += lp->deferred_skb->len;
                        dev_kfree_skb_irq(lp->deferred_skb);
                        lp->deferred_skb = NULL;
-                       dev->trans_start = jiffies;
+                       dev->trans_start = jiffies; /* prevent tx timeout */
                        netif_wake_queue(dev);
                }
        }
@@ -1054,7 +1054,6 @@ static int xemaclite_send(struct sk_buff *orig_skb, struct net_device *dev)
 
        dev->stats.tx_bytes += len;
        dev_kfree_skb(new_skb);
-       dev->trans_start = jiffies;
 
        return 0;
 }
index dbfef8d70f2dfdf7660496c473308b5302f1b1d9..b9fd2f0cdd3d0cfc61082998c224a70c9a15f2ba 100644 (file)
@@ -587,7 +587,6 @@ static netdev_tx_t znet_send_packet(struct sk_buff *skb, struct net_device *dev)
                }
                spin_unlock_irqrestore (&znet->lock, flags);
 
-               dev->trans_start = jiffies;
                netif_start_queue (dev);
 
                if (znet_debug > 4)