Hi Jim,
[FYI, it's a private test report for your RFC patch.]
[auto build test ERROR on drm-intel/for-linux-next]
[also build test ERROR on linus/master v5.14-rc7 next-20210820]
[cannot apply to linux/master]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url:
https://github.com/0day-ci/linux/commits/Jim-Cromie/use-DYNAMIC_DEBUG-to-...
base:
git://anongit.freedesktop.org/drm-intel for-linux-next
config: m68k-randconfig-r025-20210822 (attached as .config)
compiler: m68k-linux-gcc (GCC) 11.2.0
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
#
https://github.com/0day-ci/linux/commit/2380f9e06628103fcc3a6359d7f86634b...
git remote add linux-review
https://github.com/0day-ci/linux
git fetch --no-tags linux-review
Jim-Cromie/use-DYNAMIC_DEBUG-to-implement-DRM-debug/20210823-062136
git checkout 2380f9e06628103fcc3a6359d7f86634b3d30728
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir
ARCH=m68k SHELL=/bin/bash
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
| ^~~~~~~~~~~~~~~
include/linux/export.h:152:41: note: in expansion of macro '___EXPORT_SYMBOL'
152 | #define __EXPORT_SYMBOL(sym, sec, ns) ___EXPORT_SYMBOL(sym, sec, ns)
| ^~~~~~~~~~~~~~~~
include/linux/export.h:160:41: note: in expansion of macro '__EXPORT_SYMBOL'
160 | #define _EXPORT_SYMBOL(sym, sec) __EXPORT_SYMBOL(sym, sec,
"")
| ^~~~~~~~~~~~~~~
include/linux/export.h:163:41: note: in expansion of macro '_EXPORT_SYMBOL'
163 | #define EXPORT_SYMBOL(sym) _EXPORT_SYMBOL(sym, "")
| ^~~~~~~~~~~~~~
lib/dynamic_debug.c:667:1: note: in expansion of macro 'EXPORT_SYMBOL'
667 | EXPORT_SYMBOL(param_set_dyndbg);
| ^~~~~~~~~~~~~
lib/dynamic_debug.c:681:15: error: non-static declaration of 'param_get_dyndbg'
follows static declaration
681 | EXPORT_SYMBOL(param_get_dyndbg);
| ^~~~~~~~~~~~~~~~
include/linux/export.h:98:28: note: in definition of macro '___EXPORT_SYMBOL'
98 | extern typeof(sym) sym;
\
| ^~~
include/linux/export.h:160:41: note: in expansion of macro '__EXPORT_SYMBOL'
160 | #define _EXPORT_SYMBOL(sym, sec) __EXPORT_SYMBOL(sym, sec,
"")
| ^~~~~~~~~~~~~~~
include/linux/export.h:163:41: note: in expansion of macro '_EXPORT_SYMBOL'
163 | #define EXPORT_SYMBOL(sym) _EXPORT_SYMBOL(sym, "")
| ^~~~~~~~~~~~~~
lib/dynamic_debug.c:681:1: note: in expansion of macro 'EXPORT_SYMBOL'
681 | EXPORT_SYMBOL(param_get_dyndbg);
| ^~~~~~~~~~~~~
lib/dynamic_debug.c:676:5: note: previous definition of 'param_get_dyndbg' with
type 'int(char *, const struct kernel_param *)'
676 | int param_get_dyndbg(char *buffer, const struct kernel_param *kp)
| ^~~~~~~~~~~~~~~~
In file included from include/linux/linkage.h:7,
from include/linux/kernel.h:8,
from lib/dynamic_debug.c:16:
include/linux/export.h:67:9: warning: ISO C90 forbids mixed declarations and code
[-Wdeclaration-after-statement]
67 | static const struct kernel_symbol __ksymtab_##sym \
| ^~~~~~
include/linux/export.h:108:9: note: in expansion of macro '__KSYMTAB_ENTRY'
108 | __KSYMTAB_ENTRY(sym, sec)
| ^~~~~~~~~~~~~~~
include/linux/export.h:152:41: note: in expansion of macro '___EXPORT_SYMBOL'
152 | #define __EXPORT_SYMBOL(sym, sec, ns) ___EXPORT_SYMBOL(sym, sec, ns)
| ^~~~~~~~~~~~~~~~
include/linux/export.h:160:41: note: in expansion of macro '__EXPORT_SYMBOL'
160 | #define _EXPORT_SYMBOL(sym, sec) __EXPORT_SYMBOL(sym, sec,
"")
| ^~~~~~~~~~~~~~~
include/linux/export.h:163:41: note: in expansion of macro '_EXPORT_SYMBOL'
163 | #define EXPORT_SYMBOL(sym) _EXPORT_SYMBOL(sym, "")
| ^~~~~~~~~~~~~~
lib/dynamic_debug.c:681:1: note: in expansion of macro 'EXPORT_SYMBOL'
681 | EXPORT_SYMBOL(param_get_dyndbg);
| ^~~~~~~~~~~~~
lib/dynamic_debug.c:688:15: error: extern declaration of 'param_ops_dyndbg'
follows declaration with no linkage
688 | EXPORT_SYMBOL(param_ops_dyndbg);
| ^~~~~~~~~~~~~~~~
include/linux/export.h:98:28: note: in definition of macro '___EXPORT_SYMBOL'
98 | extern typeof(sym) sym;
\
| ^~~
include/linux/export.h:160:41: note: in expansion of macro '__EXPORT_SYMBOL'
160 | #define _EXPORT_SYMBOL(sym, sec) __EXPORT_SYMBOL(sym, sec,
"")
| ^~~~~~~~~~~~~~~
include/linux/export.h:163:41: note: in expansion of macro '_EXPORT_SYMBOL'
163 | #define EXPORT_SYMBOL(sym) _EXPORT_SYMBOL(sym, "")
| ^~~~~~~~~~~~~~
lib/dynamic_debug.c:688:1: note: in expansion of macro 'EXPORT_SYMBOL'
688 | EXPORT_SYMBOL(param_ops_dyndbg);
| ^~~~~~~~~~~~~
lib/dynamic_debug.c:683:31: note: previous definition of 'param_ops_dyndbg'
with type 'const struct kernel_param_ops'
683 | const struct kernel_param_ops param_ops_dyndbg = {
| ^~~~~~~~~~~~~~~~
In file included from include/linux/linkage.h:7,
from include/linux/kernel.h:8,
from lib/dynamic_debug.c:16:
include/linux/export.h:67:9: warning: ISO C90 forbids mixed declarations and code
[-Wdeclaration-after-statement]
67 | static const struct kernel_symbol __ksymtab_##sym \
| ^~~~~~
include/linux/export.h:108:9: note: in expansion of macro '__KSYMTAB_ENTRY'
108 | __KSYMTAB_ENTRY(sym, sec)
| ^~~~~~~~~~~~~~~
include/linux/export.h:152:41: note: in expansion of macro '___EXPORT_SYMBOL'
152 | #define __EXPORT_SYMBOL(sym, sec, ns) ___EXPORT_SYMBOL(sym, sec, ns)
| ^~~~~~~~~~~~~~~~
include/linux/export.h:160:41: note: in expansion of macro '__EXPORT_SYMBOL'
160 | #define _EXPORT_SYMBOL(sym, sec) __EXPORT_SYMBOL(sym, sec,
"")
| ^~~~~~~~~~~~~~~
include/linux/export.h:163:41: note: in expansion of macro '_EXPORT_SYMBOL'
163 | #define EXPORT_SYMBOL(sym) _EXPORT_SYMBOL(sym, "")
| ^~~~~~~~~~~~~~
lib/dynamic_debug.c:688:1: note: in expansion of macro 'EXPORT_SYMBOL'
688 | EXPORT_SYMBOL(param_ops_dyndbg);
| ^~~~~~~~~~~~~
lib/dynamic_debug.c:692:12: error: invalid storage class for function
'remaining'
692 | static int remaining(int wrote)
| ^~~~~~~~~
lib/dynamic_debug.c:699:14: error: invalid storage class for function
'__dynamic_emit_prefix'
699 | static char *__dynamic_emit_prefix(const struct _ddebug *desc, char *buf)
| ^~~~~~~~~~~~~~~~~~~~~
lib/dynamic_debug.c:729:21: error: invalid storage class for function
'dynamic_emit_prefix'
729 | static inline char *dynamic_emit_prefix(struct _ddebug *desc, char *buf)
| ^~~~~~~~~~~~~~~~~~~
> lib/dynamic_debug.c:749:33: error: invalid storage class for
function 'ddebug_rl_fetch'
749 | static struct ddebug_ratelimit
*ddebug_rl_fetch(struct _ddebug *desc);
| ^~~~~~~~~~~~~~~
> lib/dynamic_debug.c:751:20: error: invalid storage class for
function 'is_onced_or_limited'
751 | static inline bool
is_onced_or_limited(struct _ddebug *desc)
| ^~~~~~~~~~~~~~~~~~~
In file included from include/linux/printk.h:10,
from include/linux/kernel.h:19,
from lib/dynamic_debug.c:16:
lib/dynamic_debug.c: In function 'is_onced_or_limited':
> lib/dynamic_debug.c:767:43: error: implicit declaration of
function 'ddebug_rl_fetch' [-Werror=implicit-function-declaration]
767
| bool state = __ratelimit(&ddebug_rl_fetch(desc)->rs);
| ^~~~~~~~~~~~~~~
include/linux/ratelimit_types.h:41:41: note: in definition of macro
'__ratelimit'
41 | #define __ratelimit(state) ___ratelimit(state, __func__)
| ^~~~~
> lib/dynamic_debug.c:767:64: error: invalid type argument of
'->' (have 'int')
767 | bool state =
__ratelimit(&ddebug_rl_fetch(desc)->rs);
| ^~
include/linux/ratelimit_types.h:41:41: note: in definition of macro
'__ratelimit'
41 | #define __ratelimit(state) ___ratelimit(state, __func__)
| ^~~~~
In file included from include/linux/linkage.h:7,
from include/linux/kernel.h:8,
from lib/dynamic_debug.c:16:
lib/dynamic_debug.c: In function 'ddebug_exec_queries':
lib/dynamic_debug.c:812:15: error: non-static declaration of
'__dynamic_pr_debug' follows static declaration
812 | EXPORT_SYMBOL(__dynamic_pr_debug);
| ^~~~~~~~~~~~~~~~~~
include/linux/export.h:98:28: note: in definition of macro '___EXPORT_SYMBOL'
98 | extern typeof(sym) sym;
\
| ^~~
include/linux/export.h:160:41: note: in expansion of macro '__EXPORT_SYMBOL'
160 | #define _EXPORT_SYMBOL(sym, sec) __EXPORT_SYMBOL(sym, sec,
"")
| ^~~~~~~~~~~~~~~
include/linux/export.h:163:41: note: in expansion of macro '_EXPORT_SYMBOL'
163 | #define EXPORT_SYMBOL(sym) _EXPORT_SYMBOL(sym, "")
| ^~~~~~~~~~~~~~
lib/dynamic_debug.c:812:1: note: in expansion of macro 'EXPORT_SYMBOL'
812 | EXPORT_SYMBOL(__dynamic_pr_debug);
| ^~~~~~~~~~~~~
lib/dynamic_debug.c:779:6: note: previous definition of '__dynamic_pr_debug'
with type 'void(struct _ddebug *, const char *, ...)'
779 | void __dynamic_pr_debug(struct _ddebug *descriptor, const char *fmt, ...)
| ^~~~~~~~~~~~~~~~~~
In file included from include/linux/linkage.h:7,
from include/linux/kernel.h:8,
from lib/dynamic_debug.c:16:
include/linux/export.h:67:9: warning: ISO C90 forbids mixed declarations and code
[-Wdeclaration-after-statement]
67 | static const struct kernel_symbol __ksymtab_##sym \
| ^~~~~~
include/linux/export.h:108:9: note: in expansion of macro '__KSYMTAB_ENTRY'
108 | __KSYMTAB_ENTRY(sym, sec)
| ^~~~~~~~~~~~~~~
include/linux/export.h:152:41: note: in expansion of macro '___EXPORT_SYMBOL'
152 | #define __EXPORT_SYMBOL(sym, sec, ns) ___EXPORT_SYMBOL(sym, sec, ns)
| ^~~~~~~~~~~~~~~~
include/linux/export.h:160:41: note: in expansion of macro '__EXPORT_SYMBOL'
160 | #define _EXPORT_SYMBOL(sym, sec) __EXPORT_SYMBOL(sym, sec,
"")
| ^~~~~~~~~~~~~~~
include/linux/export.h:163:41: note: in expansion of macro '_EXPORT_SYMBOL'
163 | #define EXPORT_SYMBOL(sym) _EXPORT_SYMBOL(sym, "")
| ^~~~~~~~~~~~~~
lib/dynamic_debug.c:812:1: note: in expansion of macro 'EXPORT_SYMBOL'
812 | EXPORT_SYMBOL(__dynamic_pr_debug);
| ^~~~~~~~~~~~~
lib/dynamic_debug.c:844:15: error: non-static declaration of
'__dynamic_dev_dbg' follows static declaration
844 | EXPORT_SYMBOL(__dynamic_dev_dbg);
| ^~~~~~~~~~~~~~~~~
include/linux/export.h:98:28: note: in definition of macro '___EXPORT_SYMBOL'
98 | extern typeof(sym) sym;
\
| ^~~
include/linux/export.h:160:41: note: in expansion of macro '__EXPORT_SYMBOL'
160 | #define _EXPORT_SYMBOL(sym, sec) __EXPORT_SYMBOL(sym, sec,
"")
| ^~~~~~~~~~~~~~~
include/linux/export.h:163:41: note: in expansion of macro '_EXPORT_SYMBOL'
163 | #define EXPORT_SYMBOL(sym) _EXPORT_SYMBOL(sym, "")
| ^~~~~~~~~~~~~~
lib/dynamic_debug.c:844:1: note: in expansion of macro 'EXPORT_SYMBOL'
844 | EXPORT_SYMBOL(__dynamic_dev_dbg);
| ^~~~~~~~~~~~~
lib/dynamic_debug.c:814:6: note: previous definition of '__dynamic_dev_dbg'
with type 'void(struct _ddebug *, const struct device *, const char *, ...)'
814 | void __dynamic_dev_dbg(struct _ddebug *descriptor,
| ^~~~~~~~~~~~~~~~~
In file included from include/linux/linkage.h:7,
from include/linux/kernel.h:8,
from lib/dynamic_debug.c:16:
include/linux/export.h:67:9: warning: ISO C90 forbids mixed declarations and code
[-Wdeclaration-after-statement]
67 | static const struct kernel_symbol __ksymtab_##sym \
| ^~~~~~
include/linux/export.h:108:9: note: in expansion of macro '__KSYMTAB_ENTRY'
108 | __KSYMTAB_ENTRY(sym, sec)
| ^~~~~~~~~~~~~~~
include/linux/export.h:152:41: note: in expansion of macro '___EXPORT_SYMBOL'
152 | #define __EXPORT_SYMBOL(sym, sec, ns) ___EXPORT_SYMBOL(sym, sec, ns)
| ^~~~~~~~~~~~~~~~
include/linux/export.h:160:41: note: in expansion of macro '__EXPORT_SYMBOL'
160 | #define _EXPORT_SYMBOL(sym, sec) __EXPORT_SYMBOL(sym, sec,
"")
| ^~~~~~~~~~~~~~~
include/linux/export.h:163:41: note: in expansion of macro '_EXPORT_SYMBOL'
163 | #define EXPORT_SYMBOL(sym) _EXPORT_SYMBOL(sym, "")
| ^~~~~~~~~~~~~~
lib/dynamic_debug.c:844:1: note: in expansion of macro 'EXPORT_SYMBOL'
844 | EXPORT_SYMBOL(__dynamic_dev_dbg);
| ^~~~~~~~~~~~~
lib/dynamic_debug.c:929:19: error: invalid storage class for function
'ddebug_setup_query'
929 | static __init int ddebug_setup_query(char *str)
| ^~~~~~~~~~~~~~~~~~
In file included from include/linux/printk.h:6,
from include/linux/kernel.h:19,
from lib/dynamic_debug.c:16:
lib/dynamic_debug.c:939:26: error: initializer element is not constant
939 | __setup("ddebug_query=", ddebug_setup_query);
| ^~~~~~~~~~~~~~~~~~
include/linux/init.h:321:46: note: in definition of macro '__setup_param'
321 | = { __setup_str_##unique_id, fn, early }
| ^~
lib/dynamic_debug.c:939:1: note: in expansion of macro '__setup'
--
| ^~~~~~
include/linux/init.h:254:9: note: in expansion of macro '____define_initcall'
254 | ____define_initcall(fn, \
| ^~~~~~~~~~~~~~~~~~~
include/linux/init.h:260:9: note: in expansion of macro '__unique_initcall'
260 | __unique_initcall(fn, id, __sec, __initcall_id(fn))
| ^~~~~~~~~~~~~~~~~
include/linux/init.h:262:35: note: in expansion of macro '___define_initcall'
262 | #define __define_initcall(fn, id) ___define_initcall(fn, id, .initcall##id)
| ^~~~~~~~~~~~~~~~~~
include/linux/init.h:288:41: note: in expansion of macro '__define_initcall'
288 | #define fs_initcall(fn) __define_initcall(fn, 5)
| ^~~~~~~~~~~~~~~~~
lib/dynamic_debug.c:1333:1: note: in expansion of macro 'fs_initcall'
1333 | fs_initcall(dynamic_debug_init_control);
| ^~~~~~~~~~~
lib/dynamic_debug.c:1349:1: warning: ISO C90 forbids mixed declarations and code
[-Wdeclaration-after-statement]
1349 | int dynamic_debug_register_tracer(const char *query, const char *modname,
| ^~~
In file included from include/linux/linkage.h:7,
from include/linux/kernel.h:8,
from lib/dynamic_debug.c:16:
lib/dynamic_debug.c:1354:15: error: non-static declaration of
'dynamic_debug_register_tracer' follows static declaration
1354 | EXPORT_SYMBOL(dynamic_debug_register_tracer);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/export.h:98:28: note: in definition of macro '___EXPORT_SYMBOL'
98 | extern typeof(sym) sym;
\
| ^~~
include/linux/export.h:160:41: note: in expansion of macro '__EXPORT_SYMBOL'
160 | #define _EXPORT_SYMBOL(sym, sec) __EXPORT_SYMBOL(sym, sec,
"")
| ^~~~~~~~~~~~~~~
include/linux/export.h:163:41: note: in expansion of macro '_EXPORT_SYMBOL'
163 | #define EXPORT_SYMBOL(sym) _EXPORT_SYMBOL(sym, "")
| ^~~~~~~~~~~~~~
lib/dynamic_debug.c:1354:1: note: in expansion of macro 'EXPORT_SYMBOL'
1354 | EXPORT_SYMBOL(dynamic_debug_register_tracer);
| ^~~~~~~~~~~~~
lib/dynamic_debug.c:1349:5: note: previous definition of
'dynamic_debug_register_tracer' with type 'int(const char *, const char *, int
(*)(const char *, char *, char *, struct va_format *))'
1349 | int dynamic_debug_register_tracer(const char *query, const char *modname,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from include/linux/linkage.h:7,
from include/linux/kernel.h:8,
from lib/dynamic_debug.c:16:
include/linux/export.h:67:9: warning: ISO C90 forbids mixed declarations and code
[-Wdeclaration-after-statement]
67 | static const struct kernel_symbol __ksymtab_##sym \
| ^~~~~~
include/linux/export.h:108:9: note: in expansion of macro '__KSYMTAB_ENTRY'
108 | __KSYMTAB_ENTRY(sym, sec)
| ^~~~~~~~~~~~~~~
include/linux/export.h:152:41: note: in expansion of macro '___EXPORT_SYMBOL'
152 | #define __EXPORT_SYMBOL(sym, sec, ns) ___EXPORT_SYMBOL(sym, sec, ns)
| ^~~~~~~~~~~~~~~~
include/linux/export.h:160:41: note: in expansion of macro '__EXPORT_SYMBOL'
160 | #define _EXPORT_SYMBOL(sym, sec) __EXPORT_SYMBOL(sym, sec,
"")
| ^~~~~~~~~~~~~~~
include/linux/export.h:163:41: note: in expansion of macro '_EXPORT_SYMBOL'
163 | #define EXPORT_SYMBOL(sym) _EXPORT_SYMBOL(sym, "")
| ^~~~~~~~~~~~~~
lib/dynamic_debug.c:1354:1: note: in expansion of macro 'EXPORT_SYMBOL'
1354 | EXPORT_SYMBOL(dynamic_debug_register_tracer);
| ^~~~~~~~~~~~~
lib/dynamic_debug.c:1372:15: error: non-static declaration of
'dynamic_debug_unregister_tracer' follows static declaration
1372 | EXPORT_SYMBOL(dynamic_debug_unregister_tracer);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/export.h:98:28: note: in definition of macro '___EXPORT_SYMBOL'
98 | extern typeof(sym) sym;
\
| ^~~
include/linux/export.h:160:41: note: in expansion of macro '__EXPORT_SYMBOL'
160 | #define _EXPORT_SYMBOL(sym, sec) __EXPORT_SYMBOL(sym, sec,
"")
| ^~~~~~~~~~~~~~~
include/linux/export.h:163:41: note: in expansion of macro '_EXPORT_SYMBOL'
163 | #define EXPORT_SYMBOL(sym) _EXPORT_SYMBOL(sym, "")
| ^~~~~~~~~~~~~~
lib/dynamic_debug.c:1372:1: note: in expansion of macro 'EXPORT_SYMBOL'
1372 | EXPORT_SYMBOL(dynamic_debug_unregister_tracer);
| ^~~~~~~~~~~~~
lib/dynamic_debug.c:1367:5: note: previous definition of
'dynamic_debug_unregister_tracer' with type 'int(const char *, const char *,
int (*)(const char *, char *, char *, struct va_format *))'
1367 | int dynamic_debug_unregister_tracer(const char *query, const char *modname,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from include/linux/linkage.h:7,
from include/linux/kernel.h:8,
from lib/dynamic_debug.c:16:
include/linux/export.h:67:9: warning: ISO C90 forbids mixed declarations and code
[-Wdeclaration-after-statement]
67 | static const struct kernel_symbol __ksymtab_##sym \
| ^~~~~~
include/linux/export.h:108:9: note: in expansion of macro '__KSYMTAB_ENTRY'
108 | __KSYMTAB_ENTRY(sym, sec)
| ^~~~~~~~~~~~~~~
include/linux/export.h:152:41: note: in expansion of macro '___EXPORT_SYMBOL'
152 | #define __EXPORT_SYMBOL(sym, sec, ns) ___EXPORT_SYMBOL(sym, sec, ns)
| ^~~~~~~~~~~~~~~~
include/linux/export.h:160:41: note: in expansion of macro '__EXPORT_SYMBOL'
160 | #define _EXPORT_SYMBOL(sym, sec) __EXPORT_SYMBOL(sym, sec,
"")
| ^~~~~~~~~~~~~~~
include/linux/export.h:163:41: note: in expansion of macro '_EXPORT_SYMBOL'
163 | #define EXPORT_SYMBOL(sym) _EXPORT_SYMBOL(sym, "")
| ^~~~~~~~~~~~~~
lib/dynamic_debug.c:1372:1: note: in expansion of macro 'EXPORT_SYMBOL'
1372 | EXPORT_SYMBOL(dynamic_debug_unregister_tracer);
| ^~~~~~~~~~~~~
> lib/dynamic_debug.c:1387:33: error: invalid storage class for
function 'ddebug_rl_find'
1387 | static struct ddebug_ratelimit
*ddebug_rl_find(u64 key)
| ^~~~~~~~~~~~~~
> lib/dynamic_debug.c:1399:33: error: invalid storage class for
function 'ddebug_rl_add'
1399 | static struct ddebug_ratelimit
*ddebug_rl_add(u64 key)
| ^~~~~~~~~~~~~
lib/dynamic_debug.c:1422:33: error: invalid storage class for function
'ddebug_rl_fetch'
1422 | static struct ddebug_ratelimit *ddebug_rl_fetch(struct _ddebug *desc)
| ^~~~~~~~~~~~~~~
lib/dynamic_debug.c: In function 'ddebug_rl_fetch':
lib/dynamic_debug.c:1424:19: warning: cast from pointer to integer of different size
[-Wpointer-to-int-cast]
1424 | u64 key = (u64)desc;
| ^
lib/dynamic_debug.c: In function 'ddebug_exec_queries':
> lib/dynamic_debug.c:1432:1: error: expected declaration or
statement at end of input
1432 | }
| ^
At top level:
lib/dynamic_debug.c:1422:33: warning: 'ddebug_rl_fetch' defined but not used
[-Wunused-function]
1422 | static struct ddebug_ratelimit *ddebug_rl_fetch(struct _ddebug *desc)
| ^~~~~~~~~~~~~~~
lib/dynamic_debug.c:1203:5: warning: 'ddebug_remove_module' defined but not
used [-Wunused-function]
1203 | int ddebug_remove_module(const char *mod_name)
| ^~~~~~~~~~~~~~~~~~~~
lib/dynamic_debug.c:1187:5: warning: 'ddebug_dyndbg_module_param_cb' defined
but not used [-Wunused-function]
1187 | int ddebug_dyndbg_module_param_cb(char *param, char *val, const char *module)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
vim +/ddebug_rl_fetch +749 lib/dynamic_debug.c
741
742 /* test print-once or ratelimited conditions */
743 #define is_rated(desc) unlikely(desc->flags & _DPRINTK_FLAGS_RATELIMITED)
744 #define is_once(desc) unlikely(desc->flags & _DPRINTK_FLAGS_ONCE)
745 #define is_onced(desc) \
746 unlikely((desc->flags & _DPRINTK_FLAGS_ONCE) \
747 && (desc->flags & _DPRINTK_FLAGS_PRINTED))
748
749 static struct ddebug_ratelimit *ddebug_rl_fetch(struct _ddebug
*desc);
750
751 static inline bool is_onced_or_limited(struct _ddebug *desc)
752 {
753 if (unlikely(desc->flags & _DPRINTK_FLAGS_ONCE &&
754 desc->flags & _DPRINTK_FLAGS_RATELIMITED))
755 pr_info(" ONCE & RATELIMITED together is nonsense\n");
756
757 if (is_once(desc)) {
758 if (is_onced(desc)) {
759 v4pr_info("already printed once\n");
760 return true;
761 }
762 desc->flags |= _DPRINTK_FLAGS_PRINTED;
763 return false;
764
765 } else if (is_rated(desc)) {
766 /* test rate-limits */
767 bool state = __ratelimit(&ddebug_rl_fetch(desc)->rs);
768
769 v4pr_info("RLstate{%s}=%d on %s.%s.%d\n",
770 (desc->flags & _DPRINTK_FLAGS_GROUPED
771 ? "grouped" : "solo"), state,
772 desc->modname, desc->function, desc->lineno);
773
774 return state;
775 }
776 return false;
777 }
778
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org