All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v5 0/4] Introduce static heap
@ 2022-09-08  4:25 Henry Wang
  2022-09-08  4:25 ` [PATCH v5 1/4] xen/arm: bootfdt: Make process_chosen_node() return int Henry Wang
                   ` (3 more replies)
  0 siblings, 4 replies; 8+ messages in thread
From: Henry Wang @ 2022-09-08  4:25 UTC (permalink / raw)
  To: xen-devel
  Cc: Henry Wang, Stefano Stabellini, Julien Grall, Bertrand Marquis,
	Wei Chen, Volodymyr Babchuk, Andrew Cooper, George Dunlap,
	Jan Beulich, Wei Liu

The static heap, or statically configured heap, refers to parts
of RAM reserved in the beginning for heap. Like the static memory
allocation, such static heap regions are reserved by configuration
in the device tree using physical address ranges.

This feature is useful to run Xen on Arm MPU systems, where only a
finite number of memory protection regions are available. The limited
number of protection regions places requirement on planning the use
of MPU protection regions and one or more MPU protection regions needs
to be reserved only for heap.

The first patch enhances the error handling in processing the dts
chosen node. The second patch introduces the static heap and the
device tree parsing code. The third patch renames xenheap_* to
directmap_* for better readablity. The fourth patch adds the
implementation of the static heap pages handling in boot and heap
allocator for Arm.

Changes from v4 to v5:
- Use #address-cells and #size-cells for static heap, do not introduce
  new address/size cells. Update the dt-binding accordingly.
- Correct a typo in code comments.
- Drop Stefano's acked-by in patch #2 as it is not valid.
- Mention the function and code comment rename in commit mesg in patch #3.

Henry Wang (4):
  xen/arm: bootfdt: Make process_chosen_node() return int
  docs, xen/arm: Introduce static heap memory
  xen/arm: mm: Rename xenheap_* variable to directmap_*
  xen/arm: Handle static heap pages in boot and heap allocator

 SUPPORT.md                            |   7 ++
 docs/misc/arm/device-tree/booting.txt |  52 +++++++++
 xen/arch/arm/bootfdt.c                |  53 ++++++---
 xen/arch/arm/domain_build.c           |   8 +-
 xen/arch/arm/include/asm/config.h     |   2 +-
 xen/arch/arm/include/asm/mm.h         |  31 ++---
 xen/arch/arm/include/asm/setup.h      |  23 +++-
 xen/arch/arm/mm.c                     |  50 +++++----
 xen/arch/arm/setup.c                  | 156 ++++++++++++++++++++------
 9 files changed, 293 insertions(+), 89 deletions(-)

-- 
2.17.1



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

end of thread, other threads:[~2022-09-08 10:18 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-09-08  4:25 [PATCH v5 0/4] Introduce static heap Henry Wang
2022-09-08  4:25 ` [PATCH v5 1/4] xen/arm: bootfdt: Make process_chosen_node() return int Henry Wang
2022-09-08  4:25 ` [PATCH v5 2/4] docs, xen/arm: Introduce static heap memory Henry Wang
2022-09-08  7:54   ` Michal Orzel
2022-09-08  9:08     ` Henry Wang
2022-09-08 10:18   ` Julien Grall
2022-09-08  4:25 ` [PATCH v5 3/4] xen/arm: mm: Rename xenheap_* variable to directmap_* Henry Wang
2022-09-08  4:25 ` [PATCH v5 4/4] xen/arm: Handle static heap pages in boot and heap allocator Henry Wang

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.