From: "Huang, Ying" <ying.huang@linux.alibaba.com>
To: Yuanhe Shu <xiangzao@linux.alibaba.com>
Cc: akpm@linux-foundation.org, david@kernel.org,
"Kaitao Cheng" <kaitao.cheng@linux.dev>,
vbabka@kernel.org, ljs@kernel.org, liam@infradead.org,
rppt@kernel.org, surenb@google.com, mhocko@suse.com,
linmiaohe@huawei.com, nao.horiguchi@gmail.com, ziy@nvidia.com,
wangkefeng.wang@huawei.com, tujinjiang@huawei.com,
mgorman@techsingularity.net, chengkaitao@kylinos.cn,
muchun.song@linux.dev, linux-mm@kvack.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2] mm/highmem: refuse to copy hwpoisoned folios in the !copy_mc fallbacks
Date: Thu, 29 Oct 2026 19:12:13 +0800 [thread overview]
Message-ID: <87zevwiwvm.fsf@DESKTOP-5N7EMDA> (raw)
In-Reply-To: <20261029034254.2487998-1-xiangzao@linux.alibaba.com> (Yuanhe Shu's message of "Thu, 29 Oct 2026 11:42:54 +0800")
Yuanhe Shu <xiangzao@linux.alibaba.com> writes:
> The !copy_mc fallbacks of copy_mc_user_highpage() and
> copy_mc_highpage() return 0 after a plain copy. With PG_hwpoison
> set while the data stays readable, there is no fault to recover
> from: the copy completes, the destination folio carries no poison
> marker, and the poison is consumed silently.
IIUC, in all cases except debugging, reading poisoned memory will cause
an MCE (x86), an SEA (arm), or similar. Otherwise, copy_mc on x86
would not work either.
If so, we should only check is_page_hwpoison() before copying.
> Check the source page with is_page_hwpoison() in both fallbacks,
> before and after the copy, and return PAGE_SIZE, the
> not-copied-bytes convention of the real copy_mc paths, so the
> callers take their existing error paths. On archs with copy_mc
> this code does not compile.
>
> Measured on arm64, where the fallback code compiles (10 rounds
> each): COW copy throughput 1043.67 MB/s before and 1043.26 MB/s
> after the patch, fork latency 348 vs 359 us, forced migration 57396
> vs 57654 MB/s - all within run-to-run noise.
Could you implement a micro-benchmark in kernel to test your copy_mc
functions?
[snip]
---
Best Regards,
Huang, Ying
prev parent reply other threads:[~2026-10-29 11:12 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-29 3:42 [PATCH v2] mm/highmem: refuse to copy hwpoisoned folios in the !copy_mc fallbacks Yuanhe Shu
2026-10-29 11:12 ` Huang, Ying [this message]
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=87zevwiwvm.fsf@DESKTOP-5N7EMDA \
--to=ying.huang@linux.alibaba.com \
--cc=akpm@linux-foundation.org \
--cc=chengkaitao@kylinos.cn \
--cc=david@kernel.org \
--cc=kaitao.cheng@linux.dev \
--cc=liam@infradead.org \
--cc=linmiaohe@huawei.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=ljs@kernel.org \
--cc=mgorman@techsingularity.net \
--cc=mhocko@suse.com \
--cc=muchun.song@linux.dev \
--cc=nao.horiguchi@gmail.com \
--cc=rppt@kernel.org \
--cc=surenb@google.com \
--cc=tujinjiang@huawei.com \
--cc=vbabka@kernel.org \
--cc=wangkefeng.wang@huawei.com \
--cc=xiangzao@linux.alibaba.com \
--cc=ziy@nvidia.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.