[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [PATCH v3 0/4] Make PDX compression optional
Currently there's a CONFIG_HAS_PDX Kconfig option, but it's impossible to disable it because the whole codebase performs unconditional compression/decompression operations on addresses. This has the unfortunate side effect that systems without a need for compression still have to pay the performance impact of juggling bits on every pfn<->pdx conversion (this requires reading several global variables). This series attempts to: * Leave the state of pdx and pdx compression documented * Factor out compression so it _can_ be removed through Kconfig * Make it so compression is disabled on x86 and enabled on both Aarch32 and Aarch64 by default. Series summary: Patch 1 Moves hard-coded compression-related logic to helper functions Patch 2 Refactors all instances of regions being validated for pdx compression conformance so it's done through a helper Patch 3 Non-functional reorder in order to simplify the patch 8 diff Patch 4 Adds new Kconfig option to compile out PDX compression and removes the old CONFIG_HAS_PDX, as it was non removable Already committed: v1/patch 1 documents the current general understanding of the pdx concept and pdx compression in particular v1/patch 3 Marks the pdx compression globals as ro_after_init v2/patch 1 Documents the differences between arm32 and arm64 directmaps Alejandro Vallejo (4): mm: Factor out the pdx compression logic in ma/va converters mm/pdx: Standardize region validation wrt pdx compression pdx: Reorder pdx.[ch] pdx: Add CONFIG_PDX_COMPRESSION as a common Kconfig option xen/arch/arm/Kconfig | 1 - xen/arch/arm/include/asm/mm.h | 3 +- xen/arch/x86/Kconfig | 1 - xen/arch/x86/domain.c | 19 ++-- xen/arch/x86/include/asm/x86_64/page.h | 28 +++--- xen/arch/x86/x86_64/mm.c | 6 +- xen/common/Kconfig | 13 ++- xen/common/Makefile | 2 +- xen/common/efi/boot.c | 13 ++- xen/common/pdx.c | 76 +++++++++------ xen/include/xen/pdx.h | 127 +++++++++++++++++++------ 11 files changed, 193 insertions(+), 96 deletions(-) -- 2.34.1
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |