All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bernhard Kaindl <bernhard.kaindl@citrix.com>
To: xen-devel@lists.xenproject.org
Cc: "Bernhard Kaindl" <bernhard.kaindl@citrix.com>,
	"Andrew Cooper" <andrew.cooper3@citrix.com>,
	"Anthony PERARD" <anthony.perard@vates.tech>,
	"Michal Orzel" <michal.orzel@amd.com>,
	"Jan Beulich" <jbeulich@suse.com>,
	"Julien Grall" <julien@xen.org>,
	"Roger Pau Monné" <roger.pau@citrix.com>,
	"Stefano Stabellini" <sstabellini@kernel.org>,
	"Juergen Gross" <jgross@suse.com>,
	"Daniel P. Smith" <dpsmith@apertussolutions.com>
Subject: [PATCH 0/5] xen: Introduce NUMA-aware claim sets for domains
Date: Tue,  7 Apr 2026 10:54:25 +0100	[thread overview]
Message-ID: <cover.1775505670.git.bernhard.kaindl@citrix.com> (raw)

Hi all,

This series extends Xen's memory claim handling to support claim sets
spanning multiple NUMA nodes.

Earlier review raised the concern that claims would need to evolve from a
single claim into a multi-node model. Roger Pau Monné described the core
requirement well:

  >  Ideally, we would need to introduce a new hypercall that allows
  >  making claims from multiple nodes in a single locked region,
  >  as to ensure success or failure in an atomic way.

      -- Roger Pau Monné

This series implements that model.

A claim set can contain multiple node-specific claims and an optional
global claim for memory that may come from any NUMA node. The new domctl
installs the full claim set atomically, and the allocator is updated so
that claim checks and claim consumption follow the new semantics.

The series has been reworked substantially in response to earlier review.
Because of that, it is likely best reviewed as a fresh series rather than
incrementally.

Patch summary:

1. xen/mm: Refactor retiring claims in preparation for use in functional changes
2. xen/mm: Claims check: Allow free pages to cover a shortfall of claims
3. xen/mm: Optimise getting free page counts per NUMA node
4. xen/mm: Split d->outstanding_pages to global_claims & node_claims
5. xen/mm: Introduce Claim Sets for multiple NUMA nodes

The design document submitted ahead of this series may also help with
review. It explains the background, design rationale, and implementation
details.

Rendered version:
https://bernhardk-xen-review.readthedocs.io/node-claims-v5/designs/claims/

Posted version:
https://lists.xenproject.org/archives/html/xen-devel/2026-04/msg00108.html

Many thanks to everyone who contributed to the earlier work and review,
especially Alejandro Vallejo, Jan Beulich, Andrew Cooper, Roger Pau
Monné, Marcus Granado, and Edwin Török.

Thanks for your review.

Bernhard Kaindl

Bernhard Kaindl (5):
  xen/mm: Refactor retiring claims in preparation for functional changes
  xen/mm: alloc pages: Allow free pages to cover a shortfall of claims
  xen/mm: Optimise getting free page counts per NUMA node
  xen/mm: Split d->outstanding_pages to global_claims & node_claims
  xen/mm: Introduce Claim Sets for multiple NUMA nodes

 tools/include/xenctrl.h             |   4 +
 tools/libs/ctrl/xc_domain.c         |  38 +++
 xen/common/domctl.c                 |  56 +++-
 xen/common/page_alloc.c             | 379 ++++++++++++++++++++++++++--
 xen/include/public/domctl.h         |  32 +++
 xen/include/public/memory.h         |   9 +
 xen/include/xen/mm.h                |   3 +
 xen/include/xen/sched.h             |  13 +-
 xen/xsm/flask/hooks.c               |   1 +
 xen/xsm/flask/policy/access_vectors |   1 +
 10 files changed, 509 insertions(+), 27 deletions(-)

-- 
2.39.5



             reply	other threads:[~2026-04-07  9:57 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-04-07  9:54 Bernhard Kaindl [this message]
2026-04-07  9:54 ` [PATCH 1/5] xen/mm: Refactor retiring claims in preparation for functional changes Bernhard Kaindl
2026-04-07  9:54 ` [PATCH 2/5] xen/mm: alloc pages: Allow free pages to cover a shortfall of claims Bernhard Kaindl
2026-04-07  9:54 ` [PATCH 3/5] xen/mm: Optimise getting free page counts per NUMA node Bernhard Kaindl
2026-04-07  9:54 ` [PATCH 4/5] xen/mm: Split d->outstanding_pages to global_claims & node_claims Bernhard Kaindl
2026-04-07  9:54 ` [PATCH 5/5] xen/mm: Introduce Claim Sets for multiple NUMA nodes Bernhard Kaindl

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cover.1775505670.git.bernhard.kaindl@citrix.com \
    --to=bernhard.kaindl@citrix.com \
    --cc=andrew.cooper3@citrix.com \
    --cc=anthony.perard@vates.tech \
    --cc=dpsmith@apertussolutions.com \
    --cc=jbeulich@suse.com \
    --cc=jgross@suse.com \
    --cc=julien@xen.org \
    --cc=michal.orzel@amd.com \
    --cc=roger.pau@citrix.com \
    --cc=sstabellini@kernel.org \
    --cc=xen-devel@lists.xenproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.