Hi Konstantin, FYI, the error/warning still remains. tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master head: cd9fd78f5c11b5e165d9317ef11e613f4aef4dd1 commit: a3a956c78efaa202b1d75190136671cf6e87bfbe [10975/12895] fs/ntfs3: Add option "nocase" config: i386-randconfig-a004-20221010 compiler: clang version 14.0.6 (https://github.com/llvm/llvm-project f28c006a5895fc0e329fe15fead81e37457cb1d1) 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/next/linux-next.git/commit/?id=a3a956c78efaa202b1d75190136671cf6e87bfbe git remote add linux-next https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git git fetch --no-tags linux-next master git checkout a3a956c78efaa202b1d75190136671cf6e87bfbe # save the config file mkdir build_dir && cp config build_dir/.config COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=i386 SHELL=/bin/bash fs/ntfs3/ If you fix the issue, kindly add following tag where applicable | Reported-by: kernel test robot All warnings (new ones prefixed by >>): >> fs/ntfs3/namei.c:445:7: warning: variable 'uni1' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized] if (toupper(c1) != toupper(c2)) { ^~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/ctype.h:64:20: note: expanded from macro 'toupper' #define toupper(c) __toupper(c) ^ fs/ntfs3/namei.c:487:12: note: uninitialized use occurs here __putname(uni1); ^~~~ include/linux/fs.h:2789:65: note: expanded from macro '__putname' #define __putname(name) kmem_cache_free(names_cachep, (void *)(name)) ^~~~ fs/ntfs3/namei.c:445:3: note: remove the 'if' if its condition is always false if (toupper(c1) != toupper(c2)) { ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ fs/ntfs3/namei.c:434:7: warning: variable 'uni1' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized] if (!lm--) { ^~~~~ fs/ntfs3/namei.c:487:12: note: uninitialized use occurs here __putname(uni1); ^~~~ include/linux/fs.h:2789:65: note: expanded from macro '__putname' #define __putname(name) kmem_cache_free(names_cachep, (void *)(name)) ^~~~ fs/ntfs3/namei.c:434:3: note: remove the 'if' if its condition is always false if (!lm--) { ^~~~~~~~~~~~ fs/ntfs3/namei.c:430:22: note: initialize the variable 'uni1' to silence this warning struct cpu_str *uni1, *uni2; ^ = NULL 2 warnings generated. vim +445 fs/ntfs3/namei.c 416 417 /* 418 * dentry_operations::d_compare 419 */ 420 static int ntfs_d_compare(const struct dentry *dentry, unsigned int len1, 421 const char *str, const struct qstr *name) 422 { 423 struct ntfs_sb_info *sbi; 424 int ret; 425 const char *n1 = str; 426 const char *n2 = name->name; 427 unsigned int len2 = name->len; 428 unsigned int lm = min(len1, len2); 429 unsigned char c1, c2; 430 struct cpu_str *uni1, *uni2; 431 432 /* First try fast implementation. */ 433 for (;;) { 434 if (!lm--) { 435 ret = len1 == len2 ? 0 : 1; 436 goto out; 437 } 438 439 if ((c1 = *n1++) == (c2 = *n2++)) 440 continue; 441 442 if (c1 >= 0x80 || c2 >= 0x80) 443 break; 444 > 445 if (toupper(c1) != toupper(c2)) { 446 ret = 1; 447 goto out; 448 } 449 } 450 451 /* 452 * Try slow way with current upcase table 453 */ 454 sbi = dentry->d_sb->s_fs_info; 455 uni1 = __getname(); 456 if (!uni1) 457 return -ENOMEM; 458 459 ret = ntfs_nls_to_utf16(sbi, str, len1, uni1, NTFS_NAME_LEN, 460 UTF16_HOST_ENDIAN); 461 if (ret < 0) 462 goto out; 463 464 if (!ret) { 465 ret = -EINVAL; 466 goto out; 467 } 468 469 uni2 = Add2Ptr(uni1, 2048); 470 471 ret = ntfs_nls_to_utf16(sbi, name->name, name->len, uni2, NTFS_NAME_LEN, 472 UTF16_HOST_ENDIAN); 473 if (ret < 0) 474 goto out; 475 476 if (!ret) { 477 ret = -EINVAL; 478 goto out; 479 } 480 481 ret = !ntfs_cmp_names(uni1->name, uni1->len, uni2->name, uni2->len, 482 sbi->upcase, false) 483 ? 0 484 : 1; 485 486 out: 487 __putname(uni1); 488 return ret; 489 } 490 -- 0-DAY CI Kernel Test Service https://01.org/lkp