[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202511010440.FLitz9Fi-lkp@intel.com>
Date: Sat, 1 Nov 2025 06:43:03 +0800
From: kernel test robot <lkp@...el.com>
To: Mateusz Guzik <mjguzik@...il.com>, brauner@...nel.org
Cc: oe-kbuild-all@...ts.linux.dev, viro@...iv.linux.org.uk, jack@...e.cz,
linux-kernel@...r.kernel.org, linux-fsdevel@...r.kernel.org,
torvalds@...ux-foundation.org, pfalcato@...e.de,
Mateusz Guzik <mjguzik@...il.com>
Subject: Re: [PATCH v4] fs: hide names_cachep behind runtime access machinery
Hi Mateusz,
kernel test robot noticed the following build warnings:
[auto build test WARNING on arnd-asm-generic/master]
[also build test WARNING on linus/master brauner-vfs/vfs.all linux/master v6.18-rc3 next-20251031]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Mateusz-Guzik/fs-hide-names_cachep-behind-runtime-access-machinery/20251030-185523
base: https://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic.git master
patch link: https://lore.kernel.org/r/20251030105242.801528-1-mjguzik%40gmail.com
patch subject: [PATCH v4] fs: hide names_cachep behind runtime access machinery
config: i386-randconfig-061-20251031 (https://download.01.org/0day-ci/archive/20251101/202511010440.FLitz9Fi-lkp@intel.com/config)
compiler: gcc-14 (Debian 14.2.0-19) 14.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251101/202511010440.FLitz9Fi-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/202511010440.FLitz9Fi-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
fs/d_path.c:195:9: sparse: sparse: context imbalance in 'prepend_path' - wrong count at exit
fs/d_path.c:359:9: sparse: sparse: context imbalance in '__dentry_path' - wrong count at exit
>> fs/d_path.c:416:22: sparse: sparse: cast truncates bits from constant value (123456789abcdef becomes 89abcdef)
>> fs/d_path.c:416:22: sparse: sparse: cast truncates bits from constant value (123456789abcdef becomes 89abcdef)
fs/d_path.c:446:9: sparse: sparse: cast truncates bits from constant value (123456789abcdef becomes 89abcdef)
--
>> fs/namei.c:146:18: sparse: sparse: cast truncates bits from constant value (123456789abcdef becomes 89abcdef)
>> fs/namei.c:146:18: sparse: sparse: cast truncates bits from constant value (123456789abcdef becomes 89abcdef)
fs/namei.c:163:25: sparse: sparse: cast truncates bits from constant value (123456789abcdef becomes 89abcdef)
fs/namei.c:169:25: sparse: sparse: cast truncates bits from constant value (123456789abcdef becomes 89abcdef)
fs/namei.c:191:25: sparse: sparse: cast truncates bits from constant value (123456789abcdef becomes 89abcdef)
fs/namei.c:197:25: sparse: sparse: cast truncates bits from constant value (123456789abcdef becomes 89abcdef)
fs/namei.c:203:25: sparse: sparse: cast truncates bits from constant value (123456789abcdef becomes 89abcdef)
fs/namei.c:208:25: sparse: sparse: cast truncates bits from constant value (123456789abcdef becomes 89abcdef)
fs/namei.c:249:18: sparse: sparse: cast truncates bits from constant value (123456789abcdef becomes 89abcdef)
fs/namei.c:249:18: sparse: sparse: cast truncates bits from constant value (123456789abcdef becomes 89abcdef)
fs/namei.c:261:25: sparse: sparse: cast truncates bits from constant value (123456789abcdef becomes 89abcdef)
fs/namei.c:267:17: sparse: sparse: cast truncates bits from constant value (123456789abcdef becomes 89abcdef)
fs/namei.c:294:17: sparse: sparse: cast truncates bits from constant value (123456789abcdef becomes 89abcdef)
fs/namei.c:297:17: sparse: sparse: cast truncates bits from constant value (123456789abcdef becomes 89abcdef)
fs/namei.c: note: in included file (through include/linux/rbtree.h, include/linux/mm_types.h, include/linux/mmzone.h, ...):
include/linux/rcupdate.h:871:25: sparse: sparse: context imbalance in 'leave_rcu' - unexpected unlock
fs/namei.c:2518:19: sparse: sparse: context imbalance in 'path_init' - different lock contexts for basic block
--
drivers/base/firmware_loader/main.c:229:9: sparse: sparse: context imbalance in 'free_fw_priv' - wrong count at exit
>> drivers/base/firmware_loader/main.c:509:16: sparse: sparse: cast truncates bits from constant value (123456789abcdef becomes 89abcdef)
>> drivers/base/firmware_loader/main.c:509:16: sparse: sparse: cast truncates bits from constant value (123456789abcdef becomes 89abcdef)
drivers/base/firmware_loader/main.c:591:9: sparse: sparse: cast truncates bits from constant value (123456789abcdef becomes 89abcdef)
vim +416 fs/d_path.c
7a5cf791a74764 Al Viro 2018-03-05 393
7a5cf791a74764 Al Viro 2018-03-05 394 /*
7a5cf791a74764 Al Viro 2018-03-05 395 * NOTE! The user-level library version returns a
7a5cf791a74764 Al Viro 2018-03-05 396 * character pointer. The kernel system call just
7a5cf791a74764 Al Viro 2018-03-05 397 * returns the length of the buffer filled (which
7a5cf791a74764 Al Viro 2018-03-05 398 * includes the ending '\0' character), or a negative
7a5cf791a74764 Al Viro 2018-03-05 399 * error value. So libc would do something like
7a5cf791a74764 Al Viro 2018-03-05 400 *
7a5cf791a74764 Al Viro 2018-03-05 401 * char *getcwd(char * buf, size_t size)
7a5cf791a74764 Al Viro 2018-03-05 402 * {
7a5cf791a74764 Al Viro 2018-03-05 403 * int retval;
7a5cf791a74764 Al Viro 2018-03-05 404 *
7a5cf791a74764 Al Viro 2018-03-05 405 * retval = sys_getcwd(buf, size);
7a5cf791a74764 Al Viro 2018-03-05 406 * if (retval >= 0)
7a5cf791a74764 Al Viro 2018-03-05 407 * return buf;
7a5cf791a74764 Al Viro 2018-03-05 408 * errno = -retval;
7a5cf791a74764 Al Viro 2018-03-05 409 * return NULL;
7a5cf791a74764 Al Viro 2018-03-05 410 * }
7a5cf791a74764 Al Viro 2018-03-05 411 */
7a5cf791a74764 Al Viro 2018-03-05 412 SYSCALL_DEFINE2(getcwd, char __user *, buf, unsigned long, size)
7a5cf791a74764 Al Viro 2018-03-05 413 {
7a5cf791a74764 Al Viro 2018-03-05 414 int error;
7a5cf791a74764 Al Viro 2018-03-05 415 struct path pwd, root;
7a5cf791a74764 Al Viro 2018-03-05 @416 char *page = __getname();
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
Powered by blists - more mailing lists