|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [PATCH v4 2/4] xen/arm: Handle cases when hardware_domain is NULL
Among the common and arm codebase there are few cases where
the hardware_domain variable is checked to see if the current
domain is equal to the hardware_domain, change this cases to
use is_hardware_domain() function instead.
Signed-off-by: Luca Fancellu <luca.fancellu@xxxxxxx>
---
v4 changes:
- removed unneeded check for domain NULL from is_hardware_domain
introduced in v3
v3 changes:
- removed unneeded parenthesis for macro is_domain_direct_mapped
- is_hardware_domain() checks for the passed domain and if it is
NULL, it returns false.
- reverted back checks in the function late_hwdom_init
---
xen/arch/arm/irq.c | 2 +-
xen/drivers/passthrough/arm/ipmmu-vmsa.c | 2 +-
xen/drivers/passthrough/arm/smmu-v3.c | 2 +-
xen/drivers/passthrough/arm/smmu.c | 2 +-
xen/include/asm-arm/domain.h | 2 +-
5 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/xen/arch/arm/irq.c b/xen/arch/arm/irq.c
index b71b099e6f..b761d90c40 100644
--- a/xen/arch/arm/irq.c
+++ b/xen/arch/arm/irq.c
@@ -412,7 +412,7 @@ bool is_assignable_irq(unsigned int irq)
*/
bool irq_type_set_by_domain(const struct domain *d)
{
- return (d == hardware_domain);
+ return is_hardware_domain(d);
}
/*
diff --git a/xen/drivers/passthrough/arm/ipmmu-vmsa.c
b/xen/drivers/passthrough/arm/ipmmu-vmsa.c
index aef358d880..8b8e3a00ba 100644
--- a/xen/drivers/passthrough/arm/ipmmu-vmsa.c
+++ b/xen/drivers/passthrough/arm/ipmmu-vmsa.c
@@ -1168,7 +1168,7 @@ static int ipmmu_reassign_device(struct domain *s, struct
domain *t,
int ret = 0;
/* Don't allow remapping on other domain than hwdom */
- if ( t && t != hardware_domain )
+ if ( t && !is_hardware_domain(t) )
return -EPERM;
if ( t == s )
diff --git a/xen/drivers/passthrough/arm/smmu-v3.c
b/xen/drivers/passthrough/arm/smmu-v3.c
index 53d150cdb6..d115df7320 100644
--- a/xen/drivers/passthrough/arm/smmu-v3.c
+++ b/xen/drivers/passthrough/arm/smmu-v3.c
@@ -3366,7 +3366,7 @@ static int arm_smmu_reassign_dev(struct domain *s, struct
domain *t,
int ret = 0;
/* Don't allow remapping on other domain than hwdom */
- if (t && t != hardware_domain)
+ if ( t && !is_hardware_domain(t) )
return -EPERM;
if (t == s)
diff --git a/xen/drivers/passthrough/arm/smmu.c
b/xen/drivers/passthrough/arm/smmu.c
index 3e8aa37866..932fdfd6dd 100644
--- a/xen/drivers/passthrough/arm/smmu.c
+++ b/xen/drivers/passthrough/arm/smmu.c
@@ -2670,7 +2670,7 @@ static int arm_smmu_reassign_dev(struct domain *s, struct
domain *t,
int ret = 0;
/* Don't allow remapping on other domain than hwdom */
- if (t && t != hardware_domain)
+ if ( t && !is_hardware_domain(t) )
return -EPERM;
if (t == s)
diff --git a/xen/include/asm-arm/domain.h b/xen/include/asm-arm/domain.h
index 1da90f207d..0a74df9931 100644
--- a/xen/include/asm-arm/domain.h
+++ b/xen/include/asm-arm/domain.h
@@ -30,7 +30,7 @@ enum domain_type {
#endif
/* The hardware domain has always its memory direct mapped. */
-#define is_domain_direct_mapped(d) ((d) == hardware_domain)
+#define is_domain_direct_mapped(d) is_hardware_domain(d)
struct vtimer {
struct vcpu *v;
--
2.17.1
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |