From: sashiko-bot@kernel.org
To: "Huan Nguyen" <nhuhuan@google.com>,
tglx@kernel.org, mingo@redhat.com, bp@alien8.de,
dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com,
akpm@linux-foundation.org, david@kernel.org, ljs@kernel.org,
Liam.Howlett@oracle.com, vbabka@kernel.org, rppt@kernel.org,
surenb@google.com, mhocko@suse.com, trondmy@kernel.org,
anna@kernel.org, ziy@nvidia.com, matthew.brost@intel.com,
joshua.hahnjy@gmail.com, rakie.kim@sk.com, byungchul@sk.com,
gourry@gourry.net, ying.huang@linux.alibaba.com,
apopple@nvidia.com, rostedt@goodmis.org, mhiramat@kernel.org,
mathieu.desnoyers@efficios.com, jackmanb@google.com,
hannes@cmpxchg.org, shivankg@amd.com
Cc: rientjes@google.com, dave@stgolabs.net, nifan.cxl@gmail.com,
fvdl@google.com, jic23@kernel.org, rkodsara@amd.com,
bharata@amd.com, sj@kernel.org, weixugc@google.com,
xuezhengchu@huawei.com, yiannis@zptcorp.com,
yiannis.nikolakop@gmail.com, dimitrios.palyvos@zptcorp.com,
alirad.malek@zptcorp.com, ryan.roberts@arm.com,
linux-mm@kvack.org, linux-trace-kernel@vger.kernel.org,
"Chuck Lever" <cel@kernel.org>,
"Jeff Layton" <jlayton@kernel.org>
Subject: Re: [RFC PATCH v3 1/3] mm, x86: support copying a folio using non-temporal stores
Date: Wed, 04 Nov 2026 22:31:53 +0000 [thread overview]
Message-ID: <sashiko-outbox-198230@kernel.org> (raw)
In-Reply-To: <20261103223025.2482227-2-nhuhuan@google.com>
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Low] x86/mm: missing KCFI_REFERENCE() for copy_mc_page_nt()
--
commit c8614f6dfdf00a57c43828a75e8413d839e5a48b
Author: Huan Nguyen <nhuhuan@google.com>
mm, x86: support copying a folio using non-temporal stores
This commit adds copy_mc_page_nt(), copy_mc_highpage_nt(), and
folio_mc_copy_nt() to support machine-check safe copying of folios on x86_64
using non-temporal stores.
> diff --git a/arch/x86/include/asm/page_64.h b/arch/x86/include/asm/page_64.h
> index 1895c207f629a..f37126b562390 100644
> --- a/arch/x86/include/asm/page_64.h
> +++ b/arch/x86/include/asm/page_64.h
> @@ -114,7 +114,9 @@ static inline void clear_page(void *addr)
> clear_pages(addr, 1);
> }
>
> +#define __HAVE_ARCH_COPY_PAGE_NT 1
> void copy_page(void *to, void *from);
> +unsigned long copy_mc_page_nt(void *to, const void *from);
> KCFI_REFERENCE(copy_page);
[Severity: Low]
In arch/x86/lib/copy_page_64.S, copy_mc_page_nt() is defined using
SYM_TYPED_FUNC_START(copy_mc_page_nt) and exported from assembly via
EXPORT_SYMBOL_GPL(copy_mc_page_nt):
arch/x86/lib/copy_page_64.S:
SYM_TYPED_FUNC_START(copy_mc_page_nt)
...
SYM_FUNC_END(copy_mc_page_nt)
EXPORT_SYMBOL_GPL(copy_mc_page_nt)
When CONFIG_CFI_CLANG is enabled, SYM_TYPED_FUNC_START(copy_mc_page_nt) emits
a relocation against __kcfi_typeid_copy_mc_page_nt. Because Clang only emits
__kcfi_typeid_<func> symbols in C translation units where the function has its
address taken, and EXPORT_SYMBOL_GPL() in an assembly file does not include
the C-only __ADDRESSABLE() annotation, nothing in C takes the address of
copy_mc_page_nt() (which is only called directly from copy_mc_highpage_nt() in
include/linux/highmem.h).
Will building with CONFIG_CFI_CLANG=y fail at link time with an undefined
reference to __kcfi_typeid_copy_mc_page_nt unless
KCFI_REFERENCE(copy_mc_page_nt) is added alongside KCFI_REFERENCE(copy_page)
in arch/x86/include/asm/page_64.h?
--
Sashiko AI review · https://sashiko.dev/#/patchset/20261103223025.2482227-1-nhuhuan@google.com?part=1
next prev parent reply other threads:[~2026-11-04 22:32 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-30 15:02 [PATCH RFC v2 0/3] Demote to lower tier using non-temporal stores Yiannis Nikolakopoulos
2026-07-30 15:02 ` [PATCH RFC v2 1/3] mm, x86: support copying a folio " Yiannis Nikolakopoulos
2026-07-31 21:53 ` Huan Nguyen
2026-08-17 16:34 ` Garg, Shivank
2026-07-30 15:02 ` [PATCH RFC v2 2/3] mm: new migrate_mode flag for async " Yiannis Nikolakopoulos
2026-08-05 14:14 ` Huang, Ying
2026-07-30 15:02 ` [PATCH RFC v2 3/3] mm: use non-temporal stores for demotion Yiannis Nikolakopoulos
2026-07-30 17:30 ` [PATCH RFC v2 0/3] Demote to lower tier using non-temporal stores Gregory Price
2026-07-30 17:40 ` Frank van der Linden
2026-07-30 18:08 ` Johannes Weiner
2026-07-30 20:49 ` Gregory Price
2026-11-03 22:30 ` [RFC PATCH v3 0/3] mm: use non-temporal stores for demotion Huan Nguyen
2026-11-03 22:30 ` [RFC PATCH v3 1/3] mm, x86: support copying a folio using non-temporal stores Huan Nguyen
2026-11-04 22:31 ` sashiko-bot [this message]
2026-11-03 22:30 ` [RFC PATCH v3 2/3] mm/migrate: introduce async non-temporal migration mode Huan Nguyen
2026-11-04 22:31 ` sashiko-bot
2026-11-03 22:30 ` [RFC PATCH v3 3/3] mm/vmscan: demote folios using non-temporal stores Huan Nguyen
2026-11-04 0:09 ` [RFC PATCH v3 0/3] mm: use non-temporal stores for demotion Zi Yan
2026-11-04 9:07 ` Lorenzo Stoakes (ARM)
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=sashiko-outbox-198230@kernel.org \
--to=sashiko-bot@kernel.org \
--cc=Liam.Howlett@oracle.com \
--cc=akpm@linux-foundation.org \
--cc=alirad.malek@zptcorp.com \
--cc=anna@kernel.org \
--cc=apopple@nvidia.com \
--cc=bharata@amd.com \
--cc=bp@alien8.de \
--cc=byungchul@sk.com \
--cc=cel@kernel.org \
--cc=dave.hansen@linux.intel.com \
--cc=dave@stgolabs.net \
--cc=david@kernel.org \
--cc=dimitrios.palyvos@zptcorp.com \
--cc=fvdl@google.com \
--cc=gourry@gourry.net \
--cc=hannes@cmpxchg.org \
--cc=hpa@zytor.com \
--cc=jackmanb@google.com \
--cc=jic23@kernel.org \
--cc=jlayton@kernel.org \
--cc=joshua.hahnjy@gmail.com \
--cc=linux-mm@kvack.org \
--cc=linux-trace-kernel@vger.kernel.org \
--cc=ljs@kernel.org \
--cc=mathieu.desnoyers@efficios.com \
--cc=matthew.brost@intel.com \
--cc=mhiramat@kernel.org \
--cc=mhocko@suse.com \
--cc=mingo@redhat.com \
--cc=nhuhuan@google.com \
--cc=nifan.cxl@gmail.com \
--cc=rakie.kim@sk.com \
--cc=rientjes@google.com \
--cc=rkodsara@amd.com \
--cc=rostedt@goodmis.org \
--cc=rppt@kernel.org \
--cc=ryan.roberts@arm.com \
--cc=sashiko-reviews@lists.linux.dev \
--cc=shivankg@amd.com \
--cc=sj@kernel.org \
--cc=surenb@google.com \
--cc=tglx@kernel.org \
--cc=trondmy@kernel.org \
--cc=vbabka@kernel.org \
--cc=weixugc@google.com \
--cc=x86@kernel.org \
--cc=xuezhengchu@huawei.com \
--cc=yiannis.nikolakop@gmail.com \
--cc=yiannis@zptcorp.com \
--cc=ying.huang@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox