From: ranxiaokai627@163.com
To: akpm@linux-foundation.org
Cc: graf@amazon.com, kent.overstreet@linux.dev,
kexec@lists.infradead.org, linux-kernel@vger.kernel.org,
linux-mm@kvack.org, pasha.tatashin@soleen.com,
pratyush@kernel.org, ran.xiaokai@zte.com.cn,
ranxiaokai627@163.com, rppt@kernel.org, surenb@google.com
Subject: Re: [PATCH v3] kho: init alloc tags when restoring pages from reserved memory
Date: Thu, 22 Jan 2026 04:25:06 +0000 [thread overview]
Message-ID: <20260122042506.175897-1-ranxiaokai627@163.com> (raw)
In-Reply-To: <20260121120804.d1334ea0cc66b4a6de691cbf@linux-foundation.org>
>> From: Ran Xiaokai <ran.xiaokai@zte.com.cn>
>>
>> Memblock pages (including reserved memory) should have their allocation
>> tags initialized to CODETAG_EMPTY via clear_page_tag_ref() before being
>> released to the page allocator. When kho restores pages through
>> kho_restore_page(), missing this call causes mismatched
>> allocation/deallocation tracking and below warning message:
>>
>> alloc_tag was not set
>> WARNING: include/linux/alloc_tag.h:164 at ___free_pages+0xb8/0x260, CPU#1: swapper/0/1
>> RIP: 0010:___free_pages+0xb8/0x260
>> kho_restore_vmalloc+0x187/0x2e0
>> kho_test_init+0x3c4/0xa30
>> do_one_initcall+0x62/0x2b0
>> kernel_init_freeable+0x25b/0x480
>> kernel_init+0x1a/0x1c0
>> ret_from_fork+0x2d1/0x360
>>
>> Add missing clear_page_tag_ref() annotation in kho_restore_page() to
>> fix this.
>>
>> Signed-off-by: Ran Xiaokai <ran.xiaokai@zte.com.cn>
>> ---
>> It is based on linux-next 20260120. I dont konw whether this base is ok ?
>
>It's awkward.
>
>Your v2 patch was based on Linus mainline. This is appropriate, as the
>patch should be sent to Linus soon and it has cc:stable, so -stable
>maintainers will try to backport it into earlier kernels.
>
>However your v3 patch is dependent upon other material ("kho: simplify
>page initialization in kho_restore_page()") which is scheduled for
>6.20(?)-rc1.
I think i misunderstood Pratyush's last reply:
"I suggested a re-roll of this patch based on top of my cleanup patches
[1], since I think with those the end result is a bit nicer."
>For a prompt, backportable merge it's best to base the fix on latest
>Linus mainline, please.
>
>You didn't actually describe why v3 is different from v2. If the
>v2->v3 changes are just nice-to-have then let's redo those and base
>them on linux-next in the usual fashion.
>Unless I'm missing something, your well-reviewed, decently-tested v2
>patch remains suitable for upstreaming during 6.18-rcX
v2 version just fixed the folio case(compound page), but didn't fix the
contiguous order 0 pages case. So i think it is better to send a v3 version
base on lastest Linus tree and drop the v2 version.
next prev parent reply other threads:[~2026-01-22 4:25 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-01-21 14:34 ranxiaokai627
2026-01-21 20:08 ` Andrew Morton
2026-01-22 4:25 ` ranxiaokai627 [this message]
2026-01-22 10:23 ` Pratyush Yadav
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=20260122042506.175897-1-ranxiaokai627@163.com \
--to=ranxiaokai627@163.com \
--cc=akpm@linux-foundation.org \
--cc=graf@amazon.com \
--cc=kent.overstreet@linux.dev \
--cc=kexec@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=pasha.tatashin@soleen.com \
--cc=pratyush@kernel.org \
--cc=ran.xiaokai@zte.com.cn \
--cc=rppt@kernel.org \
--cc=surenb@google.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox