From 0a9130da92709247e025bc6c5d4aade914f1b0f9 Mon Sep 17 00:00:00 2001 From: Guojia Liao Date: Tue, 28 Sep 2021 11:52:17 +0800 Subject: [PATCH 124/283] net: hns3: clean up a type mismatch warning mainline inclusion from mainline-v5.15-rc1 commit e79c0e324b011b0288cd411a5b53870a7730f163 category: feature bugzilla: https://gitee.com/src-openeuler/kernel/issues/I8EMYT CVE: NA Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=e79c0e324b011b0288cd411a5b53870a7730f163 ---------------------------------------------------------------------- abs() returns signed long, which could not convert the type as unsigned, and it may cause a mismatch type warning from static tools. To fix it, this patch uses an variable to save the abs()'s result and does a explicit conversion. Signed-off-by: Guojia Liao Signed-off-by: Guangbin Huang Signed-off-by: David S. Miller Reviewed-by: Yongxin Li Signed-off-by: Junxin Chen Signed-off-by: Zheng Zengkai Signed-off-by: Xiaodong Li Conflicts: drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_mbx.c --- .../ethernet/hisilicon/hns3/hns3pf/hclge_mbx.c | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_mbx.c b/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_mbx.c index a9dd7d0601ab..07d0aaa0634e 100644 --- a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_mbx.c +++ b/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_mbx.c @@ -23,18 +23,14 @@ static const struct errno_respcode_map err_code_map[] = { static u16 hclge_errno_to_resp(int errno) { -#define UNKNOWN_ERR 0xFFFF + int resp = abs(errno); - u32 i; - - for (i = 0; - i < sizeof(err_code_map) / sizeof(struct errno_respcode_map); - i++) { - if (err_code_map[i].errno == errno) - return err_code_map[i].resp_code; - } - - return UNKNOWN_ERR; + /* The status for pf to vf msg cmd is u16, constrainted by HW. + * We need to keep the same type with it. + * The intput errno is the stander error code, it's safely to + * use a u16 to store the abs(errno). + */ + return (u16)resp; } /* hclge_gen_resp_to_vf: used to generate a synchronous response to VF when PF -- 2.34.1