Sync some patchs from upstreaming for telemetry and modifies are as follow: 1. Support dispaly integer as hexadecimal. 2. Fix data truncation for some u64 accept as int. 3. Add JSON pretty print. (cherry picked from commit 9e45664c52b35caa057da6a442599e03f4527817)
60 lines
2.4 KiB
Diff
60 lines
2.4 KiB
Diff
From f4f89120a7df52f92fcac89e3fe13cfac1097051 Mon Sep 17 00:00:00 2001
|
|
From: Huisong Li <lihuisong@huawei.com>
|
|
Date: Mon, 19 Dec 2022 15:06:42 +0800
|
|
Subject: ethdev: fix telemetry data truncation
|
|
MIME-Version: 1.0
|
|
Content-Type: text/plain; charset=UTF-8
|
|
Content-Transfer-Encoding: 8bit
|
|
|
|
[ upstream commit 7db3f2af573287abb9201d46a92b4ca3ebc5d9ad ]
|
|
|
|
The 'u32' and 'u64' data can not assigned to 'int' type variable.
|
|
They need to use the 'u64' APIs to add.
|
|
|
|
Fixes: 58b43c1ddfd1 ("ethdev: add telemetry endpoint for device info")
|
|
Cc: stable@dpdk.org
|
|
|
|
Signed-off-by: Huisong Li <lihuisong@huawei.com>
|
|
Acked-by: Morten Brørup <mb@smartsharesystems.com>
|
|
Acked-by: Chengwen Feng <fengchengwen@huawei.com>
|
|
---
|
|
lib/ethdev/rte_ethdev.c | 12 ++++++------
|
|
1 file changed, 6 insertions(+), 6 deletions(-)
|
|
|
|
diff --git a/lib/ethdev/rte_ethdev.c b/lib/ethdev/rte_ethdev.c
|
|
index d82819a458..c216091e79 100644
|
|
--- a/lib/ethdev/rte_ethdev.c
|
|
+++ b/lib/ethdev/rte_ethdev.c
|
|
@@ -6397,9 +6397,9 @@ eth_dev_handle_port_info(const char *cmd __rte_unused,
|
|
eth_dev->data->nb_tx_queues);
|
|
rte_tel_data_add_dict_int(d, "port_id", eth_dev->data->port_id);
|
|
rte_tel_data_add_dict_int(d, "mtu", eth_dev->data->mtu);
|
|
- rte_tel_data_add_dict_int(d, "rx_mbuf_size_min",
|
|
+ rte_tel_data_add_dict_u64(d, "rx_mbuf_size_min",
|
|
eth_dev->data->min_rx_buf_size);
|
|
- rte_tel_data_add_dict_int(d, "rx_mbuf_alloc_fail",
|
|
+ rte_tel_data_add_dict_u64(d, "rx_mbuf_alloc_fail",
|
|
eth_dev->data->rx_mbuf_alloc_failed);
|
|
rte_ether_format_addr(mac_addr, sizeof(mac_addr),
|
|
eth_dev->data->mac_addrs);
|
|
@@ -6428,12 +6428,12 @@ eth_dev_handle_port_info(const char *cmd __rte_unused,
|
|
rte_tel_data_add_dict_container(d, "rxq_state", rxq_state, 0);
|
|
rte_tel_data_add_dict_container(d, "txq_state", txq_state, 0);
|
|
rte_tel_data_add_dict_int(d, "numa_node", eth_dev->data->numa_node);
|
|
- rte_tel_data_add_dict_int(d, "dev_flags", eth_dev->data->dev_flags);
|
|
- rte_tel_data_add_dict_int(d, "rx_offloads",
|
|
+ rte_tel_data_add_dict_u64(d, "dev_flags", eth_dev->data->dev_flags);
|
|
+ rte_tel_data_add_dict_u64(d, "rx_offloads",
|
|
eth_dev->data->dev_conf.rxmode.offloads);
|
|
- rte_tel_data_add_dict_int(d, "tx_offloads",
|
|
+ rte_tel_data_add_dict_u64(d, "tx_offloads",
|
|
eth_dev->data->dev_conf.txmode.offloads);
|
|
- rte_tel_data_add_dict_int(d, "ethdev_rss_hf",
|
|
+ rte_tel_data_add_dict_u64(d, "ethdev_rss_hf",
|
|
eth_dev->data->dev_conf.rx_adv_conf.rss_conf.rss_hf);
|
|
|
|
return 0;
|
|
--
|
|
2.23.0
|
|
|