All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 0/4] Move alloc/free_vcpu_struct() to common code
@ 2025-12-23 17:01 Oleksii Kurochko
  2025-12-23 17:01 ` [PATCH v4 1/4] xen/arm: vcpu_vgic_free() updates Oleksii Kurochko
                   ` (3 more replies)
  0 siblings, 4 replies; 13+ messages in thread
From: Oleksii Kurochko @ 2025-12-23 17:01 UTC (permalink / raw)
  To: xen-devel
  Cc: Oleksii Kurochko, Stefano Stabellini, Julien Grall,
	Bertrand Marquis, Michal Orzel, Volodymyr Babchuk, Andrew Cooper,
	Anthony PERARD, Jan Beulich, Roger Pau Monné,
	Timothy Pearson, Alistair Francis, Bob Eshleman, Connor Davis

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



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

end of thread, other threads:[~2026-01-05 14:44 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-12-23 17:01 [PATCH v4 0/4] Move alloc/free_vcpu_struct() to common code Oleksii Kurochko
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

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.