tree: https://github.com/weiny2/linux-kernel.git tip-pks-v4-2020-12-17 head: c4c3d898d21401b51941cd75b3e59c2baec59505 commit: 1bf1a3d00ba3e2afcbc4dcbf4e8bf870984a6393 [17/18] memremap: Add zone device access protection config: i386-randconfig-s031-20201217 (attached as .config) compiler: gcc-9 (Debian 9.3.0-15) 9.3.0 reproduce: # apt-get install sparse # sparse version: v0.6.3-184-g1b896707-dirty # https://github.com/weiny2/linux-kernel/commit/1bf1a3d00ba3e2afcbc4dcbf4e8bf870984a6393 git remote add weiny2 https://github.com/weiny2/linux-kernel.git git fetch --no-tags weiny2 tip-pks-v4-2020-12-17 git checkout 1bf1a3d00ba3e2afcbc4dcbf4e8bf870984a6393 # save the attached .config to linux build tree make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=i386 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot All error/warnings (new ones prefixed by >>): In file included from include/linux/kallsyms.h:12, from include/linux/bpf.h:21, from include/linux/bpf-cgroup.h:5, from include/linux/cgroup-defs.h:22, from include/linux/cgroup.h:28, from include/linux/memcontrol.h:13, from include/linux/swap.h:9, from include/linux/suspend.h:5, from arch/x86/kernel/asm-offsets.c:13: >> include/linux/mm.h:1196:43: warning: 'enum dev_access_mod' declared inside parameter list will not be visible outside of this definition or declaration 1196 | static inline void dev_access_enable(enum dev_access_mod mode) { } | ^~~~~~~~~~~~~~ >> include/linux/mm.h:1196:58: error: parameter 1 ('mode') has incomplete type 1196 | static inline void dev_access_enable(enum dev_access_mod mode) { } | ~~~~~~~~~~~~~~~~~~~~^~~~ >> include/linux/mm.h:1196:20: error: function declaration isn't a prototype [-Werror=strict-prototypes] 1196 | static inline void dev_access_enable(enum dev_access_mod mode) { } | ^~~~~~~~~~~~~~~~~ include/linux/mm.h:1197:44: warning: 'enum dev_access_mod' declared inside parameter list will not be visible outside of this definition or declaration 1197 | static inline void dev_access_disable(enum dev_access_mod mode) { } | ^~~~~~~~~~~~~~ include/linux/mm.h:1197:59: error: parameter 1 ('mode') has incomplete type 1197 | static inline void dev_access_disable(enum dev_access_mod mode) { } | ~~~~~~~~~~~~~~~~~~~~^~~~ include/linux/mm.h:1197:20: error: function declaration isn't a prototype [-Werror=strict-prototypes] 1197 | static inline void dev_access_disable(enum dev_access_mod mode) { } | ^~~~~~~~~~~~~~~~~~ cc1: some warnings being treated as errors -- In file included from include/linux/kallsyms.h:12, from include/linux/bpf.h:21, from include/linux/bpf-cgroup.h:5, from include/linux/cgroup-defs.h:22, from include/linux/cgroup.h:28, from include/linux/memcontrol.h:13, from include/linux/swap.h:9, from include/linux/suspend.h:5, from arch/x86/kernel/asm-offsets.c:13: >> include/linux/mm.h:1196:43: warning: 'enum dev_access_mod' declared inside parameter list will not be visible outside of this definition or declaration 1196 | static inline void dev_access_enable(enum dev_access_mod mode) { } | ^~~~~~~~~~~~~~ >> include/linux/mm.h:1196:58: error: parameter 1 ('mode') has incomplete type 1196 | static inline void dev_access_enable(enum dev_access_mod mode) { } | ~~~~~~~~~~~~~~~~~~~~^~~~ >> include/linux/mm.h:1196:20: error: function declaration isn't a prototype [-Werror=strict-prototypes] 1196 | static inline void dev_access_enable(enum dev_access_mod mode) { } | ^~~~~~~~~~~~~~~~~ include/linux/mm.h:1197:44: warning: 'enum dev_access_mod' declared inside parameter list will not be visible outside of this definition or declaration 1197 | static inline void dev_access_disable(enum dev_access_mod mode) { } | ^~~~~~~~~~~~~~ include/linux/mm.h:1197:59: error: parameter 1 ('mode') has incomplete type 1197 | static inline void dev_access_disable(enum dev_access_mod mode) { } | ~~~~~~~~~~~~~~~~~~~~^~~~ include/linux/mm.h:1197:20: error: function declaration isn't a prototype [-Werror=strict-prototypes] 1197 | static inline void dev_access_disable(enum dev_access_mod mode) { } | ^~~~~~~~~~~~~~~~~~ cc1: some warnings being treated as errors make[2]: *** [scripts/Makefile.build:117: arch/x86/kernel/asm-offsets.s] Error 1 make[2]: Target '__build' not remade because of errors. make[1]: *** [Makefile:1200: prepare0] Error 2 make[1]: Target 'modules_prepare' not remade because of errors. make: *** [Makefile:185: __sub-make] Error 2 make: Target 'modules_prepare' not remade because of errors. -- In file included from include/linux/kallsyms.h:12, from include/linux/bpf.h:21, from include/linux/bpf-cgroup.h:5, from include/linux/cgroup-defs.h:22, from include/linux/cgroup.h:28, from include/linux/memcontrol.h:13, from include/linux/swap.h:9, from include/linux/suspend.h:5, from arch/x86/kernel/asm-offsets.c:13: >> include/linux/mm.h:1196:43: warning: 'enum dev_access_mod' declared inside parameter list will not be visible outside of this definition or declaration 1196 | static inline void dev_access_enable(enum dev_access_mod mode) { } | ^~~~~~~~~~~~~~ >> include/linux/mm.h:1196:58: error: parameter 1 ('mode') has incomplete type 1196 | static inline void dev_access_enable(enum dev_access_mod mode) { } | ~~~~~~~~~~~~~~~~~~~~^~~~ >> include/linux/mm.h:1196:20: error: function declaration isn't a prototype [-Werror=strict-prototypes] 1196 | static inline void dev_access_enable(enum dev_access_mod mode) { } | ^~~~~~~~~~~~~~~~~ include/linux/mm.h:1197:44: warning: 'enum dev_access_mod' declared inside parameter list will not be visible outside of this definition or declaration 1197 | static inline void dev_access_disable(enum dev_access_mod mode) { } | ^~~~~~~~~~~~~~ include/linux/mm.h:1197:59: error: parameter 1 ('mode') has incomplete type 1197 | static inline void dev_access_disable(enum dev_access_mod mode) { } | ~~~~~~~~~~~~~~~~~~~~^~~~ include/linux/mm.h:1197:20: error: function declaration isn't a prototype [-Werror=strict-prototypes] 1197 | static inline void dev_access_disable(enum dev_access_mod mode) { } | ^~~~~~~~~~~~~~~~~~ cc1: some warnings being treated as errors make[2]: *** [scripts/Makefile.build:117: arch/x86/kernel/asm-offsets.s] Error 1 make[2]: Target '__build' not remade because of errors. make[1]: *** [Makefile:1200: prepare0] Error 2 make[1]: Target 'prepare' not remade because of errors. make: *** [Makefile:185: __sub-make] Error 2 make: Target 'prepare' not remade because of errors. vim +1196 include/linux/mm.h 1178 1179 void __dev_access_enable(enum dev_access_mode mode); 1180 void __dev_access_disable(enum dev_access_mode mode); 1181 static __always_inline void dev_access_enable(enum dev_access_mode mode) 1182 { 1183 if (static_branch_unlikely(&dev_protection_static_key)) 1184 __dev_access_enable(mode); 1185 } 1186 static __always_inline void dev_access_disable(enum dev_access_mode mode) 1187 { 1188 if (static_branch_unlikely(&dev_protection_static_key)) 1189 __dev_access_disable(mode); 1190 } 1191 #else 1192 static inline bool page_is_access_protected(struct page *page) 1193 { 1194 return false; 1195 } > 1196 static inline void dev_access_enable(enum dev_access_mod mode) { } 1197 static inline void dev_access_disable(enum dev_access_mod mode) { } 1198 #endif /* CONFIG_ZONE_DEVICE_ACCESS_PROTECTION */ 1199 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org