mbox series

[V1,00/13,for,4.17-post] Follow-up static shared memory

Message ID 20221115025235.1378931-1-Penny.Zheng@arm.com (mailing list archive)
Headers show
Series Follow-up static shared memory | expand

Message

Penny Zheng Nov. 15, 2022, 2:52 a.m. UTC
There are some unsolving issues on current 4.17 static shared memory
feature[1], including:
- In order to avoid keeping growing 'membank', having the shared memory
regions in a separate array is preferred. And shared memory region should
have its own structure which would contain a pointer/index to the 'membank'.
- Missing implementation on having the host address optional in
"xen,shared-mem" property
- Missing "xen,offset" feature, which is introduced in Linux DOC[2]

After fixing all above issues, we'd like to make 'UNSUPPORTED' static
shared memory feature 'SUPPORTED'.

[1] https://lore.kernel.org/all/20220908135513.1800511-1-Penny.Zheng@arm.com/
[2] https://www.kernel.org/doc/Documentation/devicetree/bindings/reserved-memory/xen%2Cshared-memory.txt

Penny Zheng (13):
  xen/arm: re-arrange the static shared memory region
  xen/arm: switch to use shm_membank as function parameter
  xen/arm: introduce allocate_domheap_memory and guest_physmap_memory
  xen/arm: expand shm_membank for unprovided host address
  xen/arm: allocate shared memory from heap when host address not
    provided
  xen/arm: assign shared memory to owner when host address not provided
  xen/arm: map shared memory to borrower when host address not provided
  xen/arm: use paddr_assigned to indicate whether host address is
    provided
  xen/arm: refine docs about static shared memory
  xen/arm: introduce "xen,offset" feature
  xen/arm: implement "xen,offset" feature when host address provided
  xen/arm: implement "xen,offset" feature when host address not provided
  xen: make static shared memory supported in SUPPORT.md

 SUPPORT.md                            |   2 +-
 docs/misc/arm/device-tree/booting.txt |  67 ++-
 xen/arch/arm/Kconfig                  |   2 +-
 xen/arch/arm/bootfdt.c                | 137 ++++--
 xen/arch/arm/domain_build.c           | 614 +++++++++++++++++++++-----
 xen/arch/arm/include/asm/kernel.h     |   2 +-
 xen/arch/arm/include/asm/setup.h      |  31 +-
 7 files changed, 685 insertions(+), 170 deletions(-)