From: kernel test robot <lkp@intel.com>
To: Waiman Long <longman@redhat.com>
Cc: oe-kbuild-all@lists.linux.dev, linux-kernel@vger.kernel.org,
"Paul E. McKenney" <paulmck@kernel.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
Date: Mon, 10 Feb 2025 12:44:35 +0800 [thread overview]
Message-ID: <202502101253.TDZbCYh6-lkp@intel.com> (raw)
Hi Waiman,
FYI, the error/warning still remains.
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: a64dcfb451e254085a7daee5fe51bf22959d52d3
commit: 925da92ba5cb0c82d07cdd5049a07e40f54e9c44 rcu: Avoid unneeded function call in rcu_read_unlock()
date: 3 years, 5 months ago
config: sparc-randconfig-r122-20240116 (https://download.01.org/0day-ci/archive/20250210/202502101253.TDZbCYh6-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/20250210/202502101253.TDZbCYh6-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@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202502101253.TDZbCYh6-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@trash.net>
:::::: CC: David S. Miller <davem@davemloft.net>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next reply other threads:[~2025-02-10 4:45 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-10 4:44 kernel test robot [this message]
2025-02-10 14:24 ` 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 Waiman Long
2025-02-10 14:47 ` Philip Li
-- strict thread matches above, loose matches on Subject: below --
2025-01-20 9:39 kernel test robot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202502101253.TDZbCYh6-lkp@intel.com \
--to=lkp@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=longman@redhat.com \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=paulmck@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.