Linux-mm Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [akpm-mm:mm-new 301/315] mm/oom_kill.c:922:12: warning: 'kill_all_shared_mm' defined but not used
@ 2026-05-13 11:48 kernel test robot
  2026-05-13 17:27 ` Andrew Morton
  0 siblings, 1 reply; 2+ messages in thread
From: kernel test robot @ 2026-05-13 11:48 UTC (permalink / raw)
  To: Minchan Kim
  Cc: oe-kbuild-all, David Hildenbrand, Andrew Morton,
	Linux Memory Management List, mm-commits, Suren Baghdasaryan

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-new
head:   2c3f468717231305523ddcd94d91c0d5e4a72419
commit: def36547cd98fa3f7ecac1bf860479f500bc6b1e [301/315] mm: process_mrelease: introduce PROCESS_MRELEASE_REAP_KILL flag
config: sh-allnoconfig (https://download.01.org/0day-ci/archive/20260513/202605131940.kEzvUaiR-lkp@intel.com/config)
compiler: sh4-linux-gcc (GCC) 15.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260513/202605131940.kEzvUaiR-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/202605131940.kEzvUaiR-lkp@intel.com/

All warnings (new ones prefixed by >>):

>> mm/oom_kill.c:922:12: warning: 'kill_all_shared_mm' defined but not used [-Wunused-function]
     922 | static int kill_all_shared_mm(struct task_struct *victim, struct mm_struct *mm)
         |            ^~~~~~~~~~~~~~~~~~


vim +/kill_all_shared_mm +922 mm/oom_kill.c

   912	
   913	/*
   914	 * kill_all_shared_mm - Deliver SIGKILL to all processes sharing the given address space.
   915	 * @victim: the targeted OOM process group leader
   916	 * @mm:     the virtual memory space being reaped
   917	 *
   918	 * Traverse all threads globally and signal any user processes sharing the identical
   919	 * mm footprints, ensuring no concurrent users pin the memory. Skips the system
   920	 * global init and kernel worker threads.
   921	 */
 > 922	static int kill_all_shared_mm(struct task_struct *victim, struct mm_struct *mm)
   923	{
   924		struct task_struct *p;
   925		bool failed = false;
   926	
   927		rcu_read_lock();
   928		for_each_process(p) {
   929			if (!process_shares_mm(p, mm))
   930				continue;
   931			if (is_global_init(p)) {
   932				failed = true;
   933				continue;
   934			}
   935			if (unlikely(p->flags & PF_KTHREAD))
   936				continue;
   937	
   938			if (do_pidfd_send_signal_pidns(task_pid(p), SIGKILL, PIDTYPE_TGID, NULL, 0))
   939				failed = true;
   940		}
   941		rcu_read_unlock();
   942	
   943		return failed ? -EBUSY : 0;
   944	}
   945	

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [akpm-mm:mm-new 301/315] mm/oom_kill.c:922:12: warning: 'kill_all_shared_mm' defined but not used
  2026-05-13 11:48 [akpm-mm:mm-new 301/315] mm/oom_kill.c:922:12: warning: 'kill_all_shared_mm' defined but not used kernel test robot
@ 2026-05-13 17:27 ` Andrew Morton
  0 siblings, 0 replies; 2+ messages in thread
From: Andrew Morton @ 2026-05-13 17:27 UTC (permalink / raw)
  To: kernel test robot
  Cc: Minchan Kim, oe-kbuild-all, David Hildenbrand,
	Linux Memory Management List, mm-commits, Suren Baghdasaryan

On Wed, 13 May 2026 19:48:25 +0800 kernel test robot <lkp@intel.com> wrote:

> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-new
> head:   2c3f468717231305523ddcd94d91c0d5e4a72419
> commit: def36547cd98fa3f7ecac1bf860479f500bc6b1e [301/315] mm: process_mrelease: introduce PROCESS_MRELEASE_REAP_KILL flag
> config: sh-allnoconfig (https://download.01.org/0day-ci/archive/20260513/202605131940.kEzvUaiR-lkp@intel.com/config)
> compiler: sh4-linux-gcc (GCC) 15.2.0
> reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260513/202605131940.kEzvUaiR-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/202605131940.kEzvUaiR-lkp@intel.com/
> 
> All warnings (new ones prefixed by >>):
> 
> >> mm/oom_kill.c:922:12: warning: 'kill_all_shared_mm' defined but not used [-Wunused-function]
>      922 | static int kill_all_shared_mm(struct task_struct *victim, struct mm_struct *mm)

Thanks. I  did this:


From: Andrew Morton <akpm@linux-foundation.org>
Subject: mm-process_mrelease-introduce-process_mrelease_reap_kill-flag-fix
Date: Wed May 13 10:22:14 AM PDT 2026

move kill_all_shared_mm() inside CONFIG_MMU

Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202605131940.kEzvUaiR-lkp@intel.com
Cc: Christian Brauner <brauner@kernel.org>
Cc: David Hildenbrand <david@kernel.org>
Cc: Heiko Carstens <hca@linux.ibm.com>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Minchan Kim <minchan@kernel.org>
Cc: Suren Baghdasaryan <surenb@google.com>
Cc: Tim Murray <timmurray@google.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
---

 mm/oom_kill.c |   66 ++++++++++++++++++++++++------------------------
 1 file changed, 33 insertions(+), 33 deletions(-)

--- a/mm/oom_kill.c~mm-process_mrelease-introduce-process_mrelease_reap_kill-flag-fix
+++ a/mm/oom_kill.c
@@ -676,6 +676,39 @@ static void wake_oom_reaper(struct timer
 }
 
 /*
+ * kill_all_shared_mm - Deliver SIGKILL to all processes sharing the given address space.
+ * @victim: the targeted OOM process group leader
+ * @mm:     the virtual memory space being reaped
+ *
+ * Traverse all threads globally and signal any user processes sharing the
+ * identical mm footprints, ensuring no concurrent users pin the memory. Skips
+ * the system global init and kernel worker threads.
+ */
+static int kill_all_shared_mm(struct task_struct *victim, struct mm_struct *mm)
+{
+	struct task_struct *p;
+	bool failed = false;
+
+	rcu_read_lock();
+	for_each_process(p) {
+		if (!process_shares_mm(p, mm))
+			continue;
+		if (is_global_init(p)) {
+			failed = true;
+			continue;
+		}
+		if (unlikely(p->flags & PF_KTHREAD))
+			continue;
+
+		if (do_pidfd_send_signal_pidns(task_pid(p), SIGKILL, PIDTYPE_TGID, NULL, 0))
+			failed = true;
+	}
+	rcu_read_unlock();
+
+	return failed ? -EBUSY : 0;
+}
+
+/*
  * Give the OOM victim time to exit naturally before invoking the oom_reaping.
  * The timers timeout is arbitrary... the longer it is, the longer the worst
  * case scenario for the OOM can take. If it is too small, the oom_reaper can
@@ -910,39 +943,6 @@ static bool task_will_free_mem(struct ta
 	return ret;
 }
 
-/*
- * kill_all_shared_mm - Deliver SIGKILL to all processes sharing the given address space.
- * @victim: the targeted OOM process group leader
- * @mm:     the virtual memory space being reaped
- *
- * Traverse all threads globally and signal any user processes sharing the identical
- * mm footprints, ensuring no concurrent users pin the memory. Skips the system
- * global init and kernel worker threads.
- */
-static int kill_all_shared_mm(struct task_struct *victim, struct mm_struct *mm)
-{
-	struct task_struct *p;
-	bool failed = false;
-
-	rcu_read_lock();
-	for_each_process(p) {
-		if (!process_shares_mm(p, mm))
-			continue;
-		if (is_global_init(p)) {
-			failed = true;
-			continue;
-		}
-		if (unlikely(p->flags & PF_KTHREAD))
-			continue;
-
-		if (do_pidfd_send_signal_pidns(task_pid(p), SIGKILL, PIDTYPE_TGID, NULL, 0))
-			failed = true;
-	}
-	rcu_read_unlock();
-
-	return failed ? -EBUSY : 0;
-}
-
 static void __oom_kill_process(struct task_struct *victim, const char *message)
 {
 	struct task_struct *p;
_



^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2026-05-13 17:27 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-13 11:48 [akpm-mm:mm-new 301/315] mm/oom_kill.c:922:12: warning: 'kill_all_shared_mm' defined but not used kernel test robot
2026-05-13 17:27 ` Andrew Morton

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox