Commit 8dcda22a authored by David S. Miller's avatar David S. Miller

net: xmit_list() becomes dev_hard_start_xmit().

Now fundamentally we can process lists of SKBs as cheaply
as single packets.
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent ce93718f
...@@ -2570,7 +2570,7 @@ static int xmit_one(struct sk_buff *skb, struct net_device *dev, ...@@ -2570,7 +2570,7 @@ static int xmit_one(struct sk_buff *skb, struct net_device *dev,
return rc; return rc;
} }
static struct sk_buff *xmit_list(struct sk_buff *first, struct net_device *dev, struct sk_buff *dev_hard_start_xmit(struct sk_buff *first, struct net_device *dev,
struct netdev_queue *txq, int *ret) struct netdev_queue *txq, int *ret)
{ {
struct sk_buff *skb = first; struct sk_buff *skb = first;
...@@ -2673,17 +2673,6 @@ struct sk_buff *validate_xmit_skb(struct sk_buff *skb, struct net_device *dev) ...@@ -2673,17 +2673,6 @@ struct sk_buff *validate_xmit_skb(struct sk_buff *skb, struct net_device *dev)
return NULL; return NULL;
} }
struct sk_buff *dev_hard_start_xmit(struct sk_buff *skb, struct net_device *dev,
struct netdev_queue *txq, int *ret)
{
if (likely(!skb->next)) {
*ret = xmit_one(skb, dev, txq, false);
return skb;
}
return xmit_list(skb, dev, txq, ret);
}
static void qdisc_pkt_len_init(struct sk_buff *skb) static void qdisc_pkt_len_init(struct sk_buff *skb)
{ {
const struct skb_shared_info *shinfo = skb_shinfo(skb); const struct skb_shared_info *shinfo = skb_shinfo(skb);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment