net: Pass a "more" indication down into netdev_start_xmit() code paths.
authorDavid S. Miller <davem@davemloft.net>
Sat, 30 Aug 2014 04:55:22 +0000 (21:55 -0700)
committerDavid S. Miller <davem@davemloft.net>
Tue, 2 Sep 2014 00:39:55 +0000 (17:39 -0700)
For now it will always be false.

Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/wan/dlci.c
include/linux/netdevice.h
net/atm/mpc.c
net/core/dev.c
net/core/netpoll.c
net/core/pktgen.c
net/packet/af_packet.c
net/sched/sch_teql.c

index 6427e828341959b9a3ee4a6fe4354c74d3277375..ae6ecf4011892f4fa50861cfff6ee4bf158639fe 100644 (file)
@@ -194,7 +194,7 @@ static netdev_tx_t dlci_transmit(struct sk_buff *skb, struct net_device *dev)
 
        if (skb) {
                struct netdev_queue *txq = skb_get_tx_queue(dev, skb);
-               netdev_start_xmit(skb, dlp->slave, txq);
+               netdev_start_xmit(skb, dlp->slave, txq, false);
        }
        return NETDEV_TX_OK;
 }
index 16171802ea7d1ba9628c4fdfe62a6ad5ebd25df5..5050218c5b7f402d1a4904390bb1a8c30e937ef6 100644 (file)
@@ -3431,19 +3431,20 @@ int __init dev_proc_init(void);
 #endif
 
 static inline netdev_tx_t __netdev_start_xmit(const struct net_device_ops *ops,
-                                             struct sk_buff *skb, struct net_device *dev)
+                                             struct sk_buff *skb, struct net_device *dev,
+                                             bool more)
 {
-       skb->xmit_more = 0;
+       skb->xmit_more = more ? 1 : 0;
        return ops->ndo_start_xmit(skb, dev);
 }
 
 static inline netdev_tx_t netdev_start_xmit(struct sk_buff *skb, struct net_device *dev,
-                                           struct netdev_queue *txq)
+                                           struct netdev_queue *txq, bool more)
 {
        const struct net_device_ops *ops = dev->netdev_ops;
        int rc;
 
-       rc = __netdev_start_xmit(ops, skb, dev);
+       rc = __netdev_start_xmit(ops, skb, dev, more);
        if (rc == NETDEV_TX_OK)
                txq_trans_update(txq);
 
index d662da161e5a40c84ffd4764897bcbcf056fa8ce..0e982222d4255dbbc5ec9818e65af1145e086a03 100644 (file)
@@ -599,7 +599,7 @@ static netdev_tx_t mpc_send_packet(struct sk_buff *skb,
        }
 
 non_ip:
-       return __netdev_start_xmit(mpc->old_ops, skb, dev);
+       return __netdev_start_xmit(mpc->old_ops, skb, dev, false);
 }
 
 static int atm_mpoa_vcc_attach(struct atm_vcc *vcc, void __user *arg)
index ab7bb809711e38a1b3369a4ba078f85cb179abf7..f0ed5a611a979750f0af684c6625fffb79f835e6 100644 (file)
@@ -2610,7 +2610,7 @@ static int xmit_one(struct sk_buff *skb, struct net_device *dev,
 
        len = skb->len;
        trace_net_dev_start_xmit(skb, dev);
-       rc = netdev_start_xmit(skb, dev, txq);
+       rc = netdev_start_xmit(skb, dev, txq, false);
        trace_net_dev_xmit(skb, rc, dev, len);
 
        return rc;
index 05bc57edaa81bd35cb7f9c7ac533168f9f00e0fa..e6645b4f330af1d16607ca0d6d9c9c95fd163dc6 100644 (file)
@@ -91,7 +91,7 @@ static int netpoll_start_xmit(struct sk_buff *skb, struct net_device *dev,
                skb->vlan_tci = 0;
        }
 
-       status = netdev_start_xmit(skb, dev, txq);
+       status = netdev_start_xmit(skb, dev, txq, false);
 
 out:
        return status;
index 34bd2ff9f1219394d3556712681b8cc257b76c8e..5b36a9428c596e76a2c02ef4d693a8297ca69207 100644 (file)
@@ -3335,7 +3335,7 @@ static void pktgen_xmit(struct pktgen_dev *pkt_dev)
                goto unlock;
        }
        atomic_inc(&(pkt_dev->skb->users));
-       ret = netdev_start_xmit(pkt_dev->skb, odev, txq);
+       ret = netdev_start_xmit(pkt_dev->skb, odev, txq, false);
 
        switch (ret) {
        case NETDEV_TX_OK:
index fe305a05a8fc4a15edc4688453209de7a55a8f95..87d20f48ff06195766e8ecd20a3fcfae5ccae690 100644 (file)
@@ -259,7 +259,7 @@ static int packet_direct_xmit(struct sk_buff *skb)
 
        HARD_TX_LOCK(dev, txq, smp_processor_id());
        if (!netif_xmit_frozen_or_drv_stopped(txq))
-               ret = netdev_start_xmit(skb, dev, txq);
+               ret = netdev_start_xmit(skb, dev, txq, false);
        HARD_TX_UNLOCK(dev, txq);
 
        local_bh_enable();
index 193dc2cba1ec5a71d4a62da432fd470e3a31c8a6..aaa8d03ed054789f36e184b314d75ba1fd27c6c7 100644 (file)
@@ -316,7 +316,8 @@ restart:
                                unsigned int length = qdisc_pkt_len(skb);
 
                                if (!netif_xmit_frozen_or_stopped(slave_txq) &&
-                                   netdev_start_xmit(skb, slave, slave_txq) == NETDEV_TX_OK) {
+                                   netdev_start_xmit(skb, slave, slave_txq, false) ==
+                                   NETDEV_TX_OK) {
                                        __netif_tx_unlock(slave_txq);
                                        master->slaves = NEXT_SLAVE(q);
                                        netif_wake_queue(dev);