[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <aRr6Ll7h29dpt7zz@J2N7QTR9R3>
Date: Mon, 17 Nov 2025 10:34:22 +0000
From: Mark Rutland <mark.rutland@....com>
To: Ben Niu <BenNiu@...a.com>
Cc: catalin.marinas@....com, will@...nel.org, tytso@....edu,
Jason@...c4.com, linux-arm-kernel@...ts.infradead.org,
niuben003@...il.com, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] tracing: Enable kprobe tracing for Arm64 asm functions
On Thu, Oct 30, 2025 at 11:07:51AM -0700, Ben Niu wrote:
> On Thu, Oct 30, 2025 at 12:35:25PM +0000, Mark Rutland wrote:
> > Is there something specific you want to trace, but cannot currently
> > trace (on arm64)?
>
> For some reason, we only saw Arm64 Linux asm functions __arch_copy_to_user and
> __arch_copy_from_user being hot in our workloads, not those counterpart asm
> functions on x86, so we are trying to understand and improve performance of
> those Arm64 asm functions.
Are you sure that's not an artifact of those being out-of-line on arm64,
but inline on x86? On x86, the out-of-line forms are only used when the
CPU doesn't have FSRM, and when the CPU *does* have FSRM, the logic gets
inlined. See raw_copy_from_user(), raw_copy_to_user(), and
copy_user_generic() in arch/x86/include/asm/uaccess_64.h.
Have you checked that inlining is not skewing your results, and
artificially making those look hotter on am64 by virtue of centralizing
samples to the same IP/PC range?
Can you share any information on those workloads? e.g. which callchains
were hot?
Mark.
Powered by blists - more mailing lists