[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <ZnkJ1zj0NTR3dYwo@kernel.org>
Date: Mon, 24 Jun 2024 08:53:27 +0300
From: Mike Rapoport <rppt@...nel.org>
To: Mark Brown <broonie@...nel.org>
Cc: "Gowans, James" <jgowans@...zon.com>,
"linux-next@...r.kernel.org" <linux-next@...r.kernel.org>,
"jbeulich@...e.com" <jbeulich@...e.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: linux-next: manual merge of the memblock tree with the origin
tree
Hi,
On Fri, Jun 21, 2024 at 09:30:51PM +0100, Mark Brown wrote:
> On Fri, Jun 21, 2024 at 08:08:53PM +0000, Gowans, James wrote:
> > On Thu, 2024-06-20 at 19:00 +0100, Mark Brown wrote:
>
> > > Yes, the merge in -next is wrong.
>
> > What's the next step to fix the incorrect merge commit?
> > Looking at today's -next I see the same issue:
> > https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/mm/memblock.c?h=next-20240621&id=f689ee4c062317a0831fbffeeb30d7816608b2e7
>
> It's remembered by rerere, hopefully I'll convince rerere to forget it
> on Monday.
Just in case this is the resolution for merge conflict
diff --cc mm/memblock.c
index e81fb68f7f88,692dc551c0fd..000000000000
--- a/mm/memblock.c
+++ b/mm/memblock.c
@@@ -1441,6 -1446,20 +1439,17 @@@ phys_addr_t __init memblock_alloc_range
enum memblock_flags flags = choose_memblock_flags();
phys_addr_t found;
- if (WARN_ONCE(nid == MAX_NUMNODES, "Usage of MAX_NUMNODES is deprecated. Use NUMA_NO_NODE instead\n"))
- nid = NUMA_NO_NODE;
-
+ /*
+ * Detect any accidental use of these APIs after slab is ready, as at
+ * this moment memblock may be deinitialized already and its
+ * internal data may be destroyed (after execution of memblock_free_all)
+ */
+ if (WARN_ON_ONCE(slab_is_available())) {
+ void *vaddr = kzalloc_node(size, GFP_NOWAIT, nid);
+
+ return vaddr ? virt_to_phys(vaddr) : 0;
+ }
+
if (!align) {
/* Can't use WARNs this early in boot on powerpc */
dump_stack();
--
Sincerely yours,
Mike.
Powered by blists - more mailing lists