|
Revision tags: v24.11, v24.11-rc4, v24.11-rc3, v24.11-rc2, v24.11-rc1 |
|
| #
d916d27e |
| 26-Sep-2024 |
Jie Hai <haijie1@huawei.com> |
ethdev: add telemetry command for registers
This patch adds a telemetry command for registers dump, and supports obtaining the registers of a specified module.
In one way, the number of registers t
ethdev: add telemetry command for registers
This patch adds a telemetry command for registers dump, and supports obtaining the registers of a specified module.
In one way, the number of registers that can be exported is limited by the number of elements carried by dict and container. In another way, the length of the string exported by telemetry is limited by MAX_OUTPUT_LEN. Therefore, when the number of registers to be exported exceeds, some information will be lost. Warn on the former case.
An example usage is shown below: --> /ethdev/regs,0,ring { "/ethdev/regs": { "registers_length": 318, "registers_width": 4, "register_offset": "0x0", "version": "0x1140011", "group_0": { "Q0_ring_rx_bd_num": "0x0", "Q0_ring_rx_bd_len": "0x0", ... }, "group_1": { ... }, ... }
Signed-off-by: Jie Hai <haijie1@huawei.com> Reviewed-by: Ferruh Yigit <ferruh.yigit@amd.com> Acked-by: Chengwen Feng <fengchengwen@huawei.com>
show more ...
|
| #
6f96937d |
| 14-Oct-2024 |
Robin Jarry <rjarry@redhat.com> |
ethdev: fix race on ports in telemetry endpoints
While invoking telemetry commands (which may happen at any time, out of control of the application), an application thread may concurrently add/remov
ethdev: fix race on ports in telemetry endpoints
While invoking telemetry commands (which may happen at any time, out of control of the application), an application thread may concurrently add/remove ports. The telemetry callbacks may then access partially initialized/uninitialised ethdev data.
Reuse the ethdev lock that protects port allocation/destruction and the new telemetry callback register api that takes an additional private argument. Pass eth_dev_telemetry_do as the main callback and the actual endpoint callbacks as private argument.
Fixes: c190daedb9b1 ("ethdev: add telemetry callbacks") Cc: stable@dpdk.org
Signed-off-by: Robin Jarry <rjarry@redhat.com> Acked-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Stephen Hemminger <stephen@networkplumber.org>
show more ...
|
|
Revision tags: v24.07, v24.07-rc4, v24.07-rc3, v24.07-rc2, v24.07-rc1, v24.03, v24.03-rc4, v24.03-rc3, v24.03-rc2, v24.03-rc1 |
|
| #
0e21c7c0 |
| 07-Dec-2023 |
David Marchand <david.marchand@redhat.com> |
lib: replace logging helpers
This is a preparation step before the next change.
Many libraries have their own logging helpers that do not add a newline in their format string. Some previous changes
lib: replace logging helpers
This is a preparation step before the next change.
Many libraries have their own logging helpers that do not add a newline in their format string. Some previous changes fixed places where some of those helpers are called without a trailing newline. Using RTE_LOG_LINE in the existing helpers will ensure we don't introduce new issues in the future.
The problem is that if we simply convert to the RTE_LOG_LINE helper, a future fix may introduce a regression since the logging helper change won't be backported.
To address this concern, rename existing helpers: backporting a call to them will trigger some conflict or build issue in LTS branches.
Note: - bpf and vhost that still has some debug multilines messages, a direct call to RTE_LOG/RTE_LOG_DP is used: this will make it easier to notice such special cases, - about previously publicly exposed logging helpers, when such helper is not publicly used (iow in public inline API), it is removed from the public API (this is the case for the member library),
Signed-off-by: David Marchand <david.marchand@redhat.com> Reviewed-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
show more ...
|
|
Revision tags: v23.11, v23.11-rc4, v23.11-rc3, v23.11-rc2 |
|
| #
70b1ab3f |
| 18-Oct-2023 |
Jie Hai <haijie1@huawei.com> |
ethdev: add telemetry command for TM node capabilities
This patch adds a telemetry command for traffic management node capabilities, using (port_id, node_id) as parameters. An example usage is shown
ethdev: add telemetry command for TM node capabilities
This patch adds a telemetry command for traffic management node capabilities, using (port_id, node_id) as parameters. An example usage is shown below:
--> /ethdev/tm_node_capability,0,264 { "/ethdev/tm_node_capability": { "shaper_private_supported": 1, "shaper_private_dual_rate_supported": 0, "shaper_private_rate_min": 0, "shaper_private_rate_max": 25000000000, "shaper_private_packet_mode_supported": 0, "shaper_private_byte_mode_supported": 0, "shaper_shared_n_max": 0, "shaper_shared_packet_mode_supported": 0, "shaper_shared_byte_mode_supported": 0, "stats_mask": "0x0", "node_type": "nonleaf", "children_max": 8, "priorities_max": 1, "sched_wfq_n_children_per_group_max": 0, "sched_wfq_n_groups_max": 0, "sched_wfq_weight_max": 1, "sched_wfq_packet_mode_supported": 0, "sched_wfq_byte_mode_supported": 0 } }
Signed-off-by: Jie Hai <haijie1@huawei.com> Acked-by: Ferruh Yigit <ferruh.yigit@amd.com>
show more ...
|
| #
9e7533ae |
| 18-Oct-2023 |
Jie Hai <haijie1@huawei.com> |
ethdev: add telemetry command for TM level capabilities
This patch adds a telemetry command for traffic management level capabilities, using (port_id,level_id) as parameters. An example usage is sho
ethdev: add telemetry command for TM level capabilities
This patch adds a telemetry command for traffic management level capabilities, using (port_id,level_id) as parameters. An example usage is shown below:
--> /ethdev/tm_level_capability,0,0 { "/ethdev/tm_level_capability": { "n_nodes_max": 1, "n_nodes_nonleaf_max": 1, "n_nodes_leaf_max": 0, "non_leaf_nodes_identical": 1, "leaf_nodes_identical": 1, "nonleaf_cap": { "shaper_private_supported": 1, "shaper_private_dual_rate_supported": 0, "shaper_private_rate_min": 0, "shaper_private_rate_max": 25000000000, "shaper_private_packet_mode_supported": 0, "shaper_private_byte_mode_supported": 0, "shaper_shared_n_max": 0, "shaper_shared_packet_mode_supported": 0, "shaper_shared_byte_mode_supported": 0, "sched_n_children_max": 8, "sched_sp_n_priorities_max": 1, "sched_wfq_n_children_per_group_max": 0, "sched_wfq_n_groups_max": 0, "sched_wfq_weight_max": 1, "sched_wfq_packet_mode_supported": 0, "sched_wfq_byte_mode_supported": 0, "stats_mask": "0x0" }, "leaf_cap": { "shaper_private_supported": 1, "shaper_private_dual_rate_supported": 0, "shaper_private_rate_min": 0, "shaper_private_rate_max": 25000000000, "shaper_private_packet_mode_supported": 0, "shaper_private_byte_mode_supported": 0, "shaper_shared_n_max": 0, "shaper_shared_packet_mode_supported": 0, "shaper_shared_byte_mode_supported": 0, "cman_wred_packet_mode_supported": 8, "cman_wred_byte_mode_supported": 1, "cman_head_drop_supported": 0, "cman_wred_context_private_supported": 0, "cman_wred_context_shared_n_max": 1, "stats_mask": "0x0" } } }
Signed-off-by: Jie Hai <haijie1@huawei.com> Acked-by: Ferruh Yigit <ferruh.yigit@amd.com>
show more ...
|
| #
a590d564 |
| 18-Oct-2023 |
Jie Hai <haijie1@huawei.com> |
ethdev: add telemetry command for TM capabilities
This patch adds a telemetry command for traffic management capabilities. An example usage is shown below:
--> /ethdev/tm_capability,0 { "/ethdev/
ethdev: add telemetry command for TM capabilities
This patch adds a telemetry command for traffic management capabilities. An example usage is shown below:
--> /ethdev/tm_capability,0 { "/ethdev/tm_capability": { "n_nodes_max": 265, "n_levels_max": 3, "non_leaf_nodes_identical": 1, "leaf_nodes_identical": 1, "shaper_n_max": 9, "shaper_private_n_max": 9, "shaper_private_dual_rate_n_max": 0, "shaper_private_rate_min": 0, "shaper_private_rate_max": 25000000000, "shaper_private_packet_mode_supported": 0, "shaper_private_byte_mode_supported": 0, "shaper_shared_n_max": 0, "shaper_shared_n_nodes_per_shaper_max": 0, "shaper_shared_n_shapers_per_node_max": 0, "shaper_share_dual_rate_n_max": 0, "shaper_shared_rate_min": 0, "shaper_shared_rate_max": 0, "shaper_shared_packet_mode_supported": 0, "shaper_shared_byte_mode_supported": 0, "shaper_pkt_length_adjust_min": 20, "shaper_pkt_length_adjust_max": 24, "sched_n_children_max": 256, "sched_sp_n_priorities_max": 1, "sched_wfq_n_children_per_group_max": 0, "sched_wfq_n_groups_max": 0, "sched_wfq_weight_max": 1, "sched_wfq_packet_mode_supported": 0, "sched_wfq_byte_mode_supported": 0, "cman_wred_packet_mode_supported": 0, "cman_wred_byte_mode_supported": 0, "cman_head_drop_supported": 0, "cman_wred_context_n_max": 0, "cman_wred_context_private_n_max": 0, "cman_wred_context_shared_n_max": 0, "cman_wred_context_shared_n_nodes_per_context_max": 0, "cman_wred_context_shared_n_contexts_per_node_max": 0, "dynamic_update": "0x0", "stats_mask": "0x0" } }
Signed-off-by: Jie Hai <haijie1@huawei.com> Acked-by: Ferruh Yigit <ferruh.yigit@amd.com>
show more ...
|
|
Revision tags: v23.11-rc1, v23.07, v23.07-rc4, v23.07-rc3, v23.07-rc2, v23.07-rc1 |
|
| #
19f39522 |
| 07-Jun-2023 |
Jie Hai <haijie1@huawei.com> |
ethdev: add VLAN telemetry query
This patch supports querying VLAN information by telemetry. The command is like: --> /ethdev/vlan,0 { "/ethdev/vlan": { "pvid": 0, "hw_vlan_reject_tagged":
ethdev: add VLAN telemetry query
This patch supports querying VLAN information by telemetry. The command is like: --> /ethdev/vlan,0 { "/ethdev/vlan": { "pvid": 0, "hw_vlan_reject_tagged": 0, "hw_vlan_reject_untagged": 0, "hw_vlan_insert_pvid": 0, "VLAN_STRIP": "off", "VLAN_EXTEND": "off", "QINQ_STRIP": "off", "VLAN_FILTER": "on", "vlan_num": 3, "vlan_ids": { "vlan_0_to_63": [ 1, 20 ], "vlan_192_to_255": [ 200 ] } } }
Signed-off-by: Jie Hai <haijie1@huawei.com> Acked-by: Ferruh Yigit <ferruh.yigit@amd.com>
show more ...
|
| #
85576ba6 |
| 07-Jun-2023 |
Jie Hai <haijie1@huawei.com> |
ethdev: add FEC telemetry query
This patch supports getting FEC information by telemetry. The command is like: --> /ethdev/fec,0 { "/ethdev/fec": { "fec_mode": "off", "fec_capability": {
ethdev: add FEC telemetry query
This patch supports getting FEC information by telemetry. The command is like: --> /ethdev/fec,0 { "/ethdev/fec": { "fec_mode": "off", "fec_capability": { "10_Gbps": "off auto baser" } } }
Signed-off-by: Jie Hai <haijie1@huawei.com> Acked-by: Ferruh Yigit <ferruh.yigit@amd.com>
show more ...
|
| #
fde1adbf |
| 07-Jun-2023 |
Jie Hai <haijie1@huawei.com> |
ethdev: add RSS telemetry query
This patch supports querying RSS info by telemetry command. The command is like: --> /ethdev/rss_info,0 { "/ethdev/rss_info": { "rss_hf": "0x238c", "rss_ke
ethdev: add RSS telemetry query
This patch supports querying RSS info by telemetry command. The command is like: --> /ethdev/rss_info,0 { "/ethdev/rss_info": { "rss_hf": "0x238c", "rss_key_len": 40, "rss_key": "6d5a56da255b0ec24167253d43a38fb0d0ca2b\ cbae7b30b477cb2da38030f20c6a42b73bbeac01fa" } }
Signed-off-by: Jie Hai <haijie1@huawei.com> Acked-by: Ferruh Yigit <ferruh.yigit@amd.com>
show more ...
|
| #
66f3e047 |
| 07-Jun-2023 |
Jie Hai <haijie1@huawei.com> |
ethdev: add DCB telemetry query
This patch supports querying DCB info.
The command is like: --> /ethdev/dcb,0 { "/ethdev/dcb": { "tc_num": 1, "tc0": { "priority": 0, "bw_perce
ethdev: add DCB telemetry query
This patch supports querying DCB info.
The command is like: --> /ethdev/dcb,0 { "/ethdev/dcb": { "tc_num": 1, "tc0": { "priority": 0, "bw_percent": "100%", "rxq_base": 0, "txq_base": 0, "nb_rxq": 4, "nb_txq": 4 } } }
Signed-off-by: Jie Hai <haijie1@huawei.com> Acked-by: Ferruh Yigit <ferruh.yigit@amd.com>
show more ...
|
| #
4b5f5fa9 |
| 07-Jun-2023 |
Jie Hai <haijie1@huawei.com> |
ethdev: add firmware version in telemetry info
This patch adds firmware version in telemetry info command. An example is like: --> /ethdev/info,0 { "/ethdev/info": { "name": "0000:bd:00.0",
ethdev: add firmware version in telemetry info
This patch adds firmware version in telemetry info command. An example is like: --> /ethdev/info,0 { "/ethdev/info": { "name": "0000:bd:00.0", "fw_version": "1.20.0.17", .... } }
Signed-off-by: Jie Hai <haijie1@huawei.com> Acked-by: Ferruh Yigit <ferruh.yigit@amd.com>
show more ...
|
| #
1a479610 |
| 07-Jun-2023 |
Jie Hai <haijie1@huawei.com> |
ethdev: add Tx queue telemetry query
This patch support querying information of Tx queues. The command is like: --> /ethdev/tx_queue,0,0 { "/ethdev/tx_queue": { "host_threshold": 0, "prefe
ethdev: add Tx queue telemetry query
This patch support querying information of Tx queues. The command is like: --> /ethdev/tx_queue,0,0 { "/ethdev/tx_queue": { "host_threshold": 0, "prefetch_threshold": 0, "writeback_threshold": 0, "rs_threshold": 32, "free_threshold": 928, "deferred_start": "off", "offloads": [ "MBUF_FAST_FREE" ], "queue_state": 1, "nb_desc": 1024, "burst_flags": 0, "burst_mode": "Vector Neon" } }
Signed-off-by: Jie Hai <haijie1@huawei.com> Acked-by: Ferruh Yigit <ferruh.yigit@amd.com>
show more ...
|
| #
f38f6265 |
| 07-Jun-2023 |
Jie Hai <haijie1@huawei.com> |
ethdev: add Rx queue telemetry query
This patch support querying information of Rx queues. The command is like: --> /ethdev/rx_queue,0,0 { "/ethdev/rx_queue": { "mempool_name": "mb_pool_0",
ethdev: add Rx queue telemetry query
This patch support querying information of Rx queues. The command is like: --> /ethdev/rx_queue,0,0 { "/ethdev/rx_queue": { "mempool_name": "mb_pool_0", "socket_id": 0, "host_threshold": 0, "prefetch_threshold": 0, "writeback_threshold": 0, "free_threshold": 32, "rx_drop_en": "on", "deferred_start": "off", "rx_nseg": 0, "share_group": 0, "share_qid": 0, "offloads": [ "RSS_HASH" ], "rx_nmempool": 0, "scattered_rx": "off", "queue_state": 1, "nb_desc": 1024, "rx_buf_size": 2048, "avail_thresh": 0, "burst_flags": 0, "burst_mode": "Vector Neon" } }
Signed-off-by: Jie Hai <haijie1@huawei.com> Acked-by: Ferruh Yigit <ferruh.yigit@amd.com>
show more ...
|
| #
499c8486 |
| 07-Jun-2023 |
Jie Hai <haijie1@huawei.com> |
ethdev: add flow control telemetry query
This patch supports telemetry querying flow control info. The command is like: --> /ethdev/flow_ctrl,0 { "/ethdev/flow_ctrl": { "high_waterline": "0x0"
ethdev: add flow control telemetry query
This patch supports telemetry querying flow control info. The command is like: --> /ethdev/flow_ctrl,0 { "/ethdev/flow_ctrl": { "high_waterline": "0x0", "low_waterline": "0x0", "pause_time": "0xffff", "send_xon": "off", "mac_ctrl_frame_fwd": "off", "rx_pause": "off", "tx_pause": "off", "autoneg": "off" } }
Signed-off-by: Jie Hai <haijie1@huawei.com> Acked-by: Ferruh Yigit <ferruh.yigit@amd.com>
show more ...
|
| #
aea48618 |
| 07-Jun-2023 |
Jie Hai <haijie1@huawei.com> |
ethdev: improve Rx/Tx offloads telemetry display
Currently, Rx/Tx offloads are displayed in numeric format, which is not easy to understand. This patch fixes it.
Signed-off-by: Jie Hai <haijie1@hua
ethdev: improve Rx/Tx offloads telemetry display
Currently, Rx/Tx offloads are displayed in numeric format, which is not easy to understand. This patch fixes it.
Signed-off-by: Jie Hai <haijie1@huawei.com> Acked-by: Ferruh Yigit <ferruh.yigit@amd.com>
show more ...
|
| #
6732ae1c |
| 07-Jun-2023 |
Dengdui Huang <huangdengdui@huawei.com> |
ethdev: add MAC addresses telemetry query
This patch support telemetry query MAC addresses for a specific port.
The command is like: --> /ethdev/macs,0 { "/ethdev/macs": [ "00:18:2D:00:00:79"
ethdev: add MAC addresses telemetry query
This patch support telemetry query MAC addresses for a specific port.
The command is like: --> /ethdev/macs,0 { "/ethdev/macs": [ "00:18:2D:00:00:79", "00:18:2D:00:00:78", "00:18:2D:00:00:77" ] }
Signed-off-by: Dengdui Huang <huangdengdui@huawei.com> Signed-off-by: Jie Hai <haijie1@huawei.com> Acked-by: Ferruh Yigit <ferruh.yigit@amd.com>
show more ...
|
| #
6ca32611 |
| 07-Jun-2023 |
Jie Hai <haijie1@huawei.com> |
ethdev: extract telemetry parsing of port ID as a function
This patch extracts codes parsing port_id as a function. The port id of 'int' or 'unsigned long' type passing as 'uint16_t' may cause trunc
ethdev: extract telemetry parsing of port ID as a function
This patch extracts codes parsing port_id as a function. The port id of 'int' or 'unsigned long' type passing as 'uint16_t' may cause truncation, fix it.
Signed-off-by: Jie Hai <haijie1@huawei.com> Acked-by: Ferruh Yigit <ferruh.yigit@amd.com>
show more ...
|
| #
4fe767ac |
| 07-Jun-2023 |
Jie Hai <haijie1@huawei.com> |
ethdev: extract telemetry code to a file
This patch extracts telemetry related codes in rte_ethdev.c to a new file rte_ethdev_telemetry.c.
Signed-off-by: Jie Hai <haijie1@huawei.com> Acked-by: Ferr
ethdev: extract telemetry code to a file
This patch extracts telemetry related codes in rte_ethdev.c to a new file rte_ethdev_telemetry.c.
Signed-off-by: Jie Hai <haijie1@huawei.com> Acked-by: Ferruh Yigit <ferruh.yigit@amd.com>
show more ...
|