On 13/09/16 16:06, Sergej Proskurin wrote:
+ }
+
+out:
+ p2m_read_unlock(hp2m);
+
+ return true;
+}
+
static inline void altp2m_reset(struct p2m_domain *p2m)
{
p2m_write_lock(p2m);
diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c
index 0bf1653..a4c923c 100644
--- a/xen/arch/arm/traps.c
+++ b/xen/arch/arm/traps.c
@@ -48,6 +48,8 @@
#include <asm/vgic.h>
#include <asm/cpuerrata.h>
+#include <asm/altp2m.h>
+
/* The base of the stack must always be double-word aligned, which
means
* that both the kernel half of struct cpu_user_regs (which is
pushed in
* entry.S) and struct cpu_info (which lives at the bottom of a Xen
@@ -2397,6 +2399,24 @@ static inline bool hpfar_is_valid(bool s1ptw,
uint8_t fsc)
return s1ptw || (fsc == FSC_FLT_TRANS &&
!check_workaround_834220());
}
+static bool_t try_handle_altp2m(struct vcpu *v,
+ paddr_t gpa,
+ struct npfec npfec)
I am not convinced about the usefulness of this function.
Your call. However, I believe it is better to have the altp2m handling
routine at one place.
Then, why it is not done in altp2m_lazy_copy?
Regards,
--
Julien Grall
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel