[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [PATCH v3 2/5] xen/arm: dom0less: Add trap-unmapped-accesses
From: "Edgar E. Iglesias" <edgar.iglesias@xxxxxxx> Add the trap-unmapped-accesses per-domain fdt property. Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xxxxxxx> --- docs/misc/arm/device-tree/booting.txt | 10 ++++++++++ xen/arch/arm/dom0less-build.c | 9 ++++++++- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/docs/misc/arm/device-tree/booting.txt b/docs/misc/arm/device-tree/booting.txt index 59fa96a82e..9add6440de 100644 --- a/docs/misc/arm/device-tree/booting.txt +++ b/docs/misc/arm/device-tree/booting.txt @@ -225,6 +225,16 @@ with the following properties: option is provided with a non zero value, but the platform doesn't support SVE. +- trap-unmapped-accesses + + Optional. An integer that configures handling of accesses to unmapped + address ranges. + If set to 0, guest accesses will read all bits as ones, e.g 0xFFFFFFFF + for a 32bit access and writes will be ignored. + If set to 1, guest accesses will trap. + + This option is only implemented for ARM where the default is 1. + - xen,enhanced A string property. Possible property values are: diff --git a/xen/arch/arm/dom0less-build.c b/xen/arch/arm/dom0less-build.c index a4e0a33632..69324aa597 100644 --- a/xen/arch/arm/dom0less-build.c +++ b/xen/arch/arm/dom0less-build.c @@ -344,8 +344,15 @@ void __init arch_create_domUs(struct dt_device_node *node, #endif } - /* Trap accesses to unmapped areas. */ + /* Trap unmapped accesses by default. */ d_cfg->flags |= XEN_DOMCTL_CDF_trap_unmapped_accesses; + if ( dt_property_read_u32(node, "trap-unmapped-accesses", &val) ) + { + if ( val > 1 ) + panic("trap-unmapped-accesses: supported values are 0 or 1"); + if ( !val ) + d_cfg->flags &= ~XEN_DOMCTL_CDF_trap_unmapped_accesses; + } } int __init init_intc_phandle(struct kernel_info *kinfo, const char *name, -- 2.43.0
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |