linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [linux-next:master 8187/8914] lib/bitmap.c:351:6: error: conflicting types for '__bitmap_set'; have 'void(long unsigned int *, unsigned int, unsigned int)'
@ 2022-07-08 13:44 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2022-07-08 13:44 UTC (permalink / raw)
  To: Paul Menzel; +Cc: kbuild-all, Linux Memory Management List, Yury Norov

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head:   f2528c29385819a84480cacef4886b049761e2c5
commit: aaa4ab5ec04480fd0c16c7452d28444c862b2b87 [8187/8914] lib/bitmap: Make length parameter `len` unsigned
config: x86_64-randconfig-a011 (https://download.01.org/0day-ci/archive/20220708/202207082141.4CIiKu3c-lkp@intel.com/config)
compiler: gcc-11 (Debian 11.3.0-3) 11.3.0
reproduce (this is a W=1 build):
        # https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=aaa4ab5ec04480fd0c16c7452d28444c862b2b87
        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 aaa4ab5ec04480fd0c16c7452d28444c862b2b87
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        make W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash

If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@intel.com>

Note: the linux-next/master HEAD f2528c29385819a84480cacef4886b049761e2c5 builds fine.
      It may have been fixed somewhere.

All errors (new ones prefixed by >>):

>> lib/bitmap.c:351:6: error: conflicting types for '__bitmap_set'; have 'void(long unsigned int *, unsigned int,  unsigned int)'
     351 | void __bitmap_set(unsigned long *map, unsigned int start, unsigned int len)
         |      ^~~~~~~~~~~~
   In file included from lib/bitmap.c:7:
   include/linux/bitmap.h:167:6: note: previous declaration of '__bitmap_set' with type 'void(long unsigned int *, unsigned int,  int)'
     167 | void __bitmap_set(unsigned long *map, unsigned int start, int len);
         |      ^~~~~~~~~~~~
   In file included from include/linux/linkage.h:7,
                    from include/linux/printk.h:8,
                    from include/asm-generic/bug.h:22,
                    from arch/x86/include/asm/bug.h:87,
                    from include/linux/bug.h:5,
                    from include/linux/jump_label.h:257,
                    from arch/x86/include/asm/string_64.h:6,
                    from arch/x86/include/asm/string.h:5,
                    from include/linux/string.h:20,
                    from include/linux/bitmap.h:11,
                    from lib/bitmap.c:7:
   lib/bitmap.c:370:15: error: conflicting types for '__bitmap_set'; have 'void(long unsigned int *, unsigned int,  unsigned int)'
     370 | EXPORT_SYMBOL(__bitmap_set);
         |               ^~~~~~~~~~~~
   include/linux/export.h:87:28: note: in definition of macro '___EXPORT_SYMBOL'
      87 |         extern typeof(sym) sym;                                                 \
         |                            ^~~
   include/linux/export.h:147:41: note: in expansion of macro '__EXPORT_SYMBOL'
     147 | #define _EXPORT_SYMBOL(sym, sec)        __EXPORT_SYMBOL(sym, sec, "")
         |                                         ^~~~~~~~~~~~~~~
   include/linux/export.h:150:41: note: in expansion of macro '_EXPORT_SYMBOL'
     150 | #define EXPORT_SYMBOL(sym)              _EXPORT_SYMBOL(sym, "")
         |                                         ^~~~~~~~~~~~~~
   lib/bitmap.c:370:1: note: in expansion of macro 'EXPORT_SYMBOL'
     370 | EXPORT_SYMBOL(__bitmap_set);
         | ^~~~~~~~~~~~~
   In file included from lib/bitmap.c:7:
   include/linux/bitmap.h:167:6: note: previous declaration of '__bitmap_set' with type 'void(long unsigned int *, unsigned int,  int)'
     167 | void __bitmap_set(unsigned long *map, unsigned int start, int len);
         |      ^~~~~~~~~~~~


vim +351 lib/bitmap.c

   350	
 > 351	void __bitmap_set(unsigned long *map, unsigned int start, unsigned int len)
   352	{
   353		unsigned long *p = map + BIT_WORD(start);
   354		const unsigned int size = start + len;
   355		int bits_to_set = BITS_PER_LONG - (start % BITS_PER_LONG);
   356		unsigned long mask_to_set = BITMAP_FIRST_WORD_MASK(start);
   357	
   358		while (len >= bits_to_set) {
   359			*p |= mask_to_set;
   360			len -= bits_to_set;
   361			bits_to_set = BITS_PER_LONG;
   362			mask_to_set = ~0UL;
   363			p++;
   364		}
   365		if (len) {
   366			mask_to_set &= BITMAP_LAST_WORD_MASK(size);
   367			*p |= mask_to_set;
   368		}
   369	}
   370	EXPORT_SYMBOL(__bitmap_set);
   371	

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp


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

only message in thread, other threads:[~2022-07-08 13:44 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-07-08 13:44 [linux-next:master 8187/8914] lib/bitmap.c:351:6: error: conflicting types for '__bitmap_set'; have 'void(long unsigned int *, unsigned int, unsigned int)' kernel test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).