All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/8] pdx: introduce a new compression algorithm
@ 2025-06-20 11:11 Roger Pau Monne
  2025-06-20 11:11 ` [PATCH v2 1/8] x86/pdx: simplify calculation of domain struct allocation boundary Roger Pau Monne
                   ` (8 more replies)
  0 siblings, 9 replies; 55+ messages in thread
From: Roger Pau Monne @ 2025-06-20 11:11 UTC (permalink / raw)
  To: xen-devel
  Cc: Roger Pau Monne, Jan Beulich, Andrew Cooper, Anthony PERARD,
	Michal Orzel, Julien Grall, Stefano Stabellini, Bertrand Marquis,
	Volodymyr Babchuk, Shawn Anastasio, Alistair Francis,
	Bob Eshleman, Connor Davis, Oleksii Kurochko, Community Manager

Hello,

This series implements a new PDX compression algorithm to cope with the
spare memory maps found on the Intel Sapphire/Granite Rapids.

Patches 1 to 7 prepare the existing code to make it easier to introduce
a new PDX compression, including generalizing the initialization and
setup functions and adding a unit test for PDX compression.

Patch 8 introduce the new compression.  The new compression is only
enabled by default on x86, other architectures are left with their
previous defaults.

Thanks, Roger.

Roger Pau Monne (8):
  x86/pdx: simplify calculation of domain struct allocation boundary
  kconfig: turn PDX compression into a choice
  pdx: provide a unified set of unit functions
  pdx: introduce command line compression toggle
  pdx: allow per-arch optimization of PDX conversion helpers
  test/pdx: add PDX compression unit tests
  pdx: move some helpers in preparation for new compression
  pdx: introduce a new compression algorithm based on region offsets

 CHANGELOG.md                           |   3 +
 docs/misc/xen-command-line.pandoc      |   9 +
 tools/tests/Makefile                   |   1 +
 tools/tests/pdx/.gitignore             |   3 +
 tools/tests/pdx/Makefile               |  49 ++++
 tools/tests/pdx/harness.h              |  99 +++++++
 tools/tests/pdx/test-pdx.c             | 224 +++++++++++++++
 xen/arch/arm/include/asm/Makefile      |   1 +
 xen/arch/arm/setup.c                   |  34 +--
 xen/arch/ppc/include/asm/Makefile      |   1 +
 xen/arch/riscv/include/asm/Makefile    |   1 +
 xen/arch/x86/domain.c                  |  40 +--
 xen/arch/x86/include/asm/cpufeatures.h |   1 +
 xen/arch/x86/include/asm/pdx.h         |  75 +++++
 xen/arch/x86/srat.c                    |  30 +-
 xen/common/Kconfig                     |  37 ++-
 xen/common/pdx.c                       | 379 ++++++++++++++++++++++---
 xen/include/asm-generic/pdx.h          |  24 ++
 xen/include/xen/pdx.h                  | 201 +++++++++----
 19 files changed, 1056 insertions(+), 156 deletions(-)
 create mode 100644 tools/tests/pdx/.gitignore
 create mode 100644 tools/tests/pdx/Makefile
 create mode 100644 tools/tests/pdx/harness.h
 create mode 100644 tools/tests/pdx/test-pdx.c
 create mode 100644 xen/arch/x86/include/asm/pdx.h
 create mode 100644 xen/include/asm-generic/pdx.h

-- 
2.49.0



^ permalink raw reply	[flat|nested] 55+ messages in thread

end of thread, other threads:[~2025-07-03 18:05 UTC | newest]

Thread overview: 55+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-06-20 11:11 [PATCH v2 0/8] pdx: introduce a new compression algorithm Roger Pau Monne
2025-06-20 11:11 ` [PATCH v2 1/8] x86/pdx: simplify calculation of domain struct allocation boundary Roger Pau Monne
2025-06-24 13:05   ` Jan Beulich
2025-06-25 15:14     ` Roger Pau Monné
2025-06-20 11:11 ` [PATCH v2 2/8] kconfig: turn PDX compression into a choice Roger Pau Monne
2025-06-24 13:13   ` Jan Beulich
2025-06-26  7:49     ` Roger Pau Monné
2025-06-26 12:33       ` Jan Beulich
2025-06-20 11:11 ` [PATCH v2 4/8] pdx: introduce command line compression toggle Roger Pau Monne
2025-06-24 13:40   ` Jan Beulich
2025-06-25 15:46     ` Roger Pau Monné
2025-06-25 16:00       ` Jan Beulich
2025-06-25 17:45         ` Roger Pau Monné
2025-06-26  6:17           ` Jan Beulich
2025-06-20 11:11 ` [PATCH v2 5/8] pdx: allow per-arch optimization of PDX conversion helpers Roger Pau Monne
2025-06-24 13:51   ` Jan Beulich
2025-06-25 15:51     ` Roger Pau Monné
2025-06-25 16:04       ` Jan Beulich
2025-06-20 11:11 ` [PATCH v2 6/8] test/pdx: add PDX compression unit tests Roger Pau Monne
2025-06-24 13:37   ` Anthony PERARD
2025-06-25 15:55     ` Roger Pau Monné
2025-06-20 11:11 ` [PATCH v2 7/8] pdx: move some helpers in preparation for new compression Roger Pau Monne
2025-06-24 13:52   ` Jan Beulich
2025-06-20 11:11 ` [PATCH v2 8/8] pdx: introduce a new compression algorithm based on region offsets Roger Pau Monne
2025-06-24 16:16   ` Jan Beulich
2025-06-25 16:24     ` Roger Pau Monné
2025-06-26  7:35       ` Jan Beulich
2025-06-27 14:51         ` Roger Pau Monné
2025-06-29 14:36           ` Jan Beulich
2025-07-01  7:26             ` Roger Pau Monné
2025-06-30  6:34   ` Jan Beulich
2025-07-01 15:49     ` Roger Pau Monné
2025-07-01 16:01       ` Jan Beulich
     [not found] ` <20250620111130.29057-4-roger.pau@citrix.com>
2025-06-24 13:32   ` [PATCH v2 3/8] pdx: provide a unified set of unit functions Jan Beulich
2025-06-25 15:32     ` Roger Pau Monné
2025-06-28  2:08 ` [PATCH v2 0/8] pdx: introduce a new compression algorithm Stefano Stabellini
2025-06-30 15:02   ` Roger Pau Monné
2025-07-01  1:50     ` Stefano Stabellini
2025-07-01  3:33       ` Stefano Stabellini
2025-07-01  6:05       ` Jan Beulich
2025-07-01 20:46         ` Stefano Stabellini
2025-07-02  6:08           ` Jan Beulich
2025-07-02  6:32           ` Jan Beulich
2025-07-02  6:53             ` Roger Pau Monné
2025-07-02  7:00           ` Roger Pau Monné
2025-07-02  7:52             ` Orzel, Michal
2025-07-02  8:26               ` Roger Pau Monné
2025-07-02  8:49                 ` Julien Grall
2025-07-02  8:54                 ` Orzel, Michal
2025-07-02  9:45                   ` Roger Pau Monné
2025-07-03  0:22                     ` Stefano Stabellini
2025-07-03  0:19                   ` Stefano Stabellini
2025-07-02  8:45               ` Julien Grall
2025-07-03  8:42   ` Roger Pau Monné
2025-07-03 18:04     ` Stefano Stabellini

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.