From: kernel test robot <lkp@intel.com>
To: Masahiro Yamada <yamada.masahiro@socionext.com>
Cc: oe-kbuild-all@lists.linux.dev, linux-kernel@vger.kernel.org
Subject: kernel/fork.c:1134: warning: Function parameter or member 'mm' not described in 'set_mm_exe_file'
Date: Tue, 10 Oct 2023 02:30:35 +0800 [thread overview]
Message-ID: <202310100237.RjecPfNo-lkp@intel.com> (raw)
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 94f6f0550c625fab1f373bb86a6669b45e9748b3
commit: b1fbfcb4a20949df08dd995927cdc5ad220c128d kbuild: make single target builds even faster
date: 3 years, 11 months ago
config: openrisc-allnoconfig (https://download.01.org/0day-ci/archive/20231010/202310100237.RjecPfNo-lkp@intel.com/config)
compiler: or1k-linux-gcc (GCC) 12.3.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231010/202310100237.RjecPfNo-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202310100237.RjecPfNo-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> 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/reboot.c:214: warning: Function parameter or member 'cmd' not described in 'do_kernel_restart'
--
>> kernel/irq_work.c:53:13: warning: no previous prototype for 'arch_irq_work_raise' [-Wmissing-prototypes]
53 | void __weak arch_irq_work_raise(void)
| ^~~~~~~~~~~~~~~~~~~
--
>> kernel/stacktrace.c:139: warning: Function parameter or member 'tsk' not described in 'stack_trace_save_tsk'
>> kernel/stacktrace.c:139: warning: Excess function parameter 'task' description in 'stack_trace_save_tsk'
--
>> lib/argv_split.c:36: warning: Function parameter or member 'argv' not described in 'argv_free'
--
>> lib/scatterlist.c:270: warning: Function parameter or member 'first_chunk' not described in '__sg_alloc_table'
>> lib/scatterlist.c:676: warning: Function parameter or member 'flags' not described in 'sg_miter_start'
--
>> lib/hweight.c:14: warning: Function parameter or member 'w' not described in '__sw_hweight32'
lib/hweight.c:14: warning: Excess function parameter 'x' description in '__sw_hweight32'
--
>> kernel/irq/irqdomain.c:105: warning: Function parameter or member 'fwnode' not described in 'irq_domain_free_fwnode'
>> kernel/irq/irqdomain.c:930: warning: Function parameter or member 'd' not described in 'irq_domain_xlate_onecell'
>> kernel/irq/irqdomain.c:930: warning: Function parameter or member 'ctrlr' not described in 'irq_domain_xlate_onecell'
>> kernel/irq/irqdomain.c:930: warning: Function parameter or member 'intspec' not described in 'irq_domain_xlate_onecell'
>> kernel/irq/irqdomain.c:930: warning: Function parameter or member 'intsize' not described in 'irq_domain_xlate_onecell'
>> kernel/irq/irqdomain.c:930: warning: Function parameter or member 'out_hwirq' not described in 'irq_domain_xlate_onecell'
>> kernel/irq/irqdomain.c:930: warning: Function parameter or member 'out_type' not described in 'irq_domain_xlate_onecell'
>> kernel/irq/irqdomain.c:949: warning: Function parameter or member 'd' not described in 'irq_domain_xlate_twocell'
>> kernel/irq/irqdomain.c:949: warning: Function parameter or member 'ctrlr' not described in 'irq_domain_xlate_twocell'
>> kernel/irq/irqdomain.c:949: warning: Function parameter or member 'intspec' not described in 'irq_domain_xlate_twocell'
>> kernel/irq/irqdomain.c:949: warning: Function parameter or member 'intsize' not described in 'irq_domain_xlate_twocell'
>> kernel/irq/irqdomain.c:949: warning: Function parameter or member 'out_hwirq' not described in 'irq_domain_xlate_twocell'
>> kernel/irq/irqdomain.c:949: warning: Function parameter or member 'out_type' not described in 'irq_domain_xlate_twocell'
>> kernel/irq/irqdomain.c:972: warning: Function parameter or member 'd' not described in 'irq_domain_xlate_onetwocell'
>> kernel/irq/irqdomain.c:972: warning: Function parameter or member 'ctrlr' not described in 'irq_domain_xlate_onetwocell'
>> kernel/irq/irqdomain.c:972: warning: Function parameter or member 'intspec' not described in 'irq_domain_xlate_onetwocell'
>> kernel/irq/irqdomain.c:972: warning: Function parameter or member 'intsize' not described in 'irq_domain_xlate_onetwocell'
>> kernel/irq/irqdomain.c:972: warning: Function parameter or member 'out_hwirq' not described in 'irq_domain_xlate_onetwocell'
>> kernel/irq/irqdomain.c:972: warning: Function parameter or member 'out_type' not described in 'irq_domain_xlate_onetwocell'
>> kernel/irq/irqdomain.c:1001: warning: Function parameter or member 'd' not described in 'irq_domain_translate_twocell'
kernel/irq/irqdomain.c:1001: warning: Function parameter or member 'fwspec' not described in 'irq_domain_translate_twocell'
kernel/irq/irqdomain.c:1001: warning: Function parameter or member 'out_hwirq' not described in 'irq_domain_translate_twocell'
kernel/irq/irqdomain.c:1001: warning: Function parameter or member 'out_type' not described in 'irq_domain_translate_twocell'
kernel/irq/irqdomain.c:1580: warning: Function parameter or member 'domain' not described in 'irq_domain_alloc_irqs_parent'
kernel/irq/irqdomain.c:1599: warning: Function parameter or member 'domain' not described in 'irq_domain_free_irqs_parent'
--
kernel/sched/fair.c:5095:6: warning: no previous prototype for 'init_cfs_bandwidth' [-Wmissing-prototypes]
5095 | void init_cfs_bandwidth(struct cfs_bandwidth *cfs_b) {}
| ^~~~~~~~~~~~~~~~~~
>> kernel/sched/fair.c:10384:6: warning: no previous prototype for 'free_fair_sched_group' [-Wmissing-prototypes]
10384 | void free_fair_sched_group(struct task_group *tg) { }
| ^~~~~~~~~~~~~~~~~~~~~
>> kernel/sched/fair.c:10386:5: warning: no previous prototype for 'alloc_fair_sched_group' [-Wmissing-prototypes]
10386 | int alloc_fair_sched_group(struct task_group *tg, struct task_group *parent)
| ^~~~~~~~~~~~~~~~~~~~~~
kernel/sched/fair.c:10391:6: warning: no previous prototype for 'online_fair_sched_group' [-Wmissing-prototypes]
10391 | void online_fair_sched_group(struct task_group *tg) { }
| ^~~~~~~~~~~~~~~~~~~~~~~
>> kernel/sched/fair.c:10393:6: warning: no previous prototype for 'unregister_fair_sched_group' [-Wmissing-prototypes]
10393 | void unregister_fair_sched_group(struct task_group *tg) { }
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
--
>> kernel/time/tick-broadcast.c:884: warning: Function parameter or member 'bc' not described in 'tick_broadcast_setup_oneshot'
--
kernel/time/timekeeping.c:403: warning: Function parameter or member 'tkf' not described in 'update_fast_timekeeper'
kernel/time/timekeeping.c:452: warning: Function parameter or member 'tkf' not described in '__ktime_get_fast_ns'
kernel/time/timekeeping.c:585: warning: Function parameter or member 'nb' not described in 'pvclock_gtod_register_notifier'
kernel/time/timekeeping.c:604: warning: Function parameter or member 'nb' not described in 'pvclock_gtod_unregister_notifier'
kernel/time/timekeeping.c:698: warning: Function parameter or member 'tk' not described in 'timekeeping_forward_now'
kernel/time/timekeeping.c:1274: warning: Function parameter or member 'ts' not described in 'timekeeping_inject_offset'
kernel/time/timekeeping.c:1274: warning: Excess function parameter 'tv' description in 'timekeeping_inject_offset'
kernel/time/timekeeping.c:1350: warning: Function parameter or member 'tk' not described in '__timekeeping_set_tai_offset'
kernel/time/timekeeping.c:1350: warning: Function parameter or member 'tai_offset' not described in '__timekeeping_set_tai_offset'
kernel/time/timekeeping.c:1361: warning: Function parameter or member 'data' not described in 'change_clocksource'
kernel/time/timekeeping.c:1486: warning: Function parameter or member 'ts' not described in 'read_persistent_clock64'
kernel/time/timekeeping.c:1506: warning: Function parameter or member 'wall_time' not described in 'read_persistent_wall_and_boot_offset'
kernel/time/timekeeping.c:1506: warning: Function parameter or member 'boot_offset' not described in 'read_persistent_wall_and_boot_offset'
kernel/time/timekeeping.c:1589: warning: Function parameter or member 'tk' not described in '__timekeeping_inject_sleeptime'
kernel/time/timekeeping.c:1962: warning: Function parameter or member 'tk' not described in 'accumulate_nsecs_to_secs'
kernel/time/timekeeping.c:2012: warning: Function parameter or member 'tk' not described in 'logarithmic_accumulation'
kernel/time/timekeeping.c:2012: warning: Function parameter or member 'offset' not described in 'logarithmic_accumulation'
kernel/time/timekeeping.c:2012: warning: Function parameter or member 'shift' not described in 'logarithmic_accumulation'
kernel/time/timekeeping.c:2012: warning: Function parameter or member 'clock_set' not described in 'logarithmic_accumulation'
kernel/time/timekeeping.c:2248: warning: Function parameter or member 'txc' not described in 'timekeeping_validate_timex'
>> kernel/time/timekeeping.c:2314: warning: Function parameter or member 'txc' not described in 'do_adjtimex'
>> kernel/time/timekeeping.c:2378: warning: Function parameter or member 'phase_ts' not described in 'hardpps'
>> kernel/time/timekeeping.c:2378: warning: Function parameter or member 'raw_ts' not described in 'hardpps'
vim +1134 kernel/fork.c
a1b2289cef92ef Sherry Yang 2017-10-03 1121
90f31d0ea88880 Konstantin Khlebnikov 2015-04-16 1122 /**
90f31d0ea88880 Konstantin Khlebnikov 2015-04-16 1123 * set_mm_exe_file - change a reference to the mm's executable file
90f31d0ea88880 Konstantin Khlebnikov 2015-04-16 1124 *
90f31d0ea88880 Konstantin Khlebnikov 2015-04-16 1125 * This changes mm's executable file (shown as symlink /proc/[pid]/exe).
90f31d0ea88880 Konstantin Khlebnikov 2015-04-16 1126 *
6e399cd144d850 Davidlohr Bueso 2015-04-16 1127 * Main users are mmput() and sys_execve(). Callers prevent concurrent
6e399cd144d850 Davidlohr Bueso 2015-04-16 1128 * invocations: in mmput() nobody alive left, in execve task is single
6e399cd144d850 Davidlohr Bueso 2015-04-16 1129 * threaded. sys_prctl(PR_SET_MM_MAP/EXE_FILE) also needs to set the
6e399cd144d850 Davidlohr Bueso 2015-04-16 1130 * mm->exe_file, but does so without using set_mm_exe_file() in order
6e399cd144d850 Davidlohr Bueso 2015-04-16 1131 * to do avoid the need for any locks.
90f31d0ea88880 Konstantin Khlebnikov 2015-04-16 1132 */
3864601387cf41 Jiri Slaby 2011-05-26 1133 void set_mm_exe_file(struct mm_struct *mm, struct file *new_exe_file)
3864601387cf41 Jiri Slaby 2011-05-26 @1134 {
6e399cd144d850 Davidlohr Bueso 2015-04-16 1135 struct file *old_exe_file;
6e399cd144d850 Davidlohr Bueso 2015-04-16 1136
6e399cd144d850 Davidlohr Bueso 2015-04-16 1137 /*
6e399cd144d850 Davidlohr Bueso 2015-04-16 1138 * It is safe to dereference the exe_file without RCU as
6e399cd144d850 Davidlohr Bueso 2015-04-16 1139 * this function is only called if nobody else can access
6e399cd144d850 Davidlohr Bueso 2015-04-16 1140 * this mm -- see comment above for justification.
6e399cd144d850 Davidlohr Bueso 2015-04-16 1141 */
6e399cd144d850 Davidlohr Bueso 2015-04-16 1142 old_exe_file = rcu_dereference_raw(mm->exe_file);
90f31d0ea88880 Konstantin Khlebnikov 2015-04-16 1143
3864601387cf41 Jiri Slaby 2011-05-26 1144 if (new_exe_file)
3864601387cf41 Jiri Slaby 2011-05-26 1145 get_file(new_exe_file);
90f31d0ea88880 Konstantin Khlebnikov 2015-04-16 1146 rcu_assign_pointer(mm->exe_file, new_exe_file);
90f31d0ea88880 Konstantin Khlebnikov 2015-04-16 1147 if (old_exe_file)
90f31d0ea88880 Konstantin Khlebnikov 2015-04-16 1148 fput(old_exe_file);
3864601387cf41 Jiri Slaby 2011-05-26 1149 }
3864601387cf41 Jiri Slaby 2011-05-26 1150
90f31d0ea88880 Konstantin Khlebnikov 2015-04-16 1151 /**
90f31d0ea88880 Konstantin Khlebnikov 2015-04-16 1152 * get_mm_exe_file - acquire a reference to the mm's executable file
90f31d0ea88880 Konstantin Khlebnikov 2015-04-16 1153 *
90f31d0ea88880 Konstantin Khlebnikov 2015-04-16 1154 * Returns %NULL if mm has no associated executable file.
90f31d0ea88880 Konstantin Khlebnikov 2015-04-16 1155 * User must release file via fput().
90f31d0ea88880 Konstantin Khlebnikov 2015-04-16 1156 */
3864601387cf41 Jiri Slaby 2011-05-26 1157 struct file *get_mm_exe_file(struct mm_struct *mm)
3864601387cf41 Jiri Slaby 2011-05-26 @1158 {
3864601387cf41 Jiri Slaby 2011-05-26 1159 struct file *exe_file;
3864601387cf41 Jiri Slaby 2011-05-26 1160
90f31d0ea88880 Konstantin Khlebnikov 2015-04-16 1161 rcu_read_lock();
90f31d0ea88880 Konstantin Khlebnikov 2015-04-16 1162 exe_file = rcu_dereference(mm->exe_file);
90f31d0ea88880 Konstantin Khlebnikov 2015-04-16 1163 if (exe_file && !get_file_rcu(exe_file))
90f31d0ea88880 Konstantin Khlebnikov 2015-04-16 1164 exe_file = NULL;
90f31d0ea88880 Konstantin Khlebnikov 2015-04-16 1165 rcu_read_unlock();
3864601387cf41 Jiri Slaby 2011-05-26 1166 return exe_file;
3864601387cf41 Jiri Slaby 2011-05-26 1167 }
11163348a23cdb Davidlohr Bueso 2015-04-16 1168 EXPORT_SYMBOL(get_mm_exe_file);
3864601387cf41 Jiri Slaby 2011-05-26 1169
cd81a9170e69e0 Mateusz Guzik 2016-08-23 1170 /**
cd81a9170e69e0 Mateusz Guzik 2016-08-23 1171 * get_task_exe_file - acquire a reference to the task's executable file
cd81a9170e69e0 Mateusz Guzik 2016-08-23 1172 *
cd81a9170e69e0 Mateusz Guzik 2016-08-23 1173 * Returns %NULL if task's mm (if any) has no associated executable file or
cd81a9170e69e0 Mateusz Guzik 2016-08-23 1174 * this is a kernel thread with borrowed mm (see the comment above get_task_mm).
cd81a9170e69e0 Mateusz Guzik 2016-08-23 1175 * User must release file via fput().
cd81a9170e69e0 Mateusz Guzik 2016-08-23 1176 */
cd81a9170e69e0 Mateusz Guzik 2016-08-23 1177 struct file *get_task_exe_file(struct task_struct *task)
cd81a9170e69e0 Mateusz Guzik 2016-08-23 @1178 {
cd81a9170e69e0 Mateusz Guzik 2016-08-23 1179 struct file *exe_file = NULL;
cd81a9170e69e0 Mateusz Guzik 2016-08-23 1180 struct mm_struct *mm;
cd81a9170e69e0 Mateusz Guzik 2016-08-23 1181
cd81a9170e69e0 Mateusz Guzik 2016-08-23 1182 task_lock(task);
cd81a9170e69e0 Mateusz Guzik 2016-08-23 1183 mm = task->mm;
cd81a9170e69e0 Mateusz Guzik 2016-08-23 1184 if (mm) {
cd81a9170e69e0 Mateusz Guzik 2016-08-23 1185 if (!(task->flags & PF_KTHREAD))
cd81a9170e69e0 Mateusz Guzik 2016-08-23 1186 exe_file = get_mm_exe_file(mm);
cd81a9170e69e0 Mateusz Guzik 2016-08-23 1187 }
cd81a9170e69e0 Mateusz Guzik 2016-08-23 1188 task_unlock(task);
cd81a9170e69e0 Mateusz Guzik 2016-08-23 1189 return exe_file;
cd81a9170e69e0 Mateusz Guzik 2016-08-23 1190 }
cd81a9170e69e0 Mateusz Guzik 2016-08-23 1191 EXPORT_SYMBOL(get_task_exe_file);
3864601387cf41 Jiri Slaby 2011-05-26 1192
^1da177e4c3f41 Linus Torvalds 2005-04-16 1193 /**
^1da177e4c3f41 Linus Torvalds 2005-04-16 1194 * get_task_mm - acquire a reference to the task's mm
^1da177e4c3f41 Linus Torvalds 2005-04-16 1195 *
246bb0b1deb297 Oleg Nesterov 2008-07-25 1196 * Returns %NULL if the task has no mm. Checks PF_KTHREAD (meaning
^1da177e4c3f41 Linus Torvalds 2005-04-16 1197 * this kernel workthread has transiently adopted a user mm with use_mm,
^1da177e4c3f41 Linus Torvalds 2005-04-16 1198 * to do its AIO) is not set and if so returns a reference to it, after
^1da177e4c3f41 Linus Torvalds 2005-04-16 1199 * bumping up the use count. User must release the mm via mmput()
^1da177e4c3f41 Linus Torvalds 2005-04-16 1200 * after use. Typically used by /proc and ptrace.
^1da177e4c3f41 Linus Torvalds 2005-04-16 1201 */
^1da177e4c3f41 Linus Torvalds 2005-04-16 1202 struct mm_struct *get_task_mm(struct task_struct *task)
^1da177e4c3f41 Linus Torvalds 2005-04-16 @1203 {
^1da177e4c3f41 Linus Torvalds 2005-04-16 1204 struct mm_struct *mm;
^1da177e4c3f41 Linus Torvalds 2005-04-16 1205
^1da177e4c3f41 Linus Torvalds 2005-04-16 1206 task_lock(task);
^1da177e4c3f41 Linus Torvalds 2005-04-16 1207 mm = task->mm;
^1da177e4c3f41 Linus Torvalds 2005-04-16 1208 if (mm) {
246bb0b1deb297 Oleg Nesterov 2008-07-25 1209 if (task->flags & PF_KTHREAD)
^1da177e4c3f41 Linus Torvalds 2005-04-16 1210 mm = NULL;
^1da177e4c3f41 Linus Torvalds 2005-04-16 1211 else
3fce371bfac2be Vegard Nossum 2017-02-27 1212 mmget(mm);
^1da177e4c3f41 Linus Torvalds 2005-04-16 1213 }
^1da177e4c3f41 Linus Torvalds 2005-04-16 1214 task_unlock(task);
^1da177e4c3f41 Linus Torvalds 2005-04-16 1215 return mm;
^1da177e4c3f41 Linus Torvalds 2005-04-16 1216 }
^1da177e4c3f41 Linus Torvalds 2005-04-16 1217 EXPORT_SYMBOL_GPL(get_task_mm);
^1da177e4c3f41 Linus Torvalds 2005-04-16 1218
:::::: The code at line 1134 was first introduced by commit
:::::: 3864601387cf4196371e3c1897fdffa5228296f9 mm: extract exe_file handling from procfs
:::::: TO: Jiri Slaby <jslaby@suse.cz>
:::::: CC: Linus Torvalds <torvalds@linux-foundation.org>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next reply other threads:[~2023-10-09 18:31 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-09 18:30 kernel test robot [this message]
2023-10-09 18:39 ` kernel/fork.c:1134: warning: Function parameter or member 'mm' not described in 'set_mm_exe_file' Randy Dunlap
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202310100237.RjecPfNo-lkp@intel.com \
--to=lkp@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=yamada.masahiro@socionext.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.