Messages in this thread |  | | Date | Mon, 11 Apr 2022 05:21:04 +0800 | From | kernel test robot <> | Subject | [norov:bitmap-for-next 43/43] lib/bitmap.c:1571:36: warning: operation on 'i' may be undefined |
| |
tree: https://github.com/norov/linux bitmap-for-next head: a136dfabd10d0c1354c41a069cc4e00147a721e1 commit: a136dfabd10d0c1354c41a069cc4e00147a721e1 [43/43] bitmap_from_arr64 config: um-i386_defconfig (https://download.01.org/0day-ci/archive/20220411/202204110512.jCY23V15-lkp@intel.com/config) compiler: gcc-11 (Debian 11.2.0-19) 11.2.0 reproduce (this is a W=1 build): # https://github.com/norov/linux/commit/a136dfabd10d0c1354c41a069cc4e00147a721e1 git remote add norov https://github.com/norov/linux git fetch --no-tags norov bitmap-for-next git checkout a136dfabd10d0c1354c41a069cc4e00147a721e1 # save the config file to linux build tree mkdir build_dir make W=1 O=build_dir ARCH=um SUBARCH=i386 SHELL=/bin/bash
If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@intel.com>
All warnings (new ones prefixed by >>):
lib/bitmap.c: In function 'bitmap_to_arr64': >> lib/bitmap.c:1571:36: warning: operation on 'i' may be undefined [-Wsequence-point] 1571 | buf[i/2] = bitmap[i++]; | ~^~ >> lib/bitmap.c:1573:49: warning: left shift count >= width of type [-Wshift-count-overflow] 1573 | buf[i/2] |= bitmap[i++] << 32; | ^~ lib/bitmap.c:1573:45: warning: operation on 'i' may be undefined [-Wsequence-point] 1573 | buf[i/2] |= bitmap[i++] << 32; | ~^~ lib/bitmap.c:1573:45: warning: operation on 'i' may be undefined [-Wsequence-point]
vim +/i +1571 lib/bitmap.c
1559 1560 /** 1561 * bitmap_to_arr64 - copy the contents of bitmap to a u64 array of bits 1562 * @buf: array of u64 (in host byte order), the dest bitmap 1563 * @bitmap: array of unsigned longs, the source bitmap 1564 * @nbits: number of bits in @bitmap 1565 */ 1566 void bitmap_to_arr64(u64 *buf, const unsigned long *bitmap, unsigned int nbits) 1567 { 1568 unsigned int i = 0, words = BITS_TO_LONGS(nbits); 1569 1570 while (i < words) { > 1571 buf[i/2] = bitmap[i++]; 1572 if (i < words) > 1573 buf[i/2] |= bitmap[i++] << 32; 1574 } 1575 1576 /* Clear tail bits in last element of array beyond nbits. */ 1577 if (nbits % 64) 1578 buf[i - 1] &= GENMASK_ULL(nbits, 0); 1579 } 1580 EXPORT_SYMBOL(bitmap_to_arr64); 1581
-- 0-DAY CI Kernel Test Service https://01.org/lkp
|  |