From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: "Oleksii Kurochko" <oleksii.kurochko@gmail.com>,
"Stefano Stabellini" <sstabellini@kernel.org>,
"Julien Grall" <julien@xen.org>,
"Bertrand Marquis" <bertrand.marquis@arm.com>,
"Michal Orzel" <michal.orzel@amd.com>,
"Volodymyr Babchuk" <Volodymyr_Babchuk@epam.com>,
"Andrew Cooper" <andrew.cooper3@citrix.com>,
"Anthony PERARD" <anthony.perard@vates.tech>,
"Jan Beulich" <jbeulich@suse.com>,
"Roger Pau Monné" <roger.pau@citrix.com>,
"Timothy Pearson" <tpearson@raptorengineering.com>,
"Alistair Francis" <alistair.francis@wdc.com>,
"Bob Eshleman" <bobbyeshleman@gmail.com>,
"Connor Davis" <connojdavis@gmail.com>
Subject: [PATCH v4 0/4] Move alloc/free_vcpu_struct() to common code
Date: Tue, 23 Dec 2025 18:01:54 +0100 [thread overview]
Message-ID: <cover.1766504313.git.oleksii.kurochko@gmail.com> (raw)
As it was suggested in [1] it would be better to allocate one page for struct
vcpu for all arch-es. To do that it is needed to align Arm code to allocate
one page (as there is a case(when CONFIG_NEW_VGIC=y) when Arm64 will require
to allocate two pages). As a result, the following patches for Arm have been
introduced:
- [PATCH v2 1/4] xen/arm: optimize the size of struct vcpu
- [PATCH v2 2/4] xen/arm: drop MAX_PAGES_PER_VCPU
This patches are dependency for:
- [PATCH v2 3/4] xen: move alloc/free_vcpu_struct() to common code
Also, as a part of this patch series another clean up is done which makes
{alloc,free}_domain_struct() static.
[1] https://lore.kernel.org/xen-devel/f8a9be3a-a0c6-496a-806f-40760dca5aee@suse.com/T/#m275dfcbdccef0461fa9a8acef072403f18091768
CI: https://gitlab.com/xen-project/people/olkur/xen/-/pipelines/2230207975
---
Changes in v4:
- Address the comments recieved for v3.
---
Changes in v3:
- Come up with a different way to optimize struct vcpu for Arm.
- Merge patches "[PATCH v2 2/4] xen/arm: drop MAX_PAGES_PER_VCPU]" and
"[PATCH v2 4/4] xen/common: make {alloc,free}_domain_struct() static"
together.
- Clean up vcpu_vgic_free() a little bit.
---
Changes in v2:
- Introduce new patches for Arm:
- [PATCH v2 1/4] xen/arm: optimize the size of struct vcpu
- [PATCH v2 2/4] xen/arm: drop MAX_PAGES_PER_VCPU
to allocate one page for struct vcpu in common code for all the arch-es.
- Introduce patch to clean up xen/domain.h a little bit:
- [PATCH v2 4/4] xen/common: make {alloc,free}_domain_struct() static
- Address the comments from v1:
- [PATCH v2 3/4] xen: move alloc/free_vcpu_struct() to common code
---
Oleksii Kurochko (4):
xen/arm: vcpu_vgic_free() updates
xen/arm: optimize the size of struct vcpu
xen: move alloc/free_vcpu_struct() to common code
xen/common: make {alloc,free}_domain_struct() static
xen/arch/arm/domain.c | 32 ---------------
xen/arch/arm/include/asm/new_vgic.h | 2 +-
xen/arch/arm/include/asm/vgic.h | 2 +-
xen/arch/arm/vgic.c | 5 +--
xen/arch/arm/vgic/vgic-init.c | 9 ++++-
xen/arch/ppc/stubs.c | 10 -----
xen/arch/riscv/stubs.c | 10 -----
xen/arch/x86/domain.c | 24 -----------
xen/arch/x86/include/asm/domain.h | 12 ++++++
xen/common/domain.c | 62 +++++++++++++++++++----------
xen/include/xen/domain.h | 8 ----
11 files changed, 64 insertions(+), 112 deletions(-)
--
2.52.0
next reply other threads:[~2025-12-23 17:02 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-12-23 17:01 Oleksii Kurochko [this message]
2025-12-23 17:01 ` [PATCH v4 1/4] xen/arm: vcpu_vgic_free() updates Oleksii Kurochko
2025-12-29 10:50 ` Orzel, Michal
2025-12-30 15:52 ` Oleksii Kurochko
2025-12-23 17:01 ` [PATCH v4 2/4] xen/arm: optimize the size of struct vcpu Oleksii Kurochko
2025-12-29 11:08 ` Orzel, Michal
2025-12-29 11:10 ` Orzel, Michal
2025-12-29 11:27 ` Andrew Cooper
2025-12-31 8:27 ` Oleksii Kurochko
2026-01-05 14:44 ` Jan Beulich
2025-12-30 16:04 ` Oleksii Kurochko
2025-12-23 17:01 ` [PATCH v4 3/4] xen: move alloc/free_vcpu_struct() to common code Oleksii Kurochko
2025-12-23 17:01 ` [PATCH v4 4/4] xen/common: make {alloc,free}_domain_struct() static Oleksii Kurochko
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.1766504313.git.oleksii.kurochko@gmail.com \
--to=oleksii.kurochko@gmail.com \
--cc=Volodymyr_Babchuk@epam.com \
--cc=alistair.francis@wdc.com \
--cc=andrew.cooper3@citrix.com \
--cc=anthony.perard@vates.tech \
--cc=bertrand.marquis@arm.com \
--cc=bobbyeshleman@gmail.com \
--cc=connojdavis@gmail.com \
--cc=jbeulich@suse.com \
--cc=julien@xen.org \
--cc=michal.orzel@amd.com \
--cc=roger.pau@citrix.com \
--cc=sstabellini@kernel.org \
--cc=tpearson@raptorengineering.com \
--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.