[PATCH v2] arm64: clear_page[s] using memset

Catalin Marinas catalin.marinas at arm.com
Wed Oct 14 02:03:02 PDT 2026


On Tue, Oct 13, 2026 at 06:28:54PM +0200, Linus Walleij wrote:
> On Tue, Oct 13, 2026 at 3:04 PM Catalin Marinas <catalin.marinas at arm.com> wrote:
> 
> > Trying to make sense of the above. So based on -next of 22nd of
> > September, the table means:
> >
> > vanilla         - next/master on that day (current clear_page())
> > patch           - memset()-based clear_page() patch (Linus's patch)
> > stnp            - vanilla clear_page() without DC ZVA
> > patch_stp       - memset()-based clear_page() patch without DC ZVA
> >
> > I assume the vanilla vs patch columns are just noise. Well, there's a
> > -1.17% regression (not flagged) on Ampere but what's the standard
> > deviation for this column? Similarly for the -1.15% on the AWS patch_stp
> > test (vs stnp in the same test, it's no worse).
> >
> > Vanilla vs stnp shows a regression on Ampere, however that's expected as
> > we no longer do the DC ZVA. Interestingly, the patch_stp result doesn't have
> > this regression, so I reckon DC ZVA behaves mostly in line with STP on
> > this hardware.
> >
> > Basically I was looking for the stnp vs patch_stp results. If I read it
> > correctly, there's no significant change going from non-temporal to
> > temporal stores (and a small improvement for Ampere). Assuming future
> > FEAT_MOPS will have similar behaviour, moving clear_page() to memset()
> > shouldn't cause any regressions. Before FEAT_MOPS, we'll use DC ZVA here
> > anyway.
> 
> That almost sounds like an Acked-by if Usama can confirm your
> assumptions above!

It's queued but we can revert it if it shows real regression.

-- 
Catalin



More information about the linux-arm-kernel mailing list