Hi Mauro, I love your patch! Perhaps something to improve: [auto build test WARNING on linus/master] [also build test WARNING on next-20201023] [cannot apply to lwn/docs-next linux/master v5.9] [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/Mauro-Carvalho-Chehab/kernel-doc-validate-kernel-doc-markup-with-the-actual-names/20201023-170132 base: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git f9893351acaecf0a414baf9942b48d5bb5c688c6 config: nds32-defconfig (attached as .config) compiler: nds32le-linux-gcc (GCC) 9.3.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/234e4a9d3907dbf2a71da9a2f49007e19d2a2e68 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Mauro-Carvalho-Chehab/kernel-doc-validate-kernel-doc-markup-with-the-actual-names/20201023-170132 git checkout 234e4a9d3907dbf2a71da9a2f49007e19d2a2e68 # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=nds32 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@xxxxxxxxx> All warnings (new ones prefixed by >>): kernel/cpu.c:56: warning: cannot understand function prototype: 'struct cpuhp_cpu_state ' kernel/cpu.c:113: warning: cannot understand function prototype: 'struct cpuhp_step ' >> kernel/cpu.c:151: warning: expecting prototype for cpuhp_invoke_callback _ Invoke the callbacks for a given state(). Prototype was for cpuhp_invoke_callback() instead >> kernel/cpu.c:1142: warning: wrong kernel-doc identifier on line: * notify_cpu_starting(cpu) - Invoke the callbacks on the starting CPU kernel/cpu.c:1884: warning: Function parameter or member 'name' not described in '__cpuhp_setup_state_cpuslocked' -- kernel/fork.c:1134: warning: Function parameter or member 'mm' not described in 'set_mm_exe_file' kernel/fork.c:1134: warning: Function parameter or member 'new_exe_file' not described in 'set_mm_exe_file' kernel/fork.c:1158: warning: Function parameter or member 'mm' not described in 'get_mm_exe_file' kernel/fork.c:1178: warning: Function parameter or member 'task' not described in 'get_task_exe_file' kernel/fork.c:1203: warning: Function parameter or member 'task' not described in 'get_task_mm' >> kernel/fork.c:2716: warning: expecting prototype for clone3(). Prototype was for sys_clone3() instead -- >> kernel/resource.c:344: warning: expecting prototype for The(). Prototype was for find_next_iomem_res() instead >> kernel/resource.c:436: warning: expecting prototype for with matching resource(). Prototype was for walk_iomem_res_desc() instead -- >> kernel/pid.c:585: warning: expecting prototype for pidfd_open(). Prototype was for sys_pidfd_open() instead -- mm/truncate.c:646: warning: Function parameter or member 'mapping' not described in 'invalidate_mapping_pagevec' mm/truncate.c:646: warning: Function parameter or member 'start' not described in 'invalidate_mapping_pagevec' mm/truncate.c:646: warning: Function parameter or member 'end' not described in 'invalidate_mapping_pagevec' mm/truncate.c:646: warning: Function parameter or member 'nr_pagevec' not described in 'invalidate_mapping_pagevec' >> mm/truncate.c:646: warning: expecting prototype for except that it accounts for pages(). Prototype was for invalidate_mapping_pagevec() instead -- >> mm/vmscan.c:1652: warning: expecting prototype for pgdat(). Prototype was for isolate_lru_pages() instead -- >> mm/gup.c:1963: warning: expecting prototype for is suitable to replace the form(). Prototype was for get_user_pages_locked() instead -- >> mm/page_alloc.c:510: warning: expecting prototype for get_pfnblock_flags_mask(). Prototype was for __get_pfnblock_flags_mask() instead -- fs/open.c:887: warning: Excess function parameter 'opened' description in 'finish_open' fs/open.c:929: warning: Excess function parameter 'cred' description in 'vfs_open' >> fs/open.c:1320: warning: expecting prototype for close_range(). Prototype was for sys_close_range() instead -- >> fs/super.c:1830: warning: expecting prototype for thaw_super(). Prototype was for thaw_super_locked() instead -- >> fs/ioctl.c:109: warning: expecting prototype for fiemap_fill_next_extent(). Prototype was for SET_UNKNOWN_FLAGS() instead fs/ioctl.c:785: warning: Function parameter or member 'file' not described in 'compat_ptr_ioctl' fs/ioctl.c:785: warning: Function parameter or member 'cmd' not described in 'compat_ptr_ioctl' fs/ioctl.c:785: warning: Function parameter or member 'arg' not described in 'compat_ptr_ioctl' .. vim +151 kernel/cpu.c a724632ca0c84b4 Thomas Gleixner 2016-08-12 137 cff7d378d3fdbb5 Thomas Gleixner 2016-02-26 138 /** cff7d378d3fdbb5 Thomas Gleixner 2016-02-26 139 * cpuhp_invoke_callback _ Invoke the callbacks for a given state cff7d378d3fdbb5 Thomas Gleixner 2016-02-26 140 * @cpu: The cpu for which the callback should be invoked 96abb968549cdef Peter Zijlstra 2017-09-20 141 * @state: The state to do callbacks for a724632ca0c84b4 Thomas Gleixner 2016-08-12 142 * @bringup: True if the bringup callback should be invoked 96abb968549cdef Peter Zijlstra 2017-09-20 143 * @node: For multi-instance, do a single entry callback for install/remove 96abb968549cdef Peter Zijlstra 2017-09-20 144 * @lastp: For multi-instance rollback, remember how far we got cff7d378d3fdbb5 Thomas Gleixner 2016-02-26 145 * cf392d10b69e6e6 Thomas Gleixner 2016-08-12 146 * Called from cpu hotplug and from the state register machinery. cff7d378d3fdbb5 Thomas Gleixner 2016-02-26 147 */ a724632ca0c84b4 Thomas Gleixner 2016-08-12 148 static int cpuhp_invoke_callback(unsigned int cpu, enum cpuhp_state state, 96abb968549cdef Peter Zijlstra 2017-09-20 149 bool bringup, struct hlist_node *node, 96abb968549cdef Peter Zijlstra 2017-09-20 150 struct hlist_node **lastp) cff7d378d3fdbb5 Thomas Gleixner 2016-02-26 @151 { cff7d378d3fdbb5 Thomas Gleixner 2016-02-26 152 struct cpuhp_cpu_state *st = per_cpu_ptr(&cpuhp_state, cpu); a724632ca0c84b4 Thomas Gleixner 2016-08-12 153 struct cpuhp_step *step = cpuhp_get_step(state); cf392d10b69e6e6 Thomas Gleixner 2016-08-12 154 int (*cbm)(unsigned int cpu, struct hlist_node *node); cf392d10b69e6e6 Thomas Gleixner 2016-08-12 155 int (*cb)(unsigned int cpu); cf392d10b69e6e6 Thomas Gleixner 2016-08-12 156 int ret, cnt; cff7d378d3fdbb5 Thomas Gleixner 2016-02-26 157 1db49484f21ed0f Peter Zijlstra 2017-09-20 158 if (st->fail == state) { 1db49484f21ed0f Peter Zijlstra 2017-09-20 159 st->fail = CPUHP_INVALID; 1db49484f21ed0f Peter Zijlstra 2017-09-20 160 1db49484f21ed0f Peter Zijlstra 2017-09-20 161 if (!(bringup ? step->startup.single : step->teardown.single)) 1db49484f21ed0f Peter Zijlstra 2017-09-20 162 return 0; 1db49484f21ed0f Peter Zijlstra 2017-09-20 163 1db49484f21ed0f Peter Zijlstra 2017-09-20 164 return -EAGAIN; 1db49484f21ed0f Peter Zijlstra 2017-09-20 165 } 1db49484f21ed0f Peter Zijlstra 2017-09-20 166 cf392d10b69e6e6 Thomas Gleixner 2016-08-12 167 if (!step->multi_instance) { 96abb968549cdef Peter Zijlstra 2017-09-20 168 WARN_ON_ONCE(lastp && *lastp); 3c1627e999e45e2 Thomas Gleixner 2016-09-05 169 cb = bringup ? step->startup.single : step->teardown.single; cf392d10b69e6e6 Thomas Gleixner 2016-08-12 170 if (!cb) cf392d10b69e6e6 Thomas Gleixner 2016-08-12 171 return 0; a724632ca0c84b4 Thomas Gleixner 2016-08-12 172 trace_cpuhp_enter(cpu, st->target, state, cb); cff7d378d3fdbb5 Thomas Gleixner 2016-02-26 173 ret = cb(cpu); a724632ca0c84b4 Thomas Gleixner 2016-08-12 174 trace_cpuhp_exit(cpu, st->state, state, ret); cf392d10b69e6e6 Thomas Gleixner 2016-08-12 175 return ret; cf392d10b69e6e6 Thomas Gleixner 2016-08-12 176 } 3c1627e999e45e2 Thomas Gleixner 2016-09-05 177 cbm = bringup ? step->startup.multi : step->teardown.multi; cf392d10b69e6e6 Thomas Gleixner 2016-08-12 178 if (!cbm) cf392d10b69e6e6 Thomas Gleixner 2016-08-12 179 return 0; cf392d10b69e6e6 Thomas Gleixner 2016-08-12 180 cf392d10b69e6e6 Thomas Gleixner 2016-08-12 181 /* Single invocation for instance add/remove */ cf392d10b69e6e6 Thomas Gleixner 2016-08-12 182 if (node) { 96abb968549cdef Peter Zijlstra 2017-09-20 183 WARN_ON_ONCE(lastp && *lastp); cf392d10b69e6e6 Thomas Gleixner 2016-08-12 184 trace_cpuhp_multi_enter(cpu, st->target, state, cbm, node); cf392d10b69e6e6 Thomas Gleixner 2016-08-12 185 ret = cbm(cpu, node); cf392d10b69e6e6 Thomas Gleixner 2016-08-12 186 trace_cpuhp_exit(cpu, st->state, state, ret); cf392d10b69e6e6 Thomas Gleixner 2016-08-12 187 return ret; cf392d10b69e6e6 Thomas Gleixner 2016-08-12 188 } cf392d10b69e6e6 Thomas Gleixner 2016-08-12 189 cf392d10b69e6e6 Thomas Gleixner 2016-08-12 190 /* State transition. Invoke on all instances */ cf392d10b69e6e6 Thomas Gleixner 2016-08-12 191 cnt = 0; cf392d10b69e6e6 Thomas Gleixner 2016-08-12 192 hlist_for_each(node, &step->list) { 96abb968549cdef Peter Zijlstra 2017-09-20 193 if (lastp && node == *lastp) 96abb968549cdef Peter Zijlstra 2017-09-20 194 break; 96abb968549cdef Peter Zijlstra 2017-09-20 195 cf392d10b69e6e6 Thomas Gleixner 2016-08-12 196 trace_cpuhp_multi_enter(cpu, st->target, state, cbm, node); cf392d10b69e6e6 Thomas Gleixner 2016-08-12 197 ret = cbm(cpu, node); cf392d10b69e6e6 Thomas Gleixner 2016-08-12 198 trace_cpuhp_exit(cpu, st->state, state, ret); 96abb968549cdef Peter Zijlstra 2017-09-20 199 if (ret) { 96abb968549cdef Peter Zijlstra 2017-09-20 200 if (!lastp) cf392d10b69e6e6 Thomas Gleixner 2016-08-12 201 goto err; 96abb968549cdef Peter Zijlstra 2017-09-20 202 96abb968549cdef Peter Zijlstra 2017-09-20 203 *lastp = node; 96abb968549cdef Peter Zijlstra 2017-09-20 204 return ret; 96abb968549cdef Peter Zijlstra 2017-09-20 205 } cf392d10b69e6e6 Thomas Gleixner 2016-08-12 206 cnt++; cf392d10b69e6e6 Thomas Gleixner 2016-08-12 207 } 96abb968549cdef Peter Zijlstra 2017-09-20 208 if (lastp) 96abb968549cdef Peter Zijlstra 2017-09-20 209 *lastp = NULL; cf392d10b69e6e6 Thomas Gleixner 2016-08-12 210 return 0; cf392d10b69e6e6 Thomas Gleixner 2016-08-12 211 err: cf392d10b69e6e6 Thomas Gleixner 2016-08-12 212 /* Rollback the instances if one failed */ 3c1627e999e45e2 Thomas Gleixner 2016-09-05 213 cbm = !bringup ? step->startup.multi : step->teardown.multi; cf392d10b69e6e6 Thomas Gleixner 2016-08-12 214 if (!cbm) cf392d10b69e6e6 Thomas Gleixner 2016-08-12 215 return ret; cf392d10b69e6e6 Thomas Gleixner 2016-08-12 216 cf392d10b69e6e6 Thomas Gleixner 2016-08-12 217 hlist_for_each(node, &step->list) { cf392d10b69e6e6 Thomas Gleixner 2016-08-12 218 if (!cnt--) cf392d10b69e6e6 Thomas Gleixner 2016-08-12 219 break; 724a86881d03ee5 Peter Zijlstra 2017-09-20 220 724a86881d03ee5 Peter Zijlstra 2017-09-20 221 trace_cpuhp_multi_enter(cpu, st->target, state, cbm, node); 724a86881d03ee5 Peter Zijlstra 2017-09-20 222 ret = cbm(cpu, node); 724a86881d03ee5 Peter Zijlstra 2017-09-20 223 trace_cpuhp_exit(cpu, st->state, state, ret); 724a86881d03ee5 Peter Zijlstra 2017-09-20 224 /* 724a86881d03ee5 Peter Zijlstra 2017-09-20 225 * Rollback must not fail, 724a86881d03ee5 Peter Zijlstra 2017-09-20 226 */ 724a86881d03ee5 Peter Zijlstra 2017-09-20 227 WARN_ON_ONCE(ret); cff7d378d3fdbb5 Thomas Gleixner 2016-02-26 228 } cff7d378d3fdbb5 Thomas Gleixner 2016-02-26 229 return ret; cff7d378d3fdbb5 Thomas Gleixner 2016-02-26 230 } cff7d378d3fdbb5 Thomas Gleixner 2016-02-26 231 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx
Attachment:
.config.gz
Description: application/gzip