diff options
author | Vladimir Oltean <vladimir.oltean@nxp.com> | 2022-11-22 16:09:36 +0300 |
---|---|---|
committer | Jakub Kicinski <kuba@kernel.org> | 2022-11-24 07:17:54 +0300 |
commit | 290b5fe096e7dd0aad730d1af4f7f2d9fea43e11 (patch) | |
tree | 48ed00d4e1b13ea5102124f2bbabeb9e932ac21c /tools/perf/scripts/python/stackcollapse.py | |
parent | 9a234a2a085ab9fd2be8d0c1eedfcd10f74b97eb (diff) | |
download | linux-290b5fe096e7dd0aad730d1af4f7f2d9fea43e11.tar.xz |
net: enetc: preserve TX ring priority across reconfiguration
In the blamed commit, a rudimentary reallocation procedure for RX buffer
descriptors was implemented, for the situation when their format changes
between normal (no PTP) and extended (PTP).
enetc_hwtstamp_set() calls enetc_close() and enetc_open() in a sequence,
and this sequence loses information which was previously configured in
the TX BDR Mode Register, specifically via the enetc_set_bdr_prio() call.
The TX ring priority is configured by tc-mqprio and tc-taprio, and
affects important things for TSN such as the TX time of packets. The
issue manifests itself most visibly by the fact that isochron --txtime
reports premature packet transmissions when PTP is first enabled on an
enetc interface.
Save the TX ring priority in a new field in struct enetc_bdr (occupies a
2 byte hole on arm64) in order to make this survive a ring reconfiguration.
Fixes: 434cebabd3a2 ("enetc: Add dynamic allocation of extended Rx BD rings")
Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Reviewed-by: Alexander Lobakin <alexandr.lobakin@intel.com>
Link: https://lore.kernel.org/r/20221122130936.1704151-1-vladimir.oltean@nxp.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'tools/perf/scripts/python/stackcollapse.py')
0 files changed, 0 insertions, 0 deletions