All of lore.kernel.org
 help / color / mirror / Atom feed
* [net-next Patch v5 0/6] octeontx2-pf: HTB offload support
@ 2023-03-26 18:12 Hariprasad Kelam
  2023-03-26 18:12 ` [net-next Patch v5 1/6] sch_htb: Allow HTB priority parameter in offload mode Hariprasad Kelam
                   ` (5 more replies)
  0 siblings, 6 replies; 19+ messages in thread
From: Hariprasad Kelam @ 2023-03-26 18:12 UTC (permalink / raw)
  To: netdev, linux-kernel
  Cc: kuba, davem, willemdebruijn.kernel, andrew, sgoutham, lcherian,
	gakula, jerinj, sbhatta, hkelam, naveenm, edumazet, pabeni, jhs,
	xiyou.wangcong, jiri, maxtram95

octeontx2 silicon and CN10K transmit interface consists of five
transmit levels starting from MDQ, TL4 to TL1. Once packets are
submitted to MDQ, hardware picks all active MDQs using strict
priority, and MDQs having the same priority level are chosen using
round robin. Each packet will traverse MDQ, TL4 to TL1 levels.
Each level contains an array of queues to support scheduling and
shaping.

As HTB supports classful queuing mechanism by supporting rate and
ceil and allow the user to control the absolute bandwidth to
particular classes of traffic the same can be achieved by
configuring shapers and schedulers on different transmit levels.

This series of patches adds support for HTB offload,

Patch1: Allow strict priority parameter in HTB offload mode.

Patch2: Rename existing total tx queues for better readability

Patch3: defines APIs such that the driver can dynamically initialize/
        deinitialize the send queues.

Patch4: Refactors transmit alloc/free calls as preparation for QOS
        offload code.

Patch5: Adds actual HTB offload support.

Patch6: Add documentation about htb offload flow in driver


Hariprasad Kelam (3):
  octeontx2-pf: Rename tot_tx_queues to non_qos_queues
  octeontx2-pf: Refactor schedular queue alloc/free calls
  docs: octeontx2: Add Documentation for QOS

Naveen Mamindlapalli (2):
  sch_htb: Allow HTB priority parameter in offload mode
  octeontx2-pf: Add support for HTB offload

Subbaraya Sundeep (1):
  octeontx2-pf: qos send queues management
-----
v1 -> v2 :
          ensure other drivers won't affect by allowing 'prio'
          a parameter in htb offload mode.

v2 -> v3 :
          1. discard patch supporting devlink to configure TL1 round
             robin priority
          2. replace NL_SET_ERR_MSG with NL_SET_ERR_MSG_MOD
          3. use max3 instead of using max couple of times and use a better
             naming convention in send queue management code.

v3 -> v4:
	  1. fix sparse warnings.
	  2. release mutex lock in error conditions.

v4 -> v5:
	  1. fix pahole reported issues
          2. add documentation for htb offload flow.

 .../ethernet/marvell/octeontx2.rst            |   39 +
 .../ethernet/marvell/octeontx2/af/common.h    |    2 +-
 .../marvell/octeontx2/af/rvu_debugfs.c        |    5 +
 .../ethernet/marvell/octeontx2/af/rvu_nix.c   |   45 +
 .../ethernet/marvell/octeontx2/nic/Makefile   |    2 +-
 .../marvell/octeontx2/nic/otx2_common.c       |  120 +-
 .../marvell/octeontx2/nic/otx2_common.h       |   40 +-
 .../marvell/octeontx2/nic/otx2_ethtool.c      |   31 +-
 .../ethernet/marvell/octeontx2/nic/otx2_pf.c  |  110 +-
 .../ethernet/marvell/octeontx2/nic/otx2_reg.h |   13 +
 .../ethernet/marvell/octeontx2/nic/otx2_tc.c  |    7 +-
 .../marvell/octeontx2/nic/otx2_txrx.c         |   24 +-
 .../marvell/octeontx2/nic/otx2_txrx.h         |    3 +-
 .../ethernet/marvell/octeontx2/nic/otx2_vf.c  |   13 +-
 .../net/ethernet/marvell/octeontx2/nic/qos.c  | 1460 +++++++++++++++++
 .../net/ethernet/marvell/octeontx2/nic/qos.h  |   69 +
 .../ethernet/marvell/octeontx2/nic/qos_sq.c   |  304 ++++
 .../net/ethernet/mellanox/mlx5/core/en/qos.c  |    7 +-
 include/net/pkt_cls.h                         |    1 +
 net/sched/sch_htb.c                           |    7 +-
 20 files changed, 2197 insertions(+), 105 deletions(-)
 create mode 100644 drivers/net/ethernet/marvell/octeontx2/nic/qos.c
 create mode 100644 drivers/net/ethernet/marvell/octeontx2/nic/qos.h
 create mode 100644 drivers/net/ethernet/marvell/octeontx2/nic/qos_sq.c

--
2.17.1

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

end of thread, other threads:[~2023-03-29 18:03 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-03-26 18:12 [net-next Patch v5 0/6] octeontx2-pf: HTB offload support Hariprasad Kelam
2023-03-26 18:12 ` [net-next Patch v5 1/6] sch_htb: Allow HTB priority parameter in offload mode Hariprasad Kelam
2023-03-28 14:44   ` Simon Horman
2023-03-26 18:12 ` [net-next Patch v5 2/6] octeontx2-pf: Rename tot_tx_queues to non_qos_queues Hariprasad Kelam
2023-03-28 14:44   ` Simon Horman
2023-03-26 18:12 ` [net-next Patch v5 3/6] octeontx2-pf: qos send queues management Hariprasad Kelam
2023-03-28 14:43   ` Simon Horman
2023-03-29 17:19     ` Hariprasad Kelam
2023-03-26 18:12 ` [net-next Patch v5 4/6] octeontx2-pf: Refactor schedular queue alloc/free calls Hariprasad Kelam
2023-03-28 14:44   ` Simon Horman
2023-03-26 18:12 ` [net-next Patch v5 5/6] octeontx2-pf: Add support for HTB offload Hariprasad Kelam
2023-03-28 10:56   ` Paolo Abeni
2023-03-29 16:44     ` Hariprasad Kelam
2023-03-28 14:41   ` Simon Horman
2023-03-29 17:17     ` Hariprasad Kelam
2023-03-28 18:42   ` Maxim Mikityanskiy
2023-03-29 18:03     ` Hariprasad Kelam
2023-03-26 18:12 ` [net-next Patch v5 6/6] docs: octeontx2: Add Documentation for QOS Hariprasad Kelam
2023-03-28 14:45   ` Simon Horman

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.