diff options
author | Vladimir Oltean <vladimir.oltean@nxp.com> | 2023-02-07 15:54:40 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2023-02-08 09:48:53 +0000 |
commit | 39b02d6d104a285836d98be2ad00c7f484d43a16 (patch) | |
tree | f826db8f5546c5c07d4683750ec25e81b501097a /drivers/net/ethernet/intel/igc/igc_main.c | |
parent | 2d5e8071c47a03218f3f658ed13b8a9ff703b396 (diff) |
net/sched: taprio: don't segment unnecessarily
Improve commit 497cc00224cf ("taprio: Handle short intervals and large
packets") to only perform segmentation when skb->len exceeds what
taprio_dequeue() expects.
In practice, this will make the biggest difference when a traffic class
gate is always open in the schedule. This is because the max_frm_len
will be U32_MAX, and such large skb->len values as Kurt reported will be
sent just fine unsegmented.
What I don't seem to know how to handle is how to make sure that the
segmented skbs themselves are smaller than the maximum frame size given
by the current queueMaxSDU[tc]. Nonetheless, we still need to drop
those, otherwise the Qdisc will hang.
Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Reviewed-by: Kurt Kanzenbach <kurt@linutronix.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/intel/igc/igc_main.c')
0 files changed, 0 insertions, 0 deletions