Hi Changbin,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on linus/master]
[also build test WARNING on v4.17 next-20180605]
[if your patch is applied to the wrong git tree, please drop us a note to help 
improve the system]

url:    
https://github.com/0day-ci/linux/commits/changbin-du-intel-com/kernel-hacking-GCC-optimization-for-better-debug-experience-Og/20180606-001415
config: ia64-allmodconfig (attached as .config)
compiler: ia64-linux-gcc (GCC) 8.1.0
reproduce:
        wget 
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O 
~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        make.cross ARCH=ia64 

All warnings (new ones prefixed by >>):

   drivers//staging/greybus/fw-management.c: In function 
'fw_mgmt_load_and_validate_operation':
>> drivers//staging/greybus/fw-management.c:153:2: warning: 'strncpy' specified 
>> bound 10 equals destination size [-Wstringop-truncation]
     strncpy(request.firmware_tag, tag, GB_FIRMWARE_TAG_MAX_SIZE);
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers//staging/greybus/fw-management.c: In function 
'fw_mgmt_backend_fw_update_operation':
   drivers//staging/greybus/fw-management.c:304:2: warning: 'strncpy' specified 
bound 10 equals destination size [-Wstringop-truncation]
     strncpy(request.firmware_tag, tag, GB_FIRMWARE_TAG_MAX_SIZE);
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--
   drivers/auxdisplay/panel.c: In function 'panel_bind_key':
>> drivers/auxdisplay/panel.c:1509:2: warning: 'strncpy' specified bound 12 
>> equals destination size [-Wstringop-truncation]
     strncpy(key->u.kbd.press_str, press, sizeof(key->u.kbd.press_str));
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/auxdisplay/panel.c:1510:2: warning: 'strncpy' specified bound 12 
equals destination size [-Wstringop-truncation]
     strncpy(key->u.kbd.repeat_str, repeat, sizeof(key->u.kbd.repeat_str));
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

vim +/strncpy +153 drivers//staging/greybus/fw-management.c

013e6653 Viresh Kumar 2016-05-14  138  
013e6653 Viresh Kumar 2016-05-14  139  static int 
fw_mgmt_load_and_validate_operation(struct fw_mgmt *fw_mgmt,
013e6653 Viresh Kumar 2016-05-14  140                                          
u8 load_method, const char *tag)
013e6653 Viresh Kumar 2016-05-14  141  {
013e6653 Viresh Kumar 2016-05-14  142   struct 
gb_fw_mgmt_load_and_validate_fw_request request;
013e6653 Viresh Kumar 2016-05-14  143   int ret;
013e6653 Viresh Kumar 2016-05-14  144  
013e6653 Viresh Kumar 2016-05-14  145   if (load_method != 
GB_FW_LOAD_METHOD_UNIPRO &&
013e6653 Viresh Kumar 2016-05-14  146       load_method != 
GB_FW_LOAD_METHOD_INTERNAL) {
013e6653 Viresh Kumar 2016-05-14  147           dev_err(fw_mgmt->parent,
013e6653 Viresh Kumar 2016-05-14  148                   "invalid load-method 
(%d)\n", load_method);
013e6653 Viresh Kumar 2016-05-14  149           return -EINVAL;
013e6653 Viresh Kumar 2016-05-14  150   }
013e6653 Viresh Kumar 2016-05-14  151  
013e6653 Viresh Kumar 2016-05-14  152   request.load_method = load_method;
b2abeaa1 Viresh Kumar 2016-08-11 @153   strncpy(request.firmware_tag, tag, 
GB_FIRMWARE_TAG_MAX_SIZE);
013e6653 Viresh Kumar 2016-05-14  154  
013e6653 Viresh Kumar 2016-05-14  155   /*
013e6653 Viresh Kumar 2016-05-14  156    * The firmware-tag should be NULL 
terminated, otherwise throw error and
013e6653 Viresh Kumar 2016-05-14  157    * fail.
013e6653 Viresh Kumar 2016-05-14  158    */
b2abeaa1 Viresh Kumar 2016-08-11  159   if 
(request.firmware_tag[GB_FIRMWARE_TAG_MAX_SIZE - 1] != '\0') {
013e6653 Viresh Kumar 2016-05-14  160           dev_err(fw_mgmt->parent, 
"load-and-validate: firmware-tag is not NULL terminated\n");
013e6653 Viresh Kumar 2016-05-14  161           return -EINVAL;
013e6653 Viresh Kumar 2016-05-14  162   }
013e6653 Viresh Kumar 2016-05-14  163  
013e6653 Viresh Kumar 2016-05-14  164   /* Allocate ids from 1 to 255 (u8-max), 
0 is an invalid id */
013e6653 Viresh Kumar 2016-05-14  165   ret = ida_simple_get(&fw_mgmt->id_map, 
1, 256, GFP_KERNEL);
013e6653 Viresh Kumar 2016-05-14  166   if (ret < 0) {
013e6653 Viresh Kumar 2016-05-14  167           dev_err(fw_mgmt->parent, 
"failed to allocate request id (%d)\n",
013e6653 Viresh Kumar 2016-05-14  168                   ret);
013e6653 Viresh Kumar 2016-05-14  169           return ret;
013e6653 Viresh Kumar 2016-05-14  170   }
013e6653 Viresh Kumar 2016-05-14  171  
013e6653 Viresh Kumar 2016-05-14  172   fw_mgmt->intf_fw_request_id = ret;
04f0e6eb Viresh Kumar 2016-05-14  173   fw_mgmt->intf_fw_loaded = false;
013e6653 Viresh Kumar 2016-05-14  174   request.request_id = ret;
013e6653 Viresh Kumar 2016-05-14  175  
013e6653 Viresh Kumar 2016-05-14  176   ret = 
gb_operation_sync(fw_mgmt->connection,
013e6653 Viresh Kumar 2016-05-14  177                           
GB_FW_MGMT_TYPE_LOAD_AND_VALIDATE_FW, &request,
013e6653 Viresh Kumar 2016-05-14  178                           
sizeof(request), NULL, 0);
013e6653 Viresh Kumar 2016-05-14  179   if (ret) {
013e6653 Viresh Kumar 2016-05-14  180           
ida_simple_remove(&fw_mgmt->id_map,
013e6653 Viresh Kumar 2016-05-14  181                             
fw_mgmt->intf_fw_request_id);
013e6653 Viresh Kumar 2016-05-14  182           fw_mgmt->intf_fw_request_id = 0;
013e6653 Viresh Kumar 2016-05-14  183           dev_err(fw_mgmt->parent,
013e6653 Viresh Kumar 2016-05-14  184                   "load and validate 
firmware request failed (%d)\n",
013e6653 Viresh Kumar 2016-05-14  185                   ret);
013e6653 Viresh Kumar 2016-05-14  186           return ret;
013e6653 Viresh Kumar 2016-05-14  187   }
013e6653 Viresh Kumar 2016-05-14  188  
013e6653 Viresh Kumar 2016-05-14  189   return 0;
013e6653 Viresh Kumar 2016-05-14  190  }
013e6653 Viresh Kumar 2016-05-14  191  

:::::: The code at line 153 was first introduced by commit
:::::: b2abeaa10d5711e7730bb07120dd60ae27d7b930 greybus: firmware: s/_LEN/_SIZE

:::::: TO: Viresh Kumar <viresh.ku...@linaro.org>
:::::: CC: Greg Kroah-Hartman <gre...@google.com>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Attachment: .config.gz
Description: application/gzip

Reply via email to