All of lore.kernel.org
 help / color / mirror / Atom feed
* [linux-next:master 12047/13260] drivers/net/ethernet/huawei/hinic/hinic_devlink.c:393:3: warning: 'strncpy' output truncated before terminating nul copying 7 bytes from a string of the same length
@ 2020-07-31 23:34 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2020-07-31 23:34 UTC (permalink / raw)
  To: kbuild-all

[-- Attachment #1: Type: text/plain, Size: 5120 bytes --]

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head:   01830e6c042e8eb6eb202e05d7df8057135b4c26
commit: c15850c709eb5c7771785c9174e4908d1806a0f0 [12047/13260] hinic: add support to handle hw abnormal event
config: x86_64-randconfig-r022-20200731 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-14) 9.3.0
reproduce (this is a W=1 build):
        git checkout c15850c709eb5c7771785c9174e4908d1806a0f0
        # save the attached .config to linux build tree
        make W=1 ARCH=x86_64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All warnings (new ones prefixed by >>):

   drivers/net/ethernet/huawei/hinic/hinic_devlink.c: In function 'fault_report_show':
>> drivers/net/ethernet/huawei/hinic/hinic_devlink.c:393:3: warning: 'strncpy' output truncated before terminating nul copying 7 bytes from a string of the same length [-Wstringop-truncation]
     393 |   strncpy(type_str, "Unknown", strlen("Unknown"));
         |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/ethernet/huawei/hinic/hinic_devlink.c: In function 'chip_fault_show':
   drivers/net/ethernet/huawei/hinic/hinic_devlink.c:347:3: warning: 'strncpy' output truncated before terminating nul copying 7 bytes from a string of the same length [-Wstringop-truncation]
     347 |   strncpy(level_str, "Unknown", strlen("Unknown"));
         |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

vim +/strncpy +393 drivers/net/ethernet/huawei/hinic/hinic_devlink.c

   380	
   381	static int fault_report_show(struct devlink_fmsg *fmsg,
   382				     struct hinic_fault_event *event)
   383	{
   384		char fault_type[FAULT_TYPE_MAX][FAULT_SHOW_STR_LEN + 1] = {
   385			"chip", "ucode", "mem rd timeout", "mem wr timeout",
   386			"reg rd timeout", "reg wr timeout", "phy fault"};
   387		char type_str[FAULT_SHOW_STR_LEN + 1] = {0};
   388		int err;
   389	
   390		if (event->type < FAULT_TYPE_MAX)
   391			strncpy(type_str, fault_type[event->type], strlen(fault_type[event->type]));
   392		else
 > 393			strncpy(type_str, "Unknown", strlen("Unknown"));
   394	
   395		err = devlink_fmsg_string_pair_put(fmsg, "Fault type", type_str);
   396		if (err)
   397			return err;
   398	
   399		err = devlink_fmsg_binary_pair_put(fmsg, "Fault raw data",
   400						   event->event.val, sizeof(event->event.val));
   401		if (err)
   402			return err;
   403	
   404		switch (event->type) {
   405		case FAULT_TYPE_CHIP:
   406			err = chip_fault_show(fmsg, event);
   407			if (err)
   408				return err;
   409			break;
   410		case FAULT_TYPE_UCODE:
   411			err = devlink_fmsg_u8_pair_put(fmsg, "Cause_id", event->event.ucode.cause_id);
   412			if (err)
   413				return err;
   414			err = devlink_fmsg_u8_pair_put(fmsg, "core_id", event->event.ucode.core_id);
   415			if (err)
   416				return err;
   417			err = devlink_fmsg_u8_pair_put(fmsg, "c_id", event->event.ucode.c_id);
   418			if (err)
   419				return err;
   420			err = devlink_fmsg_u8_pair_put(fmsg, "epc", event->event.ucode.epc);
   421			if (err)
   422				return err;
   423			break;
   424		case FAULT_TYPE_MEM_RD_TIMEOUT:
   425		case FAULT_TYPE_MEM_WR_TIMEOUT:
   426			err = devlink_fmsg_u32_pair_put(fmsg, "Err_csr_ctrl",
   427							event->event.mem_timeout.err_csr_ctrl);
   428			if (err)
   429				return err;
   430			err = devlink_fmsg_u32_pair_put(fmsg, "err_csr_data",
   431							event->event.mem_timeout.err_csr_data);
   432			if (err)
   433				return err;
   434			err = devlink_fmsg_u32_pair_put(fmsg, "ctrl_tab",
   435							event->event.mem_timeout.ctrl_tab);
   436			if (err)
   437				return err;
   438			err = devlink_fmsg_u32_pair_put(fmsg, "mem_index",
   439							event->event.mem_timeout.mem_index);
   440			if (err)
   441				return err;
   442			break;
   443		case FAULT_TYPE_REG_RD_TIMEOUT:
   444		case FAULT_TYPE_REG_WR_TIMEOUT:
   445			err = devlink_fmsg_u32_pair_put(fmsg, "Err_csr", event->event.reg_timeout.err_csr);
   446			if (err)
   447				return err;
   448			break;
   449		case FAULT_TYPE_PHY_FAULT:
   450			err = devlink_fmsg_u8_pair_put(fmsg, "Op_type", event->event.phy_fault.op_type);
   451			if (err)
   452				return err;
   453			err = devlink_fmsg_u8_pair_put(fmsg, "port_id", event->event.phy_fault.port_id);
   454			if (err)
   455				return err;
   456			err = devlink_fmsg_u8_pair_put(fmsg, "dev_ad", event->event.phy_fault.dev_ad);
   457			if (err)
   458				return err;
   459	
   460			err = devlink_fmsg_u32_pair_put(fmsg, "csr_addr", event->event.phy_fault.csr_addr);
   461			if (err)
   462				return err;
   463			err = devlink_fmsg_u32_pair_put(fmsg, "op_data", event->event.phy_fault.op_data);
   464			if (err)
   465				return err;
   466			break;
   467		default:
   468			break;
   469		}
   470	
   471		return 0;
   472	}
   473	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 36337 bytes --]

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2020-07-31 23:34 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-31 23:34 [linux-next:master 12047/13260] drivers/net/ethernet/huawei/hinic/hinic_devlink.c:393:3: warning: 'strncpy' output truncated before terminating nul copying 7 bytes from a string of the same length kernel test robot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.