[<prev] [next>] [day] [month] [year] [list]
Message-ID: <202501201730.uNIUmoe3-lkp@intel.com>
Date: Mon, 20 Jan 2025 17:39:47 +0800
From: kernel test robot <lkp@...el.com>
To: Waiman Long <longman@...hat.com>
Cc: oe-kbuild-all@...ts.linux.dev, linux-kernel@...r.kernel.org,
"Paul E. McKenney" <paulmck@...nel.org>
Subject: net/8021q/vlan.c:241:46: warning: '%.4i' directive output may be
truncated writing between 4 and 5 bytes into a region of size between 0 and
15
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: ffd294d346d185b70e28b1a28abe367bbfe53c04
commit: 925da92ba5cb0c82d07cdd5049a07e40f54e9c44 rcu: Avoid unneeded function call in rcu_read_unlock()
date: 3 years, 4 months ago
config: sparc-randconfig-r122-20240116 (https://download.01.org/0day-ci/archive/20250120/202501201730.uNIUmoe3-lkp@intel.com/config)
compiler: sparc-linux-gcc (GCC) 12.4.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250120/202501201730.uNIUmoe3-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@...el.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202501201730.uNIUmoe3-lkp@intel.com/
All warnings (new ones prefixed by >>):
net/8021q/vlan.c: In function 'vlan_ioctl_handler':
net/8021q/vlan.c:253:46: warning: '%i' directive output may be truncated writing between 1 and 5 bytes into a region of size between 0 and 15 [-Wformat-truncation=]
253 | snprintf(name, IFNAMSIZ, "%s.%i", real_dev->name, vlan_id);
| ^~
In function 'register_vlan_device',
inlined from 'vlan_ioctl_handler' at net/8021q/vlan.c:628:9:
net/8021q/vlan.c:253:42: note: directive argument in the range [0, 65535]
253 | snprintf(name, IFNAMSIZ, "%s.%i", real_dev->name, vlan_id);
| ^~~~~~~
net/8021q/vlan.c:253:17: note: 'snprintf' output between 3 and 22 bytes into a destination of size 16
253 | snprintf(name, IFNAMSIZ, "%s.%i", real_dev->name, vlan_id);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
net/8021q/vlan.c: In function 'vlan_ioctl_handler':
>> net/8021q/vlan.c:241:46: warning: '%.4i' directive output may be truncated writing between 4 and 5 bytes into a region of size between 0 and 15 [-Wformat-truncation=]
241 | snprintf(name, IFNAMSIZ, "%s.%.4i", real_dev->name, vlan_id);
| ^~~~
In function 'register_vlan_device',
inlined from 'vlan_ioctl_handler' at net/8021q/vlan.c:628:9:
net/8021q/vlan.c:241:42: note: directive argument in the range [0, 65535]
241 | snprintf(name, IFNAMSIZ, "%s.%.4i", real_dev->name, vlan_id);
| ^~~~~~~~~
net/8021q/vlan.c:241:17: note: 'snprintf' output between 6 and 22 bytes into a destination of size 16
241 | snprintf(name, IFNAMSIZ, "%s.%.4i", real_dev->name, vlan_id);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vim +241 net/8021q/vlan.c
e89fe42cd03c8f Patrick McHardy 2007-06-13 216
c1d3ee9925ca71 Patrick McHardy 2007-06-13 217 /* Attach a VLAN device to a mac address (ie Ethernet Card).
2ae0bf69b716d0 Patrick McHardy 2007-06-13 218 * Returns 0 if the device was created or a negative error code otherwise.
c1d3ee9925ca71 Patrick McHardy 2007-06-13 219 */
9bb8582efb5555 Patrick McHardy 2008-07-08 220 static int register_vlan_device(struct net_device *real_dev, u16 vlan_id)
c1d3ee9925ca71 Patrick McHardy 2007-06-13 221 {
c1d3ee9925ca71 Patrick McHardy 2007-06-13 222 struct net_device *new_dev;
0c0667a8548ef2 Wang Sheng-Hui 2013-08-03 223 struct vlan_dev_priv *vlan;
7a17a2f79f54a9 Pavel Emelyanov 2008-04-16 224 struct net *net = dev_net(real_dev);
7a17a2f79f54a9 Pavel Emelyanov 2008-04-16 225 struct vlan_net *vn = net_generic(net, vlan_net_id);
c1d3ee9925ca71 Patrick McHardy 2007-06-13 226 char name[IFNAMSIZ];
2ae0bf69b716d0 Patrick McHardy 2007-06-13 227 int err;
c1d3ee9925ca71 Patrick McHardy 2007-06-13 228
9bb8582efb5555 Patrick McHardy 2008-07-08 229 if (vlan_id >= VLAN_VID_MASK)
2ae0bf69b716d0 Patrick McHardy 2007-06-13 230 return -ERANGE;
c1d3ee9925ca71 Patrick McHardy 2007-06-13 231
33fa382324ebd1 David Ahern 2018-05-17 232 err = vlan_check_real_dev(real_dev, htons(ETH_P_8021Q), vlan_id,
33fa382324ebd1 David Ahern 2018-05-17 233 NULL);
2ae0bf69b716d0 Patrick McHardy 2007-06-13 234 if (err < 0)
2ae0bf69b716d0 Patrick McHardy 2007-06-13 235 return err;
c1d3ee9925ca71 Patrick McHardy 2007-06-13 236
^1da177e4c3f41 Linus Torvalds 2005-04-16 237 /* Gotta set up the fields for the device. */
7a17a2f79f54a9 Pavel Emelyanov 2008-04-16 238 switch (vn->name_type) {
^1da177e4c3f41 Linus Torvalds 2005-04-16 239 case VLAN_NAME_TYPE_RAW_PLUS_VID:
^1da177e4c3f41 Linus Torvalds 2005-04-16 240 /* name will look like: eth1.0005 */
9bb8582efb5555 Patrick McHardy 2008-07-08 @241 snprintf(name, IFNAMSIZ, "%s.%.4i", real_dev->name, vlan_id);
^1da177e4c3f41 Linus Torvalds 2005-04-16 242 break;
^1da177e4c3f41 Linus Torvalds 2005-04-16 243 case VLAN_NAME_TYPE_PLUS_VID_NO_PAD:
^1da177e4c3f41 Linus Torvalds 2005-04-16 244 /* Put our vlan.VID in the name.
^1da177e4c3f41 Linus Torvalds 2005-04-16 245 * Name will look like: vlan5
^1da177e4c3f41 Linus Torvalds 2005-04-16 246 */
9bb8582efb5555 Patrick McHardy 2008-07-08 247 snprintf(name, IFNAMSIZ, "vlan%i", vlan_id);
^1da177e4c3f41 Linus Torvalds 2005-04-16 248 break;
^1da177e4c3f41 Linus Torvalds 2005-04-16 249 case VLAN_NAME_TYPE_RAW_PLUS_VID_NO_PAD:
^1da177e4c3f41 Linus Torvalds 2005-04-16 250 /* Put our vlan.VID in the name.
^1da177e4c3f41 Linus Torvalds 2005-04-16 251 * Name will look like: eth0.5
^1da177e4c3f41 Linus Torvalds 2005-04-16 252 */
9bb8582efb5555 Patrick McHardy 2008-07-08 253 snprintf(name, IFNAMSIZ, "%s.%i", real_dev->name, vlan_id);
^1da177e4c3f41 Linus Torvalds 2005-04-16 254 break;
^1da177e4c3f41 Linus Torvalds 2005-04-16 255 case VLAN_NAME_TYPE_PLUS_VID:
^1da177e4c3f41 Linus Torvalds 2005-04-16 256 /* Put our vlan.VID in the name.
^1da177e4c3f41 Linus Torvalds 2005-04-16 257 * Name will look like: vlan0005
^1da177e4c3f41 Linus Torvalds 2005-04-16 258 */
^1da177e4c3f41 Linus Torvalds 2005-04-16 259 default:
9bb8582efb5555 Patrick McHardy 2008-07-08 260 snprintf(name, IFNAMSIZ, "vlan%.4i", vlan_id);
3ff50b7997fe06 Stephen Hemminger 2007-04-20 261 }
^1da177e4c3f41 Linus Torvalds 2005-04-16 262
c835a677331495 Tom Gundersen 2014-07-14 263 new_dev = alloc_netdev(sizeof(struct vlan_dev_priv), name,
c835a677331495 Tom Gundersen 2014-07-14 264 NET_NAME_UNKNOWN, vlan_setup);
5dd8d1e9eb8b51 Arjan van de Ven 2006-07-03 265
^1da177e4c3f41 Linus Torvalds 2005-04-16 266 if (new_dev == NULL)
2ae0bf69b716d0 Patrick McHardy 2007-06-13 267 return -ENOBUFS;
^1da177e4c3f41 Linus Torvalds 2005-04-16 268
65d292a2ef2df6 Pavel Emelyanov 2008-04-16 269 dev_net_set(new_dev, net);
^1da177e4c3f41 Linus Torvalds 2005-04-16 270 /* need 4 bytes for extra VLAN header info,
^1da177e4c3f41 Linus Torvalds 2005-04-16 271 * hope the underlying device can handle it.
^1da177e4c3f41 Linus Torvalds 2005-04-16 272 */
^1da177e4c3f41 Linus Torvalds 2005-04-16 273 new_dev->mtu = real_dev->mtu;
^1da177e4c3f41 Linus Torvalds 2005-04-16 274
0c0667a8548ef2 Wang Sheng-Hui 2013-08-03 275 vlan = vlan_dev_priv(new_dev);
0c0667a8548ef2 Wang Sheng-Hui 2013-08-03 276 vlan->vlan_proto = htons(ETH_P_8021Q);
0c0667a8548ef2 Wang Sheng-Hui 2013-08-03 277 vlan->vlan_id = vlan_id;
0c0667a8548ef2 Wang Sheng-Hui 2013-08-03 278 vlan->real_dev = real_dev;
0c0667a8548ef2 Wang Sheng-Hui 2013-08-03 279 vlan->dent = NULL;
0c0667a8548ef2 Wang Sheng-Hui 2013-08-03 280 vlan->flags = VLAN_FLAG_REORDER_HDR;
^1da177e4c3f41 Linus Torvalds 2005-04-16 281
07b5b17e157b70 Patrick McHardy 2007-06-13 282 new_dev->rtnl_link_ops = &vlan_link_ops;
42ab19ee902929 David Ahern 2017-10-04 283 err = register_vlan_dev(new_dev, NULL);
2ae0bf69b716d0 Patrick McHardy 2007-06-13 284 if (err < 0)
42429aaee5eb44 Patrick McHardy 2007-06-13 285 goto out_free_newdev;
^1da177e4c3f41 Linus Torvalds 2005-04-16 286
2ae0bf69b716d0 Patrick McHardy 2007-06-13 287 return 0;
^1da177e4c3f41 Linus Torvalds 2005-04-16 288
^1da177e4c3f41 Linus Torvalds 2005-04-16 289 out_free_newdev:
^1da177e4c3f41 Linus Torvalds 2005-04-16 290 free_netdev(new_dev);
2ae0bf69b716d0 Patrick McHardy 2007-06-13 291 return err;
^1da177e4c3f41 Linus Torvalds 2005-04-16 292 }
^1da177e4c3f41 Linus Torvalds 2005-04-16 293
:::::: The code at line 241 was first introduced by commit
:::::: 9bb8582efb555521c7eec595ebd34e835ddc34b8 vlan: TCI related type and naming cleanups
:::::: TO: Patrick McHardy <kaber@...sh.net>
:::::: CC: David S. Miller <davem@...emloft.net>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
Powered by blists - more mailing lists