mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* fs/exfat/nls.c:531:22: warning: Variable 'p_uniname->name_len' is reassigned a value before the old one has been used. [redundantAssignment]
@ 2020-05-31  5:24 kbuild test robot
  0 siblings, 0 replies; only message in thread
From: kbuild test robot @ 2020-05-31  5:24 UTC (permalink / raw)
  To: Namjae, Jeon,
  Cc: kbuild-all, linux-kernel, Al Viro, Sungjong Seo, Pali Rohár,
	Christoph Hellwig

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   ffeb595d84811dde16a28b33d8a7cf26d51d51b3
commit: b9d1e2e6265f5dc25e9f5dbfbde3e53d8a4958ac exfat: add Kconfig and Makefile
date:   3 months ago
compiler: gcc-9 (Debian 9.3.0-13) 9.3.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp@intel.com>


cppcheck warnings: (new ones prefixed by >>)

>> fs/exfat/nls.c:531:22: warning: Variable 'p_uniname->name_len' is reassigned a value before the old one has been used. [redundantAssignment]
    p_uniname->name_len = unilen;
                        ^
   fs/exfat/nls.c:519:22: note: Variable 'p_uniname->name_len' is reassigned a value before the old one has been used.
    p_uniname->name_len = unilen & 0xFF;
                        ^
   fs/exfat/nls.c:531:22: note: Variable 'p_uniname->name_len' is reassigned a value before the old one has been used.
    p_uniname->name_len = unilen;
                        ^

vim +531 fs/exfat/nls.c

370e812b3ec190 Namjae Jeon 2020-03-02  492  
370e812b3ec190 Namjae Jeon 2020-03-02  493  static int exfat_utf8_to_utf16(struct super_block *sb,
370e812b3ec190 Namjae Jeon 2020-03-02  494  		const unsigned char *p_cstring, const int len,
370e812b3ec190 Namjae Jeon 2020-03-02  495  		struct exfat_uni_name *p_uniname, int *p_lossy)
370e812b3ec190 Namjae Jeon 2020-03-02  496  {
370e812b3ec190 Namjae Jeon 2020-03-02  497  	int i, unilen, lossy = NLS_NAME_NO_LOSSY;
370e812b3ec190 Namjae Jeon 2020-03-02  498  	unsigned short upname[MAX_NAME_LENGTH + 1];
370e812b3ec190 Namjae Jeon 2020-03-02  499  	unsigned short *uniname = p_uniname->name;
370e812b3ec190 Namjae Jeon 2020-03-02  500  
370e812b3ec190 Namjae Jeon 2020-03-02  501  	WARN_ON(!len);
370e812b3ec190 Namjae Jeon 2020-03-02  502  
370e812b3ec190 Namjae Jeon 2020-03-02  503  	unilen = utf8s_to_utf16s(p_cstring, len, UTF16_HOST_ENDIAN,
370e812b3ec190 Namjae Jeon 2020-03-02  504  			(wchar_t *)uniname, MAX_NAME_LENGTH + 2);
370e812b3ec190 Namjae Jeon 2020-03-02  505  	if (unilen < 0) {
370e812b3ec190 Namjae Jeon 2020-03-02  506  		exfat_msg(sb, KERN_ERR,
370e812b3ec190 Namjae Jeon 2020-03-02  507  			"failed to %s (err : %d) nls len : %d",
370e812b3ec190 Namjae Jeon 2020-03-02  508  			__func__, unilen, len);
370e812b3ec190 Namjae Jeon 2020-03-02  509  		return unilen;
370e812b3ec190 Namjae Jeon 2020-03-02  510  	}
370e812b3ec190 Namjae Jeon 2020-03-02  511  
370e812b3ec190 Namjae Jeon 2020-03-02  512  	if (unilen > MAX_NAME_LENGTH) {
370e812b3ec190 Namjae Jeon 2020-03-02  513  		exfat_msg(sb, KERN_ERR,
370e812b3ec190 Namjae Jeon 2020-03-02  514  			"failed to %s (estr:ENAMETOOLONG) nls len : %d, unilen : %d > %d",
370e812b3ec190 Namjae Jeon 2020-03-02  515  			__func__, len, unilen, MAX_NAME_LENGTH);
370e812b3ec190 Namjae Jeon 2020-03-02  516  		return -ENAMETOOLONG;
370e812b3ec190 Namjae Jeon 2020-03-02  517  	}
370e812b3ec190 Namjae Jeon 2020-03-02  518  
370e812b3ec190 Namjae Jeon 2020-03-02  519  	p_uniname->name_len = unilen & 0xFF;
370e812b3ec190 Namjae Jeon 2020-03-02  520  
370e812b3ec190 Namjae Jeon 2020-03-02  521  	for (i = 0; i < unilen; i++) {
370e812b3ec190 Namjae Jeon 2020-03-02  522  		if (*uniname < 0x0020 ||
370e812b3ec190 Namjae Jeon 2020-03-02  523  		    exfat_wstrchr(bad_uni_chars, *uniname))
370e812b3ec190 Namjae Jeon 2020-03-02  524  			lossy |= NLS_NAME_LOSSY;
370e812b3ec190 Namjae Jeon 2020-03-02  525  
370e812b3ec190 Namjae Jeon 2020-03-02  526  		upname[i] = exfat_toupper(sb, *uniname);
370e812b3ec190 Namjae Jeon 2020-03-02  527  		uniname++;
370e812b3ec190 Namjae Jeon 2020-03-02  528  	}
370e812b3ec190 Namjae Jeon 2020-03-02  529  
370e812b3ec190 Namjae Jeon 2020-03-02  530  	*uniname = '\0';
370e812b3ec190 Namjae Jeon 2020-03-02 @531  	p_uniname->name_len = unilen;
370e812b3ec190 Namjae Jeon 2020-03-02  532  	p_uniname->name_hash = exfat_calc_chksum_2byte(upname, unilen << 1, 0,
370e812b3ec190 Namjae Jeon 2020-03-02  533  			CS_DEFAULT);
370e812b3ec190 Namjae Jeon 2020-03-02  534  
370e812b3ec190 Namjae Jeon 2020-03-02  535  	if (p_lossy)
370e812b3ec190 Namjae Jeon 2020-03-02  536  		*p_lossy = lossy;
370e812b3ec190 Namjae Jeon 2020-03-02  537  	return unilen;
370e812b3ec190 Namjae Jeon 2020-03-02  538  }
370e812b3ec190 Namjae Jeon 2020-03-02  539  

:::::: The code at line 531 was first introduced by commit
:::::: 370e812b3ec190fa492c9fd5a80c38b086d105c0 exfat: add nls operations

:::::: TO: Namjae Jeon <namjae.jeon@samsung.com>
:::::: CC: Al Viro <viro@zeniv.linux.org.uk>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2020-05-31  5:24 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-31  5:24 fs/exfat/nls.c:531:22: warning: Variable 'p_uniname->name_len' is reassigned a value before the old one has been used. [redundantAssignment] kbuild test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®