[PATCH V5 5/8] mem: possible data truncation and conversion error
Morten Brørup
mb at smartsharesystems.com
Wed Dec 14 14:00:58 CET 2022
> From: Huisong Li [mailto:lihuisong at huawei.com]
> Sent: Wednesday, 14 December 2022 13.33
>
> The 'u32' and 'u64' data can not assigned to 'int' type variable.
> They need to use the 'u64' APIs to add.
>
> Fixes: e6732d0d6e26 ("mem: add telemetry infos")
> Cc: stable at dpdk.org
>
> Signed-off-by: Huisong Li <lihuisong at huawei.com>
> Acked-by: Morten Brørup <mb at smartsharesystems.com>
> Acked-by: Chengwen Feng <fengchengwen at huawei.com>
> ---
> lib/eal/common/eal_common_memory.c | 10 +++++-----
> 1 file changed, 5 insertions(+), 5 deletions(-)
>
> diff --git a/lib/eal/common/eal_common_memory.c
> b/lib/eal/common/eal_common_memory.c
> index 688dc615d7..8e427bf4b4 100644
> --- a/lib/eal/common/eal_common_memory.c
> +++ b/lib/eal/common/eal_common_memory.c
> @@ -1139,7 +1139,7 @@ handle_eal_heap_info_request(const char *cmd
> __rte_unused, const char *params,
> malloc_heap_get_stats(heap, &sock_stats);
>
> rte_tel_data_start_dict(d);
> - rte_tel_data_add_dict_int(d, "Head id", heap_id);
> + rte_tel_data_add_dict_u64(d, "Head id", heap_id);
Consider: "Head id" -> "Heap_id"
> rte_tel_data_add_dict_string(d, "Name", heap->name);
> rte_tel_data_add_dict_u64(d, "Heap_size",
> sock_stats.heap_totalsz_bytes);
> @@ -1201,13 +1201,13 @@ handle_eal_memzone_info_request(const char *cmd
> __rte_unused,
> mz = rte_fbarray_get(&mcfg->memzones, mz_idx);
>
> rte_tel_data_start_dict(d);
> - rte_tel_data_add_dict_int(d, "Zone", mz_idx);
> + rte_tel_data_add_dict_u64(d, "Zone", mz_idx);
> rte_tel_data_add_dict_string(d, "Name", mz->name);
> - rte_tel_data_add_dict_int(d, "Length", mz->len);
> + rte_tel_data_add_dict_u64(d, "Length", mz->len);
> snprintf(addr, ADDR_STR, "%p", mz->addr);
> rte_tel_data_add_dict_string(d, "Address", addr);
> rte_tel_data_add_dict_int(d, "Socket", mz->socket_id);
> - rte_tel_data_add_dict_int(d, "Flags", mz->flags);
> + rte_tel_data_add_dict_u64(d, "Flags", mz->flags);
>
> /* go through each page occupied by this memzone */
> msl = rte_mem_virt2memseg_list(mz->addr);
> @@ -1222,7 +1222,7 @@ handle_eal_memzone_info_request(const char *cmd
> __rte_unused,
> ms_idx = RTE_PTR_DIFF(mz->addr, msl->base_va) / page_sz;
> ms = rte_fbarray_get(&msl->memseg_arr, ms_idx);
>
> - rte_tel_data_add_dict_int(d, "Hugepage_size", page_sz);
> + rte_tel_data_add_dict_u64(d, "Hugepage_size", page_sz);
> snprintf(addr, ADDR_STR, "%p", ms->addr);
> rte_tel_data_add_dict_string(d, "Hugepage_base", addr);
>
> --
> 2.33.0
>
More information about the dev
mailing list