tree: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core.git debugfs_cleanup head: a04bbe0a2c7e98669e11a47f94e53dd8228bbeba commit: e95d5bed5d58c2f5352969369827e7135fa2261e [4/5] fs: make d_path-like functions all have unsigned size config: i386-randconfig-m031-20211228 (https://download.01.org/0day-ci/archive/20220101/202201010156.bjvo7gaw-...@intel.com/config) compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <l...@intel.com> smatch warnings: fs/d_path.c:59 prepend() warn: unsigned 'p->len' is never less than zero. vim +59 fs/d_path.c b0cfcdd9b9672e Linus Torvalds 2021-07-16 55 b0cfcdd9b9672e Linus Torvalds 2021-07-16 56 static bool prepend(struct prepend_buffer *p, const char *str, int namelen) b0cfcdd9b9672e Linus Torvalds 2021-07-16 57 { b0cfcdd9b9672e Linus Torvalds 2021-07-16 58 // Already overflowed? b0cfcdd9b9672e Linus Torvalds 2021-07-16 @59 if (p->len < 0) b0cfcdd9b9672e Linus Torvalds 2021-07-16 60 return false; b0cfcdd9b9672e Linus Torvalds 2021-07-16 61 b0cfcdd9b9672e Linus Torvalds 2021-07-16 62 // Will overflow? b0cfcdd9b9672e Linus Torvalds 2021-07-16 63 if (p->len < namelen) { b0cfcdd9b9672e Linus Torvalds 2021-07-16 64 // Fill as much as possible from the end of the name b0cfcdd9b9672e Linus Torvalds 2021-07-16 65 str += namelen - p->len; b0cfcdd9b9672e Linus Torvalds 2021-07-16 66 p->buf -= p->len; b0cfcdd9b9672e Linus Torvalds 2021-07-16 67 prepend_copy(p->buf, str, p->len); b0cfcdd9b9672e Linus Torvalds 2021-07-16 68 p->len = -1; b0cfcdd9b9672e Linus Torvalds 2021-07-16 69 return false; b0cfcdd9b9672e Linus Torvalds 2021-07-16 70 } b0cfcdd9b9672e Linus Torvalds 2021-07-16 71 b0cfcdd9b9672e Linus Torvalds 2021-07-16 72 // Fits fully ad08ae586586ea Al Viro 2021-05-12 73 p->len -= namelen; ad08ae586586ea Al Viro 2021-05-12 74 p->buf -= namelen; b0cfcdd9b9672e Linus Torvalds 2021-07-16 75 return prepend_copy(p->buf, str, namelen); 7a5cf791a74764 Al Viro 2018-03-05 76 } 7a5cf791a74764 Al Viro 2018-03-05 77 :::::: The code at line 59 was first introduced by commit :::::: b0cfcdd9b9672ea90642f33d6c0dd8516553adf2 d_path: make 'prepend()' fill up the buffer exactly on overflow :::::: TO: Linus Torvalds <torva...@linux-foundation.org> :::::: CC: Linus Torvalds <torva...@linux-foundation.org> --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-...@lists.01.org _______________________________________________ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel