mbox series

[v3,0/7] x86: memcpy() / memset() (non-)ERMS flavors plus fallout

Message ID e7314ac8-ed09-4da8-b915-09409b01fe77@suse.com (mailing list archive)
Headers show
Series x86: memcpy() / memset() (non-)ERMS flavors plus fallout | expand

Message

Jan Beulich Nov. 25, 2024, 2:24 p.m. UTC
While the performance varies quite a bit on older (pre-ERMS) and newer
(ERMS) hardware, so far we've been going with just a single flavor of
these two functions, and oddly enough with ones not consistent with one
another. Using plain memcpy() / memset() on MMIO (video frame buffer)
is generally okay, but the ERMS variant of memcpy() turned out to
regress (boot) performance in a way easily visible to the human eye.

v3, apart from the new 1st patch, submitted mainly upon request, as
otherwise there was just some re-basing over the 3.5 years since v2.

01: x86: suppress ERMS for internal use when MISC_ENABLE.FAST_STRING is clear
02: x86: re-work memset()
03: x86: re-work memcpy()
04: x86: control memset() and memcpy() inlining
05: x86: introduce "hot" and "cold" page clearing functions
06: page-alloc: make scrub_on_page() static
07: mm: allow page scrubbing routine(s) to be arch controlled

Jan