[PATCH v4 0/9] Remaining patches for dynamic node programming using overlay dtbo

Henry Wang posted 9 patches 6 months ago
Patches applied successfully (tree, apply log)
git fetch https://gitlab.com/xen-project/patchew/xen tags/patchew/20240523074040.1611264-1-xin.wang2@amd.com
There is a newer version of this series
docs/man/xl.cfg.5.pod.in              |  14 +
docs/misc/arm/device-tree/booting.txt |  16 +
docs/misc/arm/overlay.txt             |  99 ++++++
tools/golang/xenlight/helpers.gen.go  |   2 +
tools/golang/xenlight/types.gen.go    |   1 +
tools/include/libxl.h                 |  10 +
tools/include/xenctrl.h               |   3 +
tools/libs/ctrl/xc_dt_overlay.c       |  31 ++
tools/libs/light/libxl_arm.c          |   4 +-
tools/libs/light/libxl_dt_overlay.c   |  28 ++
tools/libs/light/libxl_types.idl      |   1 +
tools/xl/xl_cmdtable.c                |   4 +-
tools/xl/xl_parse.c                   |   3 +
tools/xl/xl_vmcontrol.c               |  48 ++-
xen/arch/arm/dom0less-build.c         |  11 +-
xen/arch/arm/domctl.c                 |   3 +
xen/arch/arm/gic-vgic.c               |  36 ++-
xen/arch/arm/gic.c                    |  17 +-
xen/arch/arm/vgic/vgic.c              |  31 +-
xen/common/dt-overlay.c               | 438 ++++++++++++++++++++------
xen/include/public/domctl.h           |  15 +
xen/include/public/sysctl.h           |  11 +-
xen/include/xen/dt-overlay.h          |   7 +
23 files changed, 678 insertions(+), 155 deletions(-)
create mode 100644 docs/misc/arm/overlay.txt
[PATCH v4 0/9] Remaining patches for dynamic node programming using overlay dtbo
Posted by Henry Wang 6 months ago
Hi all,

This is the remaining series for the full functional "dynamic node
programming using overlay dtbo" feature. The first part [1] has
already been merged.

Quoting from the original series, the first part has already made
Xen aware of new device tree node which means updating the dt_host
with overlay node information, and in this series, the goal is to
map IRQ and IOMMU during runtime, where we will do the actual IOMMU
and IRQ mapping and unmapping to a running domain. Also, documentation
of the "dynamic node programming using overlay dtbo" feature is added.

During the discussion in v3, I was recommended to split the overlay
devices attach/detach to/from running domains to separated patches [3].
But I decided to only expose the xl user interfaces together to the
users after device attach/detach is fully functional, so I didn't
split the toolstack patch (#8).

Patch 1 is a fix of the existing code which is noticed during my local
tests, details please see the commit message.

Gitlab CI for this series can be found in [2].

[1] https://lore.kernel.org/xen-devel/20230906011631.30310-1-vikram.garhwal@amd.com/
[2] https://gitlab.com/xen-project/people/henryw/xen/-/pipelines/1301720278
[3] https://lore.kernel.org/xen-devel/e743d3d2-5884-4e55-8627-85985ba339f9@amd.com/

Henry Wang (7):
  tools/xl: Correct the help information and exit code of the dt-overlay
    command
  xen/arm, doc: Add a DT property to specify IOMMU for Dom0less domUs
  tools/arm: Introduce the "nr_spis" xl config entry
  xen/arm/gic: Allow adding interrupt to running VMs
  xen/arm: Add XEN_DOMCTL_dt_overlay and device attachment to domains
  xen/arm: Support device detachment from domains
  tools: Introduce the "xl dt-overlay {attach,detach}" commands

Vikram Garhwal (2):
  xen/arm/gic: Allow removing interrupt to running VMs
  docs: Add device tree overlay documentation

 docs/man/xl.cfg.5.pod.in              |  14 +
 docs/misc/arm/device-tree/booting.txt |  16 +
 docs/misc/arm/overlay.txt             |  99 ++++++
 tools/golang/xenlight/helpers.gen.go  |   2 +
 tools/golang/xenlight/types.gen.go    |   1 +
 tools/include/libxl.h                 |  10 +
 tools/include/xenctrl.h               |   3 +
 tools/libs/ctrl/xc_dt_overlay.c       |  31 ++
 tools/libs/light/libxl_arm.c          |   4 +-
 tools/libs/light/libxl_dt_overlay.c   |  28 ++
 tools/libs/light/libxl_types.idl      |   1 +
 tools/xl/xl_cmdtable.c                |   4 +-
 tools/xl/xl_parse.c                   |   3 +
 tools/xl/xl_vmcontrol.c               |  48 ++-
 xen/arch/arm/dom0less-build.c         |  11 +-
 xen/arch/arm/domctl.c                 |   3 +
 xen/arch/arm/gic-vgic.c               |  36 ++-
 xen/arch/arm/gic.c                    |  17 +-
 xen/arch/arm/vgic/vgic.c              |  31 +-
 xen/common/dt-overlay.c               | 438 ++++++++++++++++++++------
 xen/include/public/domctl.h           |  15 +
 xen/include/public/sysctl.h           |  11 +-
 xen/include/xen/dt-overlay.h          |   7 +
 23 files changed, 678 insertions(+), 155 deletions(-)
 create mode 100644 docs/misc/arm/overlay.txt

-- 
2.34.1
Re: [PATCH v4 0/9] Remaining patches for dynamic node programming using overlay dtbo
Posted by Julien Grall 6 months ago

On 23/05/2024 08:40, Henry Wang wrote:
> Hi all,

Hi Henry,

> This is the remaining series for the full functional "dynamic node
> programming using overlay dtbo" feature. The first part [1] has
> already been merged.
> 
> Quoting from the original series, the first part has already made
> Xen aware of new device tree node which means updating the dt_host
> with overlay node information, and in this series, the goal is to
> map IRQ and IOMMU during runtime, where we will do the actual IOMMU
> and IRQ mapping and unmapping to a running domain. Also, documentation
> of the "dynamic node programming using overlay dtbo" feature is added.
> 
> During the discussion in v3, I was recommended to split the overlay
> devices attach/detach to/from running domains to separated patches [3].
> But I decided to only expose the xl user interfaces together to the
> users after device attach/detach is fully functional, so I didn't
> split the toolstack patch (#8).

So I was asking to split so we can get some of the work merged for 4.19. 
Can you clarify, whether the intention is to merge only patches #1-5?

Cheers,

-- 
Julien Grall