[vbabka-slab:for-6.1/common_kmalloc 12/17] mm/slab_common.c:1023:7: warning: no previous prototype for function '__kmalloc_large_node'

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



tree:   git://git.kernel.org/pub/scm/linux/kernel/git/vbabka/slab.git for-6.1/common_kmalloc
head:   b261334803b44092acd06be3c9f32c46af818359
commit: 79c7527b9805edf14c952deca45de60a8a06a414 [12/17] mm/sl[au]b: generalize kmalloc subsystem
config: s390-randconfig-r044-20220823 (https://download.01.org/0day-ci/archive/20220824/202208240825.lwZks9Hg-lkp@xxxxxxxxx/config)
compiler: clang version 16.0.0 (https://github.com/llvm/llvm-project b04d01c009d7f66bcca9138d2ce40999eedf104d)
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
        # install s390 cross compiling tool for clang build
        # apt-get install binutils-s390x-linux-gnu
        # https://git.kernel.org/pub/scm/linux/kernel/git/vbabka/slab.git/commit/?id=79c7527b9805edf14c952deca45de60a8a06a414
        git remote add vbabka-slab git://git.kernel.org/pub/scm/linux/kernel/git/vbabka/slab.git
        git fetch --no-tags vbabka-slab for-6.1/common_kmalloc
        git checkout 79c7527b9805edf14c952deca45de60a8a06a414
        # 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=s390 SHELL=/bin/bash

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

All warnings (new ones prefixed by >>):

>> mm/slab_common.c:1023:7: warning: no previous prototype for function '__kmalloc_large_node' [-Wmissing-prototypes]
   void *__kmalloc_large_node(size_t size, gfp_t flags, int node)
         ^
   mm/slab_common.c:1023:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
   void *__kmalloc_large_node(size_t size, gfp_t flags, int node)
   ^
   static 
   1 warning generated.


vim +/__kmalloc_large_node +1023 mm/slab_common.c

  1016	
  1017	/*
  1018	 * To avoid unnecessary overhead, we pass through large allocation requests
  1019	 * directly to the page allocator. We use __GFP_COMP, because we will need to
  1020	 * know the allocation order to free the pages properly in kfree.
  1021	 */
  1022	
> 1023	void *__kmalloc_large_node(size_t size, gfp_t flags, int node)
  1024	{
  1025		struct page *page;
  1026		void *ptr = NULL;
  1027		unsigned int order = get_order(size);
  1028	
  1029		if (unlikely(flags & GFP_SLAB_BUG_MASK))
  1030			flags = kmalloc_fix_flags(flags);
  1031	
  1032		flags |= __GFP_COMP;
  1033		page = alloc_pages_node(node, flags, order);
  1034		if (page) {
  1035			ptr = page_address(page);
  1036			mod_lruvec_page_state(page, NR_SLAB_UNRECLAIMABLE_B,
  1037					      PAGE_SIZE << order);
  1038		}
  1039	
  1040		ptr = kasan_kmalloc_large(ptr, size, flags);
  1041		/* As ptr might get tagged, call kmemleak hook after KASAN. */
  1042		kmemleak_alloc(ptr, size, 1, flags);
  1043	
  1044		return ptr;
  1045	}
  1046	

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




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux