mbox series

[v3,net-next,0/2] net: prepare pacing offload support

Message ID 20241003121219.2396589-1-edumazet@google.com (mailing list archive)
Headers show
Series net: prepare pacing offload support | expand

Message

Eric Dumazet Oct. 3, 2024, 12:12 p.m. UTC
Some network devices have the ability to offload EDT (Earliest
Departure Time) which is the model used for TCP pacing and FQ
packet scheduler.

Some of them implement the timing wheel mechanism described in
https://saeed.github.io/files/carousel-sigcomm17.pdf
with an associated 'timing wheel horizon'.

In order to upstream the NIC support, this series adds :

1) timing wheel horizon as a per-device attribute.

2) FQ packet scheduler support, to let paced packets
   below the timing wheel horizon be handled by the driver.

v3: added yaml doc per Jakub feedback.
v2: addressed Jakub feedback
   ( https://lore.kernel.org/netdev/20240930152304.472767-2-edumazet@google.com/T/#mf6294d714c41cc459962154cc2580ce3c9693663 )

Eric Dumazet (1):
  net: add IFLA_MAX_PACING_OFFLOAD_HORIZON device attribute

Jeffrey Ji (1):
  net_sched: sch_fq: add the ability to offload pacing

 Documentation/netlink/specs/rt_link.yaml      |  4 +++
 .../networking/net_cachelines/net_device.rst  |  1 +
 include/linux/netdevice.h                     |  4 +++
 include/uapi/linux/if_link.h                  |  1 +
 include/uapi/linux/pkt_sched.h                |  2 ++
 net/core/rtnetlink.c                          |  4 +++
 net/sched/sch_fq.c                            | 33 +++++++++++++++----
 tools/include/uapi/linux/if_link.h            |  1 +
 8 files changed, 44 insertions(+), 6 deletions(-)

Comments

patchwork-bot+netdevbpf@kernel.org Oct. 4, 2024, 11:20 p.m. UTC | #1
Hello:

This series was applied to netdev/net-next.git (main)
by Jakub Kicinski <kuba@kernel.org>:

On Thu,  3 Oct 2024 12:12:17 +0000 you wrote:
> Some network devices have the ability to offload EDT (Earliest
> Departure Time) which is the model used for TCP pacing and FQ
> packet scheduler.
> 
> Some of them implement the timing wheel mechanism described in
> https://saeed.github.io/files/carousel-sigcomm17.pdf
> with an associated 'timing wheel horizon'.
> 
> [...]

Here is the summary with links:
  - [v3,net-next,1/2] net: add IFLA_MAX_PACING_OFFLOAD_HORIZON device attribute
    https://git.kernel.org/netdev/net-next/c/f858cc9eed5b
  - [v3,net-next,2/2] net_sched: sch_fq: add the ability to offload pacing
    https://git.kernel.org/netdev/net-next/c/f26080d47007

You are awesome, thank you!