Re: [PATCH net-next v1 3/5] net: stmmac: support fp parameter of tc-taprio
From: Vladimir Oltean <olteanv@gmail.com>
Date: 2024-08-01 23:29:42
Also in:
linux-arm-kernel, lkml
On Wed, Jul 31, 2024 at 06:43:14PM +0800, Furong Xu wrote:
tc-taprio can select whether traffic classes are express or preemptible.
After some traffic tests, MAC merge layer statistics are all good.
Local device:
ethtool --include-statistics --json --show-mm eth1
[ {
"ifname": "eth1",
"pmac-enabled": true,
"tx-enabled": true,
"tx-active": true,
"tx-min-frag-size": 60,
"rx-min-frag-size": 60,
"verify-enabled": true,
"verify-time": 100,
"max-verify-time": 128,
"verify-status": "SUCCEEDED",
"statistics": {
"MACMergeFrameAssErrorCount": 0,
"MACMergeFrameSmdErrorCount": 0,
"MACMergeFrameAssOkCount": 0,
"MACMergeFragCountRx": 0,
"MACMergeFragCountTx": 1398,
"MACMergeHoldCount": 15783In order for readers to really understand this output (including me), could you also post the associated tc-taprio command, please? You deleted the code that treated the Set-And-Hold-MAC GCL command - and according to 802.1Q, that is the only source of Hold requests. I _think_ that as a side effect of your reimplementation, every time the gate for TC 0 opens, the HoldCount bumps by one. Would that be a correct description? The more unfortunate part is that I haven't yet come across a NIC hardware design that would behave completely as you'd expect w.r.t. Hold requests. In the case of DWMAC, I would expect that with a taprio schedule that lacks any Set-And-Hold-MAC command, the HoldCount would stay at zero. I'm not sure, given the way they piggy back onto gate 0 for Hold/Release, that this is possible :( At least HoldCount stays constant with a tc-mqprio offload, right?
}
} ]