From de71b27c71022e1051b1c3e85f849aedb13ec644 Mon Sep 17 00:00:00 2001 From: veega2022 Date: Thu, 24 Oct 2024 20:52:48 +0800 Subject: [PATCH 26/27] hikptool: Rectify the compilation alarm. Replace -Wextra with -Werror option. Signed-off-by: veega2022 --- CMakeLists.txt | 2 +- net/hikp_net_lib.c | 3 ++- net/nic/nic_dfx/hikp_nic_dfx.c | 5 +++-- net/nic/nic_ft/hikp_nic_port_fault.c | 2 +- net/nic/nic_qos/hikp_nic_qos.c | 7 ++++--- 5 files changed, 11 insertions(+), 8 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index f2ffe6c..4fb82ca 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -11,7 +11,7 @@ project(hikptool C) -set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O2 -fPIC -fPIE -Wall -Wextra -fno-common -std=gnu11") +set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O2 -fPIC -fPIE -Wall -Werror -fno-common -std=gnu11") set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wfloat-equal -fstack-protector-strong -D_FORTIFY_SOURCE=2") set(CMAKE_SKIP_RPATH TRUE) diff --git a/net/hikp_net_lib.c b/net/hikp_net_lib.c index fbf03bd..f4d4c2a 100644 --- a/net/hikp_net_lib.c +++ b/net/hikp_net_lib.c @@ -142,7 +142,8 @@ static bool check_dev_name_and_get_bdf(int sockfd, struct tool_target *target) ifr.ifr_data = (char *)&drvinfo; drvinfo.cmd = ETHTOOL_GDRVINFO; - strncpy(ifr.ifr_name, target->dev_name, IFNAMSIZ - 1); + strncpy(ifr.ifr_name, target->dev_name, IFNAMSIZ); + ifr.ifr_name[IFNAMSIZ - 1] = '\0'; if (ioctl(sockfd, SIOCETHTOOL, &ifr) < 0) return false; diff --git a/net/nic/nic_dfx/hikp_nic_dfx.c b/net/nic/nic_dfx/hikp_nic_dfx.c index 67a5fe1..c42b8e7 100644 --- a/net/nic/nic_dfx/hikp_nic_dfx.c +++ b/net/nic/nic_dfx/hikp_nic_dfx.c @@ -17,6 +17,7 @@ #include #include #include +#include #include "tool_cmd.h" #include "hikp_net_lib.h" #include "hikp_nic_dfx.h" @@ -626,10 +627,10 @@ static void hikp_nic_dfx_print_b64(struct nic_dfx_type_head *type_head, uint32_t (HI_GET_BITFIELD((uint64_t)reg_data[i], DFX_REG_VALUE_OFF, DFX_REG_VALUE_MASK) << BIT_NUM_OF_WORD); if (reg_list != NULL) { - printf("%-30s\t0x%04x\t0x%016lx\n", reg_list->name, offset, value); + printf("%-30s\t0x%04x\t0x%" PRIx64 "\n", reg_list->name, offset, value); reg_list++; } else { - printf("%-30s\t0x%04x\t0x%08x\n", "", offset, value); + printf("%-30s\t0x%04x\t0x%" PRIx64 "\n", "", offset, value); } } } diff --git a/net/nic/nic_ft/hikp_nic_port_fault.c b/net/nic/nic_ft/hikp_nic_port_fault.c index 6561e3e..5f78cdd 100644 --- a/net/nic/nic_ft/hikp_nic_port_fault.c +++ b/net/nic/nic_ft/hikp_nic_port_fault.c @@ -41,7 +41,7 @@ static int hikp_nic_port_fault_query(const struct bdf_t *bdf, } rsp = (struct nic_port_fault_rsp *)cmd_ret->rsp_data; - *info = *(struct nic_port_fault_status *)rsp->data; + memcpy(info, rsp->data, sizeof(struct nic_port_fault_status)); hikp_cmd_free(&cmd_ret); return 0; diff --git a/net/nic/nic_qos/hikp_nic_qos.c b/net/nic/nic_qos/hikp_nic_qos.c index 32f251e..c620a08 100644 --- a/net/nic/nic_qos/hikp_nic_qos.c +++ b/net/nic/nic_qos/hikp_nic_qos.c @@ -286,9 +286,10 @@ static void hikp_nic_qos_cmd_execute(struct major_cmd_ctrl *self) memset(revision_id, 0, MAX_PCI_ID_LEN + 1); ret = get_revision_id_by_bdf(bdf, revision_id, sizeof(g_qos_param.revision_id)); // show pfc threshold as default if get revision_id error - if (ret) - strncpy(g_qos_param.revision_id, HIKP_IEP_REVISION, - MAX_PCI_REVISION_LEN); + if (ret) { + strncpy(g_qos_param.revision_id, HIKP_IEP_REVISION, MAX_PCI_REVISION_LEN); + g_qos_param.revision_id[MAX_PCI_ID_LEN] = '\0'; + } printf("############## NIC QOS: %s info ############\n", qos_cmd->feature_name); qos_cmd->show(&qos_data); -- 2.45.0.windows.1