[linux-next:master 11691/11963] mm/kasan/kasan.c:429:12: error: dereferencing pointer to incomplete type 'struct stack_trace'

[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:   bb17bf337db5c5af7e75ec5916772c9bffcaf981
commit: d5e0cb037c3f7a9cc54b9427e0281c7877d62ff3 [11691/11963] mm, kasan: stackdepot implementation. Enable stackdepot for SLAB
config: x86_64-randconfig-v0-03111742 (attached as .config)
reproduce:
        git checkout d5e0cb037c3f7a9cc54b9427e0281c7877d62ff3
        # save the attached .config to linux build tree
        make ARCH=x86_64 

All error/warnings (new ones prefixed by >>):

   mm/kasan/kasan.c: In function 'filter_irq_stacks':
>> mm/kasan/kasan.c:429:12: error: dereferencing pointer to incomplete type 'struct stack_trace'
     if (!trace->nr_entries)
               ^
   mm/kasan/kasan.c: In function 'save_stack':
>> mm/kasan/kasan.c:442:9: error: variable 'trace' has initializer but incomplete type
     struct stack_trace trace = {
            ^
>> mm/kasan/kasan.c:443:3: error: unknown field 'nr_entries' specified in initializer
      .nr_entries = 0,
      ^
>> mm/kasan/kasan.c:443:17: warning: excess elements in struct initializer
      .nr_entries = 0,
                    ^
   mm/kasan/kasan.c:443:17: note: (near initialization for 'trace')
>> mm/kasan/kasan.c:444:3: error: unknown field 'entries' specified in initializer
      .entries = entries,
      ^
   mm/kasan/kasan.c:444:14: warning: excess elements in struct initializer
      .entries = entries,
                 ^
   mm/kasan/kasan.c:444:14: note: (near initialization for 'trace')
>> mm/kasan/kasan.c:445:3: error: unknown field 'max_entries' specified in initializer
      .max_entries = KASAN_STACK_DEPTH,
      ^
   In file included from mm/kasan/kasan.c:38:0:
>> mm/kasan/kasan.h:68:27: warning: excess elements in struct initializer
    #define KASAN_STACK_DEPTH 64
                              ^
>> mm/kasan/kasan.c:445:18: note: in expansion of macro 'KASAN_STACK_DEPTH'
      .max_entries = KASAN_STACK_DEPTH,
                     ^
   mm/kasan/kasan.h:68:27: note: (near initialization for 'trace')
    #define KASAN_STACK_DEPTH 64
                              ^
>> mm/kasan/kasan.c:445:18: note: in expansion of macro 'KASAN_STACK_DEPTH'
      .max_entries = KASAN_STACK_DEPTH,
                     ^
>> mm/kasan/kasan.c:446:3: error: unknown field 'skip' specified in initializer
      .skip = 0
      ^
   mm/kasan/kasan.c:446:11: warning: excess elements in struct initializer
      .skip = 0
              ^
   mm/kasan/kasan.c:446:11: note: (near initialization for 'trace')
>> mm/kasan/kasan.c:442:21: error: storage size of 'trace' isn't known
     struct stack_trace trace = {
                        ^
>> mm/kasan/kasan.c:442:21: warning: unused variable 'trace' [-Wunused-variable]

vim +429 mm/kasan/kasan.c

   423	}
   424	
   425	static inline void filter_irq_stacks(struct stack_trace *trace)
   426	{
   427		int i;
   428	
 > 429		if (!trace->nr_entries)
   430			return;
   431		for (i = 0; i < trace->nr_entries; i++)
   432			if (in_irqentry_text(trace->entries[i])) {
   433				/* Include the irqentry function into the stack. */
   434				trace->nr_entries = i + 1;
   435				break;
   436			}
   437	}
   438	
   439	static inline depot_stack_handle save_stack(gfp_t flags)
   440	{
   441		unsigned long entries[KASAN_STACK_DEPTH];
 > 442		struct stack_trace trace = {
 > 443			.nr_entries = 0,
 > 444			.entries = entries,
 > 445			.max_entries = KASAN_STACK_DEPTH,
 > 446			.skip = 0
   447		};
   448	
   449		save_stack_trace(&trace);

---
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]