lkml.org 
[lkml]   [2018]   [Apr]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH v3 1/3] stacktrace: move arch_within_stack_frames from thread_info.h
    Hi Sahara,

    Thank you for the patch! Yet something to improve:

    [auto build test ERROR on linus/master]
    [also build test ERROR on v4.16 next-20180409]
    [cannot apply to tip/x86/core]
    [if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

    url: https://github.com/0day-ci/linux/commits/kpark3469-gmail-com/usercopy-reimplement-arch_within_stack_frames/20180409-221953
    config: x86_64-randconfig-s0-04100256 (attached as .config)
    compiler: gcc-6 (Debian 6.4.0-9) 6.4.0 20171026
    reproduce:
    # save the attached .config to linux build tree
    make ARCH=x86_64

    All errors (new ones prefixed by >>):

    drivers/gpu//drm/drm_mm.c: In function 'save_stack':
    drivers/gpu//drm/drm_mm.c:109:9: error: variable 'trace' has initializer but incomplete type
    struct stack_trace trace = {
    ^~~~~~~~~~~
    >> drivers/gpu//drm/drm_mm.c:110:3: error: unknown field 'entries' specified in initializer
    .entries = entries,
    ^
    drivers/gpu//drm/drm_mm.c:110:14: warning: excess elements in struct initializer
    .entries = entries,
    ^~~~~~~
    drivers/gpu//drm/drm_mm.c:110:14: note: (near initialization for 'trace')
    >> drivers/gpu//drm/drm_mm.c:111:3: error: unknown field 'max_entries' specified in initializer
    .max_entries = STACKDEPTH,
    ^
    drivers/gpu//drm/drm_mm.c:103:20: warning: excess elements in struct initializer
    #define STACKDEPTH 32
    ^
    drivers/gpu//drm/drm_mm.c:111:18: note: in expansion of macro 'STACKDEPTH'
    .max_entries = STACKDEPTH,
    ^~~~~~~~~~
    drivers/gpu//drm/drm_mm.c:103:20: note: (near initialization for 'trace')
    #define STACKDEPTH 32
    ^
    drivers/gpu//drm/drm_mm.c:111:18: note: in expansion of macro 'STACKDEPTH'
    .max_entries = STACKDEPTH,
    ^~~~~~~~~~
    >> drivers/gpu//drm/drm_mm.c:112:3: error: unknown field 'skip' specified in initializer
    .skip = 1
    ^
    drivers/gpu//drm/drm_mm.c:112:11: warning: excess elements in struct initializer
    .skip = 1
    ^
    drivers/gpu//drm/drm_mm.c:112:11: note: (near initialization for 'trace')
    drivers/gpu//drm/drm_mm.c:109:21: error: storage size of 'trace' isn't known
    struct stack_trace trace = {
    ^~~~~
    >> drivers/gpu//drm/drm_mm.c:115:2: error: implicit declaration of function 'save_stack_trace' [-Werror=implicit-function-declaration]
    save_stack_trace(&trace);
    ^~~~~~~~~~~~~~~~
    drivers/gpu//drm/drm_mm.c:109:21: warning: unused variable 'trace' [-Wunused-variable]
    struct stack_trace trace = {
    ^~~~~
    drivers/gpu//drm/drm_mm.c: In function 'show_leaks':
    drivers/gpu//drm/drm_mm.c:135:10: error: variable 'trace' has initializer but incomplete type
    struct stack_trace trace = {
    ^~~~~~~~~~~
    drivers/gpu//drm/drm_mm.c:136:4: error: unknown field 'entries' specified in initializer
    .entries = entries,
    ^
    drivers/gpu//drm/drm_mm.c:136:15: warning: excess elements in struct initializer
    .entries = entries,
    ^~~~~~~
    drivers/gpu//drm/drm_mm.c:136:15: note: (near initialization for 'trace')
    drivers/gpu//drm/drm_mm.c:137:4: error: unknown field 'max_entries' specified in initializer
    .max_entries = STACKDEPTH
    ^
    drivers/gpu//drm/drm_mm.c:103:20: warning: excess elements in struct initializer
    #define STACKDEPTH 32
    ^
    drivers/gpu//drm/drm_mm.c:137:19: note: in expansion of macro 'STACKDEPTH'
    .max_entries = STACKDEPTH
    ^~~~~~~~~~
    drivers/gpu//drm/drm_mm.c:103:20: note: (near initialization for 'trace')
    #define STACKDEPTH 32
    ^
    drivers/gpu//drm/drm_mm.c:137:19: note: in expansion of macro 'STACKDEPTH'
    .max_entries = STACKDEPTH
    ^~~~~~~~~~
    drivers/gpu//drm/drm_mm.c:135:22: error: storage size of 'trace' isn't known
    struct stack_trace trace = {
    ^~~~~
    drivers/gpu//drm/drm_mm.c:147:3: error: implicit declaration of function 'snprint_stack_trace' [-Werror=implicit-function-declaration]
    snprint_stack_trace(buf, BUFSZ, &trace, 0);
    ^~~~~~~~~~~~~~~~~~~
    drivers/gpu//drm/drm_mm.c:135:22: warning: unused variable 'trace' [-Wunused-variable]
    struct stack_trace trace = {
    ^~~~~
    cc1: some warnings being treated as errors

    vim +/max_entries +111 drivers/gpu//drm/drm_mm.c

    5705670d Chris Wilson 2016-10-31 105
    5705670d Chris Wilson 2016-10-31 106 static noinline void save_stack(struct drm_mm_node *node)
    5705670d Chris Wilson 2016-10-31 107 {
    5705670d Chris Wilson 2016-10-31 108 unsigned long entries[STACKDEPTH];
    5705670d Chris Wilson 2016-10-31 @109 struct stack_trace trace = {
    5705670d Chris Wilson 2016-10-31 @110 .entries = entries,
    5705670d Chris Wilson 2016-10-31 @111 .max_entries = STACKDEPTH,
    5705670d Chris Wilson 2016-10-31 @112 .skip = 1
    5705670d Chris Wilson 2016-10-31 113 };
    5705670d Chris Wilson 2016-10-31 114
    5705670d Chris Wilson 2016-10-31 @115 save_stack_trace(&trace);
    5705670d Chris Wilson 2016-10-31 116 if (trace.nr_entries != 0 &&
    5705670d Chris Wilson 2016-10-31 117 trace.entries[trace.nr_entries-1] == ULONG_MAX)
    5705670d Chris Wilson 2016-10-31 118 trace.nr_entries--;
    5705670d Chris Wilson 2016-10-31 119
    5705670d Chris Wilson 2016-10-31 120 /* May be called under spinlock, so avoid sleeping */
    5705670d Chris Wilson 2016-10-31 121 node->stack = depot_save_stack(&trace, GFP_NOWAIT);
    5705670d Chris Wilson 2016-10-31 122 }
    5705670d Chris Wilson 2016-10-31 123

    :::::: The code at line 111 was first introduced by commit
    :::::: 5705670d0463423337c82d00877989e7df8b169d drm: Track drm_mm allocators and show leaks on shutdown

    :::::: TO: Chris Wilson <chris@chris-wilson.co.uk>
    :::::: CC: Daniel Vetter <daniel.vetter@ffwll.ch>

    ---
    0-DAY kernel test infrastructure Open Source Technology Center
    https://lists.01.org/pipermail/kbuild-all Intel Corporation
    [unhandled content-type:application/gzip]
    \
     
     \ /
      Last update: 2018-04-09 23:05    [W:2.671 / U:0.100 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site