[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202204210819.DQQP836u-lkp@intel.com>
Date: Thu, 21 Apr 2022 14:43:46 +0800
From: kernel test robot <lkp@...el.com>
To: Aaron Tomlin <atomlin@...hat.com>, mcgrof@...nel.org
Cc: llvm@...ts.linux.dev, kbuild-all@...ts.01.org, cl@...ux.com,
pmladek@...e.com, mbenes@...e.cz, christophe.leroy@...roup.eu,
akpm@...ux-foundation.org, linux-kernel@...r.kernel.org,
linux-modules@...r.kernel.org, atomlin@...mlin.com,
ghalat@...hat.com, oleksandr@...alenko.name, neelx@...hat.com
Subject: Re: [PATCH v3 2/2] module: Introduce module unload taint tracking
Hi Aaron,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on eeaec7801c421e17edda6e45a32d4a5596b633da]
url: https://github.com/intel-lab-lkp/linux/commits/Aaron-Tomlin/module-Introduce-module-unload-taint-tracking/20220420-195459
base: eeaec7801c421e17edda6e45a32d4a5596b633da
config: hexagon-randconfig-r045-20220420 (https://download.01.org/0day-ci/archive/20220421/202204210819.DQQP836u-lkp@intel.com/config)
compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project bac6cd5bf85669e3376610cfc4c4f9ca015e7b9b)
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/intel-lab-lkp/linux/commit/523ff1f52de42049b9cc5a4db0495a5f21a7ee7c
git remote add linux-review https://github.com/intel-lab-lkp/linux
git fetch --no-tags linux-review Aaron-Tomlin/module-Introduce-module-unload-taint-tracking/20220420-195459
git checkout 523ff1f52de42049b9cc5a4db0495a5f21a7ee7c
# 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=hexagon SHELL=/bin/bash
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@...el.com>
All errors (new ones prefixed by >>):
>> kernel/module/main.c:3204:2: error: meaningless 'volatile' on asm outside function
preempt_enable();
^
include/linux/preempt.h:277:28: note: expanded from macro 'preempt_enable'
#define preempt_enable() barrier()
^
include/linux/compiler.h:86:28: note: expanded from macro 'barrier'
# define barrier() __asm__ __volatile__("": : :"memory")
^
kernel/module/main.c:3204:2: error: expected ')'
include/linux/preempt.h:277:28: note: expanded from macro 'preempt_enable'
#define preempt_enable() barrier()
^
include/linux/compiler.h:86:43: note: expanded from macro 'barrier'
# define barrier() __asm__ __volatile__("": : :"memory")
^
kernel/module/main.c:3204:2: note: to match this '('
include/linux/preempt.h:277:28: note: expanded from macro 'preempt_enable'
#define preempt_enable() barrier()
^
include/linux/compiler.h:86:40: note: expanded from macro 'barrier'
# define barrier() __asm__ __volatile__("": : :"memory")
^
kernel/module/main.c:3205:2: error: expected identifier or '('
if (last_unloaded_module[0])
^
include/linux/compiler.h:56:23: note: expanded from macro 'if'
#define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
^
kernel/module/main.c:3207:2: error: expected identifier or '('
pr_cont("\n");
^
include/linux/printk.h:531:2: note: expanded from macro 'pr_cont'
printk(KERN_CONT fmt, ##__VA_ARGS__)
^
include/linux/printk.h:446:26: note: expanded from macro 'printk'
#define printk(fmt, ...) printk_index_wrap(_printk, fmt, ##__VA_ARGS__)
^
include/linux/printk.h:416:3: note: expanded from macro 'printk_index_wrap'
({ \
^
kernel/module/main.c:3207:2: error: expected ')'
include/linux/printk.h:531:2: note: expanded from macro 'pr_cont'
printk(KERN_CONT fmt, ##__VA_ARGS__)
^
include/linux/printk.h:446:26: note: expanded from macro 'printk'
#define printk(fmt, ...) printk_index_wrap(_printk, fmt, ##__VA_ARGS__)
^
include/linux/printk.h:416:3: note: expanded from macro 'printk_index_wrap'
({ \
^
kernel/module/main.c:3207:2: note: to match this '('
include/linux/printk.h:531:2: note: expanded from macro 'pr_cont'
printk(KERN_CONT fmt, ##__VA_ARGS__)
^
include/linux/printk.h:446:26: note: expanded from macro 'printk'
#define printk(fmt, ...) printk_index_wrap(_printk, fmt, ##__VA_ARGS__)
^
include/linux/printk.h:416:2: note: expanded from macro 'printk_index_wrap'
({ \
^
kernel/module/main.c:3208:1: error: extraneous closing brace ('}')
}
^
6 errors generated.
vim +/volatile +3204 kernel/module/main.c
e610499e2656e61 kernel/module.c Rusty Russell 2009-03-31 3172
^1da177e4c3f415 kernel/module.c Linus Torvalds 2005-04-16 3173 /* Don't grab lock, we're oopsing. */
^1da177e4c3f415 kernel/module.c Linus Torvalds 2005-04-16 3174 void print_modules(void)
^1da177e4c3f415 kernel/module.c Linus Torvalds 2005-04-16 3175 {
^1da177e4c3f415 kernel/module.c Linus Torvalds 2005-04-16 3176 struct module *mod;
523ff1f52de4204 kernel/module/main.c Aaron Tomlin 2022-04-20 3177 #ifdef CONFIG_MODULE_UNLOAD_TAINT_TRACKING
523ff1f52de4204 kernel/module/main.c Aaron Tomlin 2022-04-20 3178 struct mod_unload_taint *mod_taint;
523ff1f52de4204 kernel/module/main.c Aaron Tomlin 2022-04-20 3179 #endif
7fd8329ba502ef7 kernel/module.c Petr Mladek 2016-09-21 3180 char buf[MODULE_FLAGS_BUF_SIZE];
^1da177e4c3f415 kernel/module.c Linus Torvalds 2005-04-16 3181
b231125af7811a2 kernel/module.c Linus Torvalds 2009-06-16 3182 printk(KERN_DEFAULT "Modules linked in:");
d72b37513cdfbd3 kernel/module.c Andi Kleen 2008-08-30 3183 /* Most callers should already have preempt disabled, but make sure */
d72b37513cdfbd3 kernel/module.c Andi Kleen 2008-08-30 3184 preempt_disable();
0d21b0e3477395e kernel/module.c Rusty Russell 2013-01-12 3185 list_for_each_entry_rcu(mod, &modules, list) {
0d21b0e3477395e kernel/module.c Rusty Russell 2013-01-12 3186 if (mod->state == MODULE_STATE_UNFORMED)
0d21b0e3477395e kernel/module.c Rusty Russell 2013-01-12 3187 continue;
27bba4d6bb3779a kernel/module.c Jiri Slaby 2014-02-03 3188 pr_cont(" %s%s", mod->name, module_flags(mod, buf));
0d21b0e3477395e kernel/module.c Rusty Russell 2013-01-12 3189 }
523ff1f52de4204 kernel/module/main.c Aaron Tomlin 2022-04-20 3190 #ifdef CONFIG_MODULE_UNLOAD_TAINT_TRACKING
523ff1f52de4204 kernel/module/main.c Aaron Tomlin 2022-04-20 3191 if (!list_empty(&unloaded_tainted_modules)) {
523ff1f52de4204 kernel/module/main.c Aaron Tomlin 2022-04-20 3192 printk(KERN_DEFAULT "Unloaded tainted modules:");
523ff1f52de4204 kernel/module/main.c Aaron Tomlin 2022-04-20 3193 list_for_each_entry_rcu(mod_taint, &unloaded_tainted_modules,
523ff1f52de4204 kernel/module/main.c Aaron Tomlin 2022-04-20 3194 list) {
523ff1f52de4204 kernel/module/main.c Aaron Tomlin 2022-04-20 3195 size_t l;
523ff1f52de4204 kernel/module/main.c Aaron Tomlin 2022-04-20 3196
523ff1f52de4204 kernel/module/main.c Aaron Tomlin 2022-04-20 3197 l = module_flags_taint(mod_taint->taints, buf);
523ff1f52de4204 kernel/module/main.c Aaron Tomlin 2022-04-20 3198 buf[l++] = '\0';
523ff1f52de4204 kernel/module/main.c Aaron Tomlin 2022-04-20 3199 pr_cont(" %s(%s):%llu", mod_taint->name, buf,
523ff1f52de4204 kernel/module/main.c Aaron Tomlin 2022-04-20 3200 mod_taint->count);
523ff1f52de4204 kernel/module/main.c Aaron Tomlin 2022-04-20 3201 }
523ff1f52de4204 kernel/module/main.c Aaron Tomlin 2022-04-20 3202 #endif
523ff1f52de4204 kernel/module/main.c Aaron Tomlin 2022-04-20 3203 }
d72b37513cdfbd3 kernel/module.c Andi Kleen 2008-08-30 @3204 preempt_enable();
--
0-DAY CI Kernel Test Service
https://01.org/lkp
Powered by blists - more mailing lists