Hi,

there is a problem with the software implementation of TAPRIO and TCP
communication. When using short intervals e.g. below one millisecond, large
packets won't be transmitted. That's because the software implementation takes
the packet length and calculates the transmission time. If the transmission time
is larger than the configured interval, no packet will be transmitted. Fix that
by segmenting the skb for the software implementation.

Tested with software only and full hardware offloading applied using iperf3.

Vinicius, do you mind testing as well?

Changes since RFC:

 * Move segmentation, so that timestamps for tx assisted mode are
   calculated for the segments
 * Skip it for the full hardware offloading case

Previous versions:

 * https://lkml.kernel.org/netdev/20210312092823.1429-1-k...@linutronix.de/

Kurt Kanzenbach (1):
  taprio: Handle short intervals and large packets

 net/sched/sch_taprio.c | 64 +++++++++++++++++++++++++++++++++++-------
 1 file changed, 54 insertions(+), 10 deletions(-)

-- 
2.20.1

Reply via email to