[linux-next:master 12891/13017] mm/slub.c:2396:1: warning: '___slab_alloc' uses dynamic stack allocation

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

 



tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head:   2bba65ab5f9f1cebd21d95c410b96952851f58b3
commit: e191357c4c31d02eb30736a49327ef32407fab47 [12891/13017] slub: create new ___slab_alloc function that can be called with irqs disabled
config: s390-allmodconfig (attached as .config)
reproduce:
        wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        git checkout e191357c4c31d02eb30736a49327ef32407fab47
        # save the attached .config to linux build tree
        make.cross ARCH=s390 

All warnings (new ones prefixed by >>):

   mm/slub.c: In function 'unfreeze_partials.isra.42':
   mm/slub.c:2019:1: warning: 'unfreeze_partials.isra.42' uses dynamic stack allocation
    }
    ^
   mm/slub.c: In function 'get_partial_node.isra.43':
   mm/slub.c:1654:1: warning: 'get_partial_node.isra.43' uses dynamic stack allocation
    }
    ^
   mm/slub.c: In function 'deactivate_slab':
   mm/slub.c:1951:1: warning: 'deactivate_slab' uses dynamic stack allocation
    }
    ^
   mm/slub.c: In function '__slab_free':
   mm/slub.c:2696:1: warning: '__slab_free' uses dynamic stack allocation
    }
    ^
   mm/slub.c: In function '___slab_alloc':
>> mm/slub.c:2396:1: warning: '___slab_alloc' uses dynamic stack allocation
    }
    ^

vim +/___slab_alloc +2396 mm/slub.c

71c7a06f Christoph Lameter 2008-02-14  2380  		return NULL;
497b66f2 Christoph Lameter 2011-08-09  2381  	}
2cfb7455 Christoph Lameter 2011-06-01  2382  
f6e7def7 Christoph Lameter 2012-05-09  2383  	page = c->page;
5091b74a Christoph Lameter 2012-07-31  2384  	if (likely(!kmem_cache_debug(s) && pfmemalloc_match(page, gfpflags)))
497b66f2 Christoph Lameter 2011-08-09  2385  		goto load_freelist;
497b66f2 Christoph Lameter 2011-08-09  2386  
497b66f2 Christoph Lameter 2011-08-09  2387  	/* Only entered in the debug case */
d0e0ac97 Chen Gang         2013-07-15  2388  	if (kmem_cache_debug(s) &&
d0e0ac97 Chen Gang         2013-07-15  2389  			!alloc_debug_processing(s, page, freelist, addr))
497b66f2 Christoph Lameter 2011-08-09  2390  		goto new_slab;	/* Slab failed checks. Next slab needed */
894b8788 Christoph Lameter 2007-05-10  2391  
f6e7def7 Christoph Lameter 2012-05-09  2392  	deactivate_slab(s, page, get_freepointer(s, freelist));
c17dda40 Christoph Lameter 2012-05-09  2393  	c->page = NULL;
c17dda40 Christoph Lameter 2012-05-09  2394  	c->freelist = NULL;
6faa6833 Christoph Lameter 2012-05-09  2395  	return freelist;
894b8788 Christoph Lameter 2007-05-10 @2396  }
894b8788 Christoph Lameter 2007-05-10  2397  
894b8788 Christoph Lameter 2007-05-10  2398  /*
e191357c Christoph Lameter 2015-11-11  2399   * Another one that disabled interrupt and compensates for possible
e191357c Christoph Lameter 2015-11-11  2400   * cpu changes by refetching the per cpu area pointer.
e191357c Christoph Lameter 2015-11-11  2401   */
e191357c Christoph Lameter 2015-11-11  2402  static void *__slab_alloc(struct kmem_cache *s, gfp_t gfpflags, int node,
e191357c Christoph Lameter 2015-11-11  2403  			  unsigned long addr, struct kmem_cache_cpu *c)
e191357c Christoph Lameter 2015-11-11  2404  {

:::::: The code at line 2396 was first introduced by commit
:::::: 894b8788d7f265eb7c6f75a9a77cedeb48f51586 slub: support concurrent local and remote frees and allocs on a slab

:::::: TO: Christoph Lameter <clameter@xxxxxxx>
:::::: CC: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxxxxxxxx>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Attachment: .config.gz
Description: Binary data


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