* [akpm-mm:mm-new 301/316] mm/memory_hotplug.c:1507:13: warning: 'node_is_memoryless' defined but not used
@ 2026-09-04 22:32 kernel test robot
2026-09-05 1:56 ` Andrew Morton
0 siblings, 1 reply; 3+ messages in thread
From: kernel test robot @ 2026-09-04 22:32 UTC (permalink / raw)
To: Gregory Price
Cc: oe-kbuild-all, David Hildenbrand, Andrew Morton,
Linux Memory Management List, mm-commits
Hi Gregory,
FYI, the error/warning was bisected to this commit, please ignore it if it's irrelevant.
tree: https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-new
head: e3fc12b08aadde9cec7b3799ac0e0c9a1aa245c4
commit: 77a622e07892674da28eb3ad349ddd96df10aded [301/316] mm/memory_hotplug: factor out node_is_memoryless()
config: x86_64-randconfig-161-20260904 (https://download.01.org/0day-ci/archive/20260905/202609050628.ywCLhOj5-lkp@intel.com/config)
compiler: gcc-13 (Debian 13.3.0-16) 13.3.0
smatch: v0.5.0-9187-g5189e3fb
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260905/202609050628.ywCLhOj5-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/202609050628.ywCLhOj5-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> mm/memory_hotplug.c:1507:13: warning: 'node_is_memoryless' defined but not used [-Wunused-function]
1507 | static bool node_is_memoryless(int nid)
| ^~~~~~~~~~~~~~~~~~
vim +/node_is_memoryless +1507 mm/memory_hotplug.c
1505
1506 /* Caller must hold the memory hotplug lock for this check. */
> 1507 static bool node_is_memoryless(int nid)
1508 {
1509 /*
1510 * A node still spanning pages (especially ZONE_DEVICE) is not
1511 * memoryless. A node spans memory after move_pfn_range_to_zone(),
1512 * e.g. once a memory block has been onlined.
1513 */
1514 if (node_spanned_pages(nid))
1515 return false;
1516 /*
1517 * Offline memory blocks may not be spanned by the node yet, but they
1518 * link to it in sysfs and can be onlined later, so the node is not
1519 * memoryless while any remain.
1520 */
1521 return !for_each_memory_block(&nid, check_no_memblock_for_node_cb);
1522 }
1523
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [akpm-mm:mm-new 301/316] mm/memory_hotplug.c:1507:13: warning: 'node_is_memoryless' defined but not used
2026-09-04 22:32 [akpm-mm:mm-new 301/316] mm/memory_hotplug.c:1507:13: warning: 'node_is_memoryless' defined but not used kernel test robot
@ 2026-09-05 1:56 ` Andrew Morton
2026-09-05 16:43 ` Gregory Price
0 siblings, 1 reply; 3+ messages in thread
From: Andrew Morton @ 2026-09-05 1:56 UTC (permalink / raw)
To: kernel test robot
Cc: Gregory Price, oe-kbuild-all, David Hildenbrand,
Linux Memory Management List, mm-commits
On Sat, 05 Sep 2026 06:32:19 +0800 kernel test robot <lkp@intel.com> wrote:
> Hi Gregory,
>
> FYI, the error/warning was bisected to this commit, please ignore it if it's irrelevant.
>
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-new
> head: e3fc12b08aadde9cec7b3799ac0e0c9a1aa245c4
> commit: 77a622e07892674da28eb3ad349ddd96df10aded [301/316] mm/memory_hotplug: factor out node_is_memoryless()
> config: x86_64-randconfig-161-20260904 (https://download.01.org/0day-ci/archive/20260905/202609050628.ywCLhOj5-lkp@intel.com/config)
> compiler: gcc-13 (Debian 13.3.0-16) 13.3.0
> smatch: v0.5.0-9187-g5189e3fb
> reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260905/202609050628.ywCLhOj5-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/202609050628.ywCLhOj5-lkp@intel.com/
>
> All warnings (new ones prefixed by >>):
>
> >> mm/memory_hotplug.c:1507:13: warning: 'node_is_memoryless' defined but not used [-Wunused-function]
> 1507 | static bool node_is_memoryless(int nid)
> | ^~~~~~~~~~~~~~~~~~
Thanks. Let me try this:
--- a/mm/memory_hotplug.c~mm-memory_hotplug-factor-out-node_is_memoryless-fix
+++ a/mm/memory_hotplug.c
@@ -1491,36 +1491,6 @@ out:
return ret;
}
-static int check_no_memblock_for_node_cb(struct memory_block *mem, void *arg)
-{
- int nid = *(int *)arg;
-
- /*
- * If a memory block belongs to multiple nodes, the stored nid is not
- * reliable. However, such blocks are always online (e.g., cannot get
- * offlined) and, therefore, are still spanned by the node.
- */
- return mem->nid == nid ? -EEXIST : 0;
-}
-
-/* Caller must hold the memory hotplug lock for this check. */
-static bool node_is_memoryless(int nid)
-{
- /*
- * A node still spanning pages (especially ZONE_DEVICE) is not
- * memoryless. A node spans memory after move_pfn_range_to_zone(),
- * e.g. once a memory block has been onlined.
- */
- if (node_spanned_pages(nid))
- return false;
- /*
- * Offline memory blocks may not be spanned by the node yet, but they
- * link to it in sysfs and can be onlined later, so the node is not
- * memoryless while any remain.
- */
- return !for_each_memory_block(&nid, check_no_memblock_for_node_cb);
-}
-
/*
* NOTE: The caller must call lock_device_hotplug() to serialize hotplug
* and online/offline operations (triggered e.g. by sysfs).
@@ -1815,6 +1785,37 @@ bool mhp_range_allowed(u64 start, u64 si
}
#ifdef CONFIG_MEMORY_HOTREMOVE
+
+static int check_no_memblock_for_node_cb(struct memory_block *mem, void *arg)
+{
+ int nid = *(int *)arg;
+
+ /*
+ * If a memory block belongs to multiple nodes, the stored nid is not
+ * reliable. However, such blocks are always online (e.g., cannot get
+ * offlined) and, therefore, are still spanned by the node.
+ */
+ return mem->nid == nid ? -EEXIST : 0;
+}
+
+/* Caller must hold the memory hotplug lock for this check. */
+static bool node_is_memoryless(int nid)
+{
+ /*
+ * A node still spanning pages (especially ZONE_DEVICE) is not
+ * memoryless. A node spans memory after move_pfn_range_to_zone(),
+ * e.g. once a memory block has been onlined.
+ */
+ if (node_spanned_pages(nid))
+ return false;
+ /*
+ * Offline memory blocks may not be spanned by the node yet, but they
+ * link to it in sysfs and can be onlined later, so the node is not
+ * memoryless while any remain.
+ */
+ return !for_each_memory_block(&nid, check_no_memblock_for_node_cb);
+}
+
/*
* Scan pfn range [start,end) to find movable/migratable pages (LRU and
* hugetlb folio, movable_ops pages). Will skip over most unmovable
_
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [akpm-mm:mm-new 301/316] mm/memory_hotplug.c:1507:13: warning: 'node_is_memoryless' defined but not used
2026-09-05 1:56 ` Andrew Morton
@ 2026-09-05 16:43 ` Gregory Price
0 siblings, 0 replies; 3+ messages in thread
From: Gregory Price @ 2026-09-05 16:43 UTC (permalink / raw)
To: Andrew Morton
Cc: kernel test robot, oe-kbuild-all, David Hildenbrand,
Linux Memory Management List, mm-commits
On Fri, Sep 04, 2026 at 06:56:58PM -0700, Andrew Morton wrote:
> On Sat, 05 Sep 2026 06:32:19 +0800 kernel test robot <lkp@intel.com> wrote:
>
> > Hi Gregory,
> >
> > FYI, the error/warning was bisected to this commit, please ignore it if it's irrelevant.
> >
> > tree: https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-new
> > head: e3fc12b08aadde9cec7b3799ac0e0c9a1aa245c4
> > commit: 77a622e07892674da28eb3ad349ddd96df10aded [301/316] mm/memory_hotplug: factor out node_is_memoryless()
> > config: x86_64-randconfig-161-20260904 (https://download.01.org/0day-ci/archive/20260905/202609050628.ywCLhOj5-lkp@intel.com/config)
> > compiler: gcc-13 (Debian 13.3.0-16) 13.3.0
> > smatch: v0.5.0-9187-g5189e3fb
> > reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260905/202609050628.ywCLhOj5-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/202609050628.ywCLhOj5-lkp@intel.com/
> >
> > All warnings (new ones prefixed by >>):
> >
> > >> mm/memory_hotplug.c:1507:13: warning: 'node_is_memoryless' defined but not used [-Wunused-function]
> > 1507 | static bool node_is_memoryless(int nid)
> > | ^~~~~~~~~~~~~~~~~~
>
> Thanks. Let me try this:
Thanks Andrew, sorry for the churn.
~GRegory
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2026-09-05 16:44 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-04 22:32 [akpm-mm:mm-new 301/316] mm/memory_hotplug.c:1507:13: warning: 'node_is_memoryless' defined but not used kernel test robot
2026-09-05 1:56 ` Andrew Morton
2026-09-05 16:43 ` Gregory Price
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox