All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 net 0/3] net: bql: better deal with GSO
@ 2018-10-31 15:39 Eric Dumazet
  2018-10-31 15:39 ` [PATCH v2 net 1/3] net: bql: add __netdev_tx_sent_queue() Eric Dumazet
                   ` (3 more replies)
  0 siblings, 4 replies; 10+ messages in thread
From: Eric Dumazet @ 2018-10-31 15:39 UTC (permalink / raw)
  To: David S . Miller
  Cc: netdev, Tariq Toukan, Willem de Bruijn, Eric Dumazet, Eric Dumazet

While BQL bulk dequeue works well for TSO packets, it is
not very efficient as soon as GSO is involved.

On a GSO only workload (UDP or TCP), this patch series
can save about 8 % of cpu cycles on a 40Gbit mlx4 NIC,
by keeping optimal batching, and avoiding expensive
doorbells, qdisc requeues and reschedules.

This patch series :

- Add __netdev_tx_sent_queue() so that drivers
  can implement efficient BQL and xmit_more support.

- Implement a work around in dev_hard_start_xmit()
  for drivers not using __netdev_tx_sent_queue()

- changes mlx4 to use __netdev_tx_sent_queue()

v2: Tariq and Willem feedback addressed.
    added __netdev_tx_sent_queue() (Willem suggestion)


Eric Dumazet (3):
  net: bql: add __netdev_tx_sent_queue()
  net: do not abort bulk send on BQL status
  net/mlx4_en: use __netdev_tx_sent_queue()

 drivers/net/ethernet/mellanox/mlx4/en_tx.c |  6 ++++--
 include/linux/netdevice.h                  | 20 ++++++++++++++++++++
 net/core/dev.c                             |  2 +-
 3 files changed, 25 insertions(+), 3 deletions(-)

-- 
2.19.1.930.g4563a0d9d0-goog

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2018-11-07  4:08 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-10-31 15:39 [PATCH v2 net 0/3] net: bql: better deal with GSO Eric Dumazet
2018-10-31 15:39 ` [PATCH v2 net 1/3] net: bql: add __netdev_tx_sent_queue() Eric Dumazet
2018-10-31 15:39 ` [PATCH v2 net 2/3] net: do not abort bulk send on BQL status Eric Dumazet
2018-10-31 15:39 ` [PATCH v2 net 3/3] net/mlx4_en: use __netdev_tx_sent_queue() Eric Dumazet
2018-11-01  9:19   ` Tariq Toukan
2018-11-03 22:40 ` [PATCH v2 net 0/3] net: bql: better deal with GSO David Miller
2018-11-03 23:00   ` Eric Dumazet
2018-11-04  0:26     ` David Miller
2018-11-06 18:23   ` Edward Cree
2018-11-06 18:41     ` David Miller

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.