net: add dev_queue_xmit_list() and use it
Add listified skb tx path and use it from the flowtable datapath.
Use helper function to build dev_queue_xmit_list().
A few notes:
- I removed:
if (unlikely(skb_shinfo(skb)->tx_flags & SKBTX_SCHED_TSTAMP))
return -1;
Only possible if skb->sk is set on, if my assumption is not correct, this
can be checked from flowtable path.
Reducing the size of dev_queue_xmit_list() is convenient, to focus only
on speeding up what it can be really speed up, so let's return -1 if
either:
- qdisc is not empty
OR
- qdisc is not work-conserving (no TCQ_F_CAN_BYPASS is set on)
Then, the flowtable falls back to call dev_queue_xmit() for each single
skbuff.
Joint work with Stefen Klassert.
3 files changed