]> git.baikalelectronics.ru Git - kernel.git/commit
Merge branch 'dsa-felix-fixes'
authorDavid S. Miller <davem@davemloft.net>
Wed, 7 Sep 2022 12:44:04 +0000 (13:44 +0100)
committerDavid S. Miller <davem@davemloft.net>
Wed, 7 Sep 2022 12:44:04 +0000 (13:44 +0100)
commit8aa08336ec732b68cf48934dc32ef451d3cb037c
tree76345a71558bc55469a3bf04dd39f975c54a8545
parentfc39cd31deee5f0b77e36f01365cd81f9a088118
parentf26f296c041cddac11117294d6f5c3f890bab04e
Merge branch 'dsa-felix-fixes'

Vladimir Oltean says:

====================
Fixes for Felix DSA driver calculation of tc-taprio guard bands

This series fixes some bugs which are not quite new, but date from v5.13
when static guard bands were enabled by Michael Walle to prevent
tc-taprio overruns.

The investigation started when Xiaoliang asked privately what is the
expected max SDU for a traffic class when its minimum gate interval is
10 us. The answer, as it turns out, is not an L1 size of 1250 octets,
but 1245 octets, since otherwise, the switch will not consider frames
for egress scheduling, because the static guard band is exactly as large
as the time interval. The switch needs a minimum of 33 ns outside of the
guard band to consider a frame for scheduling, and the reduction of the
max SDU by 5 provides exactly for that.

The fix for that (patch 1/3) is relatively small, but during testing, it
became apparent that cut-through forwarding prevents oversized frame
dropping from working properly. This is solved through the larger patch
2/3. Finally, patch 3/3 fixes one more tc-taprio locking problem found
through code inspection.
====================

Signed-off-by: David S. Miller <davem@davemloft.net>