public inbox for netdev@vger.kernel.org
 help / color / mirror / Atom feed
* [pull request][net-next 00/13] Mellanox, mlx5 updates 2018-07-27 (Vxlan updates)
@ 2018-07-27 21:15 Saeed Mahameed
  2018-07-27 21:15 ` [net-next 01/13] net/mlx5e: Vxlan, reflect 4789 UDP port default addition to software database Saeed Mahameed
                   ` (12 more replies)
  0 siblings, 13 replies; 16+ messages in thread
From: Saeed Mahameed @ 2018-07-27 21:15 UTC (permalink / raw)
  To: David S. Miller; +Cc: netdev, Saeed Mahameed

Hi Dave,

This series from Gal and Saeed provides updates to mlx5 vxlan implementation.

For more information please see tag log below.

Please pull and let me know if there's any problem.

Thanks,
Saeed.

---

The following changes since commit 1f3ed383fb9a073ae2e408cd7a0717b04c7c3a21:

  net: sched: don't dump chains only held by actions (2018-07-27 09:38:46 -0700)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/saeed/linux.git tags/mlx5e-updates-2018-07-27

for you to fetch changes up to 50920f3f268405af2b047ae9277efdbf4ed7510f:

  net/mlx5e: Issue direct lookup on vxlan ports by vport representors (2018-07-27 13:57:55 -0700)

----------------------------------------------------------------
mlx5e-updates-2018-07-27 (Vxlan updates)

This series from Gal and Saeed provides updates to mlx5 vxlan implementation.

Gal, started with three cleanups to reflect the actual hardware vxlan state
- reflect 4789 UDP port default addition to software database
- check maximum number of vxlan  UDP ports
- cleanup an unused member in vxlan work

Then Gal provides two performance optimizations by replacing the
vxlan radix tree with a hash table, and replacing the vxlan table
spin lock with a read-write lock.

Measuring mlx5e_vxlan_lookup_port execution time:

                      Radix Tree   Hash Table
     --------------- ------------ ------------
      Single Stream   161 ns       79  ns (51% improvement)
      Multi Stream    259 ns       136 ns (47% improvement)

    Measuring UDP stream packet rate, single fully utilized TX core:
    Radix Tree: 498,300 PPS
    Hash Table: 555,468 PPS (11% improvement)

Next, from Saeed, vxlan refactoring to allow sharing the vxlan table
between different mlx5 netdevice instances like PF and VF representors,
this is done by making mlx5 vxlan interface more generic and decoupling
it from PF netdevice structures and logic, then moving it into mlx5 core
as a low level interface so it can be used by VF representors, which is
illustrated in the last patch of the serious.

-Saeed.

----------------------------------------------------------------
Gal Pressman (5):
      net/mlx5e: Vxlan, reflect 4789 UDP port default addition to software database
      net/mlx5e: Vxlan, check maximum number of UDP ports
      net/mlx5e: Vxlan, replace ports radix-tree with hash table
      net/mlx5e: Vxlan, replace spinlock with read-write lock
      net/mlx5e: Vxlan, cleanup an unused member in vxlan work

Saeed Mahameed (8):
      net/mlx5e: Vxlan, add direct delete function
      net/mlx5e: Vxlan, move netdev only logic to en_main.c
      net/mlx5e: Vxlan, rename struct mlx5e_vxlan to mlx5_vxlan_port
      net/mlx5e: Vxlan, rename from mlx5e to mlx5
      net/mlx5e: Vxlan, return values for add/del port
      net/mlx5e: Vxlan, add sync lock for add/del vxlan port
      net/mlx5e: Vxlan, move vxlan logic to core driver
      net/mlx5e: Issue direct lookup on vxlan ports by vport representors

 drivers/net/ethernet/mellanox/mlx5/core/Makefile   |   4 +-
 drivers/net/ethernet/mellanox/mlx5/core/en.h       |   6 -
 drivers/net/ethernet/mellanox/mlx5/core/en_main.c  |  71 ++++++-
 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c    |  14 +-
 .../net/ethernet/mellanox/mlx5/core/lib/vxlan.c    | 230 +++++++++++++++++++++
 .../ethernet/mellanox/mlx5/core/{ => lib}/vxlan.h  |  39 ++--
 drivers/net/ethernet/mellanox/mlx5/core/main.c     |   5 +
 drivers/net/ethernet/mellanox/mlx5/core/vxlan.c    | 190 -----------------
 include/linux/mlx5/driver.h                        |   2 +
 include/linux/mlx5/mlx5_ifc.h                      |   4 +-
 10 files changed, 325 insertions(+), 240 deletions(-)
 create mode 100644 drivers/net/ethernet/mellanox/mlx5/core/lib/vxlan.c
 rename drivers/net/ethernet/mellanox/mlx5/core/{ => lib}/vxlan.h (66%)
 delete mode 100644 drivers/net/ethernet/mellanox/mlx5/core/vxlan.c

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

end of thread, other threads:[~2018-07-27 23:53 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-07-27 21:15 [pull request][net-next 00/13] Mellanox, mlx5 updates 2018-07-27 (Vxlan updates) Saeed Mahameed
2018-07-27 21:15 ` [net-next 01/13] net/mlx5e: Vxlan, reflect 4789 UDP port default addition to software database Saeed Mahameed
2018-07-27 21:15 ` [net-next 02/13] net/mlx5e: Vxlan, check maximum number of UDP ports Saeed Mahameed
2018-07-27 21:15 ` [net-next 03/13] net/mlx5e: Vxlan, replace ports radix-tree with hash table Saeed Mahameed
2018-07-27 21:15 ` [net-next 04/13] net/mlx5e: Vxlan, replace spinlock with read-write lock Saeed Mahameed
2018-07-27 21:48   ` Stephen Hemminger
2018-07-27 22:29     ` Saeed Mahameed
2018-07-27 21:15 ` [net-next 05/13] net/mlx5e: Vxlan, cleanup an unused member in vxlan work Saeed Mahameed
2018-07-27 21:15 ` [net-next 06/13] net/mlx5e: Vxlan, add direct delete function Saeed Mahameed
2018-07-27 21:15 ` [net-next 07/13] net/mlx5e: Vxlan, move netdev only logic to en_main.c Saeed Mahameed
2018-07-27 21:15 ` [net-next 08/13] net/mlx5e: Vxlan, rename struct mlx5e_vxlan to mlx5_vxlan_port Saeed Mahameed
2018-07-27 21:15 ` [net-next 09/13] net/mlx5e: Vxlan, rename from mlx5e to mlx5 Saeed Mahameed
2018-07-27 21:15 ` [net-next 10/13] net/mlx5e: Vxlan, return values for add/del port Saeed Mahameed
2018-07-27 21:15 ` [net-next 11/13] net/mlx5e: Vxlan, add sync lock for add/del vxlan port Saeed Mahameed
2018-07-27 21:15 ` [net-next 12/13] net/mlx5e: Vxlan, move vxlan logic to core driver Saeed Mahameed
2018-07-27 21:15 ` [net-next 13/13] net/mlx5e: Issue direct lookup on vxlan ports by vport representors Saeed Mahameed

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox