lkml.org 
[lkml]   [2021]   [Nov]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
Subjectdrivers/edac/thunderx_edac.c:1220:17: warning: 'strncat' specified bound 1024 equals destination size
tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 66f4beaa6c1d28161f534471484b2daa2de1dce0
commit: c37495d6254c237578db3121dcf79857e033f8ff slab: add __alloc_size attributes for better bounds checking
date: 6 days ago
config: arm64-buildonly-randconfig-r001-20211111 (attached as .config)
compiler: aarch64-linux-gcc (GCC) 11.2.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=c37495d6254c237578db3121dcf79857e033f8ff
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout c37495d6254c237578db3121dcf79857e033f8ff
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross ARCH=arm64

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/edac/thunderx_edac.c: In function 'thunderx_ocx_lnk_threaded_isr':
>> drivers/edac/thunderx_edac.c:1220:17: warning: 'strncat' specified bound 1024 equals destination size [-Wstringop-truncation]
1220 | strncat(msg, other, OCX_MESSAGE_SIZE);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/edac/thunderx_edac.c: In function 'thunderx_ocx_com_threaded_isr':
drivers/edac/thunderx_edac.c:1136:17: warning: 'strncat' specified bound 1024 equals destination size [-Wstringop-truncation]
1136 | strncat(msg, other, OCX_MESSAGE_SIZE);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/edac/thunderx_edac.c:1145:33: warning: 'strncat' specified bound 1024 equals destination size [-Wstringop-truncation]
1145 | strncat(msg, other, OCX_MESSAGE_SIZE);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/edac/thunderx_edac.c:1150:33: warning: 'strncat' specified bound 1024 equals destination size [-Wstringop-truncation]
1150 | strncat(msg, other, OCX_MESSAGE_SIZE);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/edac/thunderx_edac.c: In function 'thunderx_l2c_threaded_isr':
drivers/edac/thunderx_edac.c:1899:17: warning: 'strncat' specified bound 1024 equals destination size [-Wstringop-truncation]
1899 | strncat(msg, other, L2C_MESSAGE_SIZE);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


vim +/strncat +1220 drivers/edac/thunderx_edac.c

41003396f932d7 Sergey Temerkhanov 2017-03-24 1186
41003396f932d7 Sergey Temerkhanov 2017-03-24 1187 static irqreturn_t thunderx_ocx_lnk_threaded_isr(int irq, void *irq_id)
41003396f932d7 Sergey Temerkhanov 2017-03-24 1188 {
41003396f932d7 Sergey Temerkhanov 2017-03-24 1189 struct msix_entry *msix = irq_id;
41003396f932d7 Sergey Temerkhanov 2017-03-24 1190 struct thunderx_ocx *ocx = container_of(msix, struct thunderx_ocx,
41003396f932d7 Sergey Temerkhanov 2017-03-24 1191 msix_ent[msix->entry]);
41003396f932d7 Sergey Temerkhanov 2017-03-24 1192 irqreturn_t ret = IRQ_NONE;
41003396f932d7 Sergey Temerkhanov 2017-03-24 1193 unsigned long tail;
41003396f932d7 Sergey Temerkhanov 2017-03-24 1194 struct ocx_link_err_ctx *ctx;
41003396f932d7 Sergey Temerkhanov 2017-03-24 1195
41003396f932d7 Sergey Temerkhanov 2017-03-24 1196 char *msg;
41003396f932d7 Sergey Temerkhanov 2017-03-24 1197 char *other;
41003396f932d7 Sergey Temerkhanov 2017-03-24 1198
41003396f932d7 Sergey Temerkhanov 2017-03-24 1199 msg = kmalloc(OCX_MESSAGE_SIZE, GFP_KERNEL);
41003396f932d7 Sergey Temerkhanov 2017-03-24 1200 other = kmalloc(OCX_OTHER_SIZE, GFP_KERNEL);
41003396f932d7 Sergey Temerkhanov 2017-03-24 1201
41003396f932d7 Sergey Temerkhanov 2017-03-24 1202 if (!msg || !other)
41003396f932d7 Sergey Temerkhanov 2017-03-24 1203 goto err_free;
41003396f932d7 Sergey Temerkhanov 2017-03-24 1204
41003396f932d7 Sergey Temerkhanov 2017-03-24 1205 while (CIRC_CNT(ocx->link_ring_head, ocx->link_ring_tail,
41003396f932d7 Sergey Temerkhanov 2017-03-24 1206 ARRAY_SIZE(ocx->link_err_ctx))) {
41003396f932d7 Sergey Temerkhanov 2017-03-24 1207 tail = ring_pos(ocx->link_ring_head,
41003396f932d7 Sergey Temerkhanov 2017-03-24 1208 ARRAY_SIZE(ocx->link_err_ctx));
41003396f932d7 Sergey Temerkhanov 2017-03-24 1209
41003396f932d7 Sergey Temerkhanov 2017-03-24 1210 ctx = &ocx->link_err_ctx[tail];
41003396f932d7 Sergey Temerkhanov 2017-03-24 1211
41003396f932d7 Sergey Temerkhanov 2017-03-24 1212 snprintf(msg, OCX_MESSAGE_SIZE,
41003396f932d7 Sergey Temerkhanov 2017-03-24 1213 "%s: OCX_COM_LINK_INT[%d]: %016llx",
41003396f932d7 Sergey Temerkhanov 2017-03-24 1214 ocx->edac_dev->ctl_name,
41003396f932d7 Sergey Temerkhanov 2017-03-24 1215 ctx->link, ctx->reg_com_link_int);
41003396f932d7 Sergey Temerkhanov 2017-03-24 1216
41003396f932d7 Sergey Temerkhanov 2017-03-24 1217 decode_register(other, OCX_OTHER_SIZE,
41003396f932d7 Sergey Temerkhanov 2017-03-24 1218 ocx_com_link_errors, ctx->reg_com_link_int);
41003396f932d7 Sergey Temerkhanov 2017-03-24 1219
41003396f932d7 Sergey Temerkhanov 2017-03-24 @1220 strncat(msg, other, OCX_MESSAGE_SIZE);
41003396f932d7 Sergey Temerkhanov 2017-03-24 1221
41003396f932d7 Sergey Temerkhanov 2017-03-24 1222 if (ctx->reg_com_link_int & OCX_COM_LINK_INT_UE)
41003396f932d7 Sergey Temerkhanov 2017-03-24 1223 edac_device_handle_ue(ocx->edac_dev, 0, 0, msg);
41003396f932d7 Sergey Temerkhanov 2017-03-24 1224 else if (ctx->reg_com_link_int & OCX_COM_LINK_INT_CE)
41003396f932d7 Sergey Temerkhanov 2017-03-24 1225 edac_device_handle_ce(ocx->edac_dev, 0, 0, msg);
41003396f932d7 Sergey Temerkhanov 2017-03-24 1226
41003396f932d7 Sergey Temerkhanov 2017-03-24 1227 ocx->link_ring_tail++;
41003396f932d7 Sergey Temerkhanov 2017-03-24 1228 }
41003396f932d7 Sergey Temerkhanov 2017-03-24 1229
41003396f932d7 Sergey Temerkhanov 2017-03-24 1230 ret = IRQ_HANDLED;
41003396f932d7 Sergey Temerkhanov 2017-03-24 1231 err_free:
41003396f932d7 Sergey Temerkhanov 2017-03-24 1232 kfree(other);
41003396f932d7 Sergey Temerkhanov 2017-03-24 1233 kfree(msg);
41003396f932d7 Sergey Temerkhanov 2017-03-24 1234
41003396f932d7 Sergey Temerkhanov 2017-03-24 1235 return ret;
41003396f932d7 Sergey Temerkhanov 2017-03-24 1236 }
41003396f932d7 Sergey Temerkhanov 2017-03-24 1237

:::::: The code at line 1220 was first introduced by commit
:::::: 41003396f932d7f027725c7acebb6a7caa41dc3e EDAC, thunderx: Add Cavium ThunderX EDAC driver

:::::: TO: Sergey Temerkhanov <s.temerkhanov@gmail.com>
:::::: CC: Borislav Petkov <bp@suse.de>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
[unhandled content-type:application/gzip]
\
 
 \ /
  Last update: 2021-11-13 03:51    [W:0.039 / U:0.040 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site