1
0
Fork 0
mirror of synced 2025-03-06 20:59:54 +01:00
linux/Documentation/netlink/specs
Vladimir Oltean 6a128cdf19 net: ethtool: ts: add separate counter for unconfirmed one-step TX timestamps
For packets with two-step timestamp requests, the hardware timestamp
comes back to the driver through a confirmation mechanism of sorts,
which allows the driver to confidently bump the successful "pkts"
counter.

For one-step PTP, the NIC is supposed to autonomously insert its
hardware TX timestamp in the packet headers while simultaneously
transmitting it. There may be a confirmation that this was done
successfully, or there may not.

None of the current drivers which implement ethtool_ops :: get_ts_stats()
also support HWTSTAMP_TX_ONESTEP_SYNC or HWTSTAMP_TX_ONESTEP_SYNC, so it
is a bit unclear which model to follow. But there are NICs, such as DSA,
where there is no transmit confirmation at all. Here, it would be wrong /
misleading to increment the successful "pkts" counter, because one-step
PTP packets can be dropped on TX just like any other packets.

So introduce a special counter which signifies "yes, an attempt was made,
but we don't know whether it also exited the port or not". I expect that
for one-step PTP packets where a confirmation is available, the "pkts"
counter would be bumped.

Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Reviewed-by: Jakub Kicinski <kuba@kernel.org>
Link: https://patch.msgid.link/20250116104628.123555-2-vladimir.oltean@nxp.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-01-17 20:01:09 -08:00
..
devlink.yaml devlink: Fix length of eswitch inline-mode 2024-03-11 13:13:53 -07:00
dpll.yaml dpll: add clock quality level attribute and op 2024-11-03 08:39:07 -08:00
ethtool.yaml net: ethtool: ts: add separate counter for unconfirmed one-step TX timestamps 2025-01-17 20:01:09 -08:00
fou.yaml netlink: specs: fix indent in fou 2023-08-24 19:04:20 -07:00
handshake.yaml handshake: Fix sign of key_serial_t fields 2023-10-02 12:34:21 -07:00
mptcp_pm.yaml netlink: specs: mptcp: fix missing doc 2024-12-27 11:16:21 -08:00
net_shaper.yaml netlink: spec: add shaper introspection support 2024-10-10 08:30:22 -07:00
netdev.yaml net: Add napi_struct parameter irq_suspend_timeout 2024-11-11 18:45:05 -08:00
nfsd.yaml nfsd: new netlink ops to get/set server pool_mode 2024-07-08 14:10:05 -04:00
nftables.yaml netlink: specs: nftables: allow decode of tailscale ruleset 2024-09-05 18:43:56 -07:00
nlctrl.yaml ynl: rename array-nest to indexed-array 2024-04-05 22:32:49 -07:00
ovs_datapath.yaml netlink: specs: ovs: correct enum names in specs 2023-12-15 12:17:16 +00:00
ovs_flow.yaml net: openvswitch: add psample action 2024-07-05 17:45:47 -07:00
ovs_vport.yaml netlink: specs: ovs: remove fixed header fields from attrs 2023-12-15 12:17:16 +00:00
rt_addr.yaml doc/netlink: Add spec for rt addr messages 2023-08-27 17:17:10 -07:00
rt_link.yaml netlink: specs: rt_link: decode ip6tnl, vti and vti6 link attrs 2025-01-07 18:07:53 -08:00
rt_neigh.yaml netlink: specs: Add a spec for neighbor tables in rtnetlink 2024-11-07 20:34:51 -08:00
rt_route.yaml netlink: specs: Add route flow label attribute 2024-12-19 16:02:22 +01:00
rt_rule.yaml netlink: specs: Add FIB rule flow label attributes 2024-12-19 16:02:22 +01:00
tc.yaml tc: fix typo probabilty in tc.yaml doc 2024-11-09 09:43:13 -08:00
tcp_metrics.yaml tcp_metrics: add netlink protocol spec in YAML 2024-07-01 09:44:27 +01:00
team.yaml Documentation: netlink: add a YAML spec for team 2024-04-02 18:24:32 -07:00