copy_page improvements
Get series with b4
b4 am [email protected]Versions newest first
- v1 Latest0 of 4 patches 0 repliesNew
Patches in v1 No applies recorded yet
None of the 4 patches the cover letter announces are in this archive.
Reviews trailers per patch
| Patch | Andrew Pinski |
|---|---|
| Series | T-b |
Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.
Cover letter [PATCH 0/4] copy_page improvements
Quoted 9 lines · Will Deacon
Hi all,
This patch series aims to improve our
copy_pageimplementation on both CPUs with and without hardware prefetchers. It is inspired by a previous patch series from Andrew, and one of the patches is lifted directly from there:http://lists.infradead.org/pipermail/linux-arm-kernel/2016-January/399132.html
Quoted 8 lines
Changes from that series:
* Applies on top of mainline
* Inverted the capability to the more genericARM64_HAS_NO_HW_PREFETCH
* Re-jigged the MIDR detection to try to keep it simpleI've left
copy_templatealone for now, since the template really deals with 64 bytes per iteration, which would need changing.
Right, I had looked at doing that also for newlib/glibc but the code is too complex.
Quoted 3 lines
Andrew -- it would be helpful if you could take this for a spin on ThunderX to make sure it didn't screw anything up.
Yes it works and I get the needed prefetch in copy_page.
Thanks,
Andrew
Quoted 23 lines
Cheers,
Will
--->8
Andrew Pinski (1):
arm64: lib: patch in prfm forcopy_pageif requestedWill Deacon (3):
arm64: prefetch: don't providespin_lock_prefetchwith LSE
arm64: prefetch: add alternative pattern for CPUs without a prefetcher
arm64: lib: improvecopy_pageto deal with 128 bytes at a timearch/arm64/include/asm/cpufeature.h | 3 +- arch/arm64/include/asm/cputype.h | 17 +++++++++- arch/arm64/include/asm/processor.h | 7 +++-- arch/arm64/kernel/cpu_errata.c | 18 ++--------- arch/arm64/kernel/cpufeature.c | 17 ++++++++++ arch/arm64/lib/copy_page.S | 63 ++++++++++++++++++++++++++++++++----- 6 files changed, 98 insertions(+), 27 deletions(-)