Hi Stefano,
On 21/05/16 15:51, Stefano Stabellini wrote:
On Sat, 21 May 2016, Stefano Stabellini wrote:
On Thu, 5 May 2016, Julien Grall wrote:
Based on ARM ARM (D4.5.3 in ARM DDI 0486A and B3.12.7 in ARM DDI 0406C.c),
a Stage 1 translation error has priority over a Stage 2 translation error.
Therefore gva_to_ipa can only fail if another vCPU is playing with the
page table.
Rather than injecting a custom fault, replay the instruction and let the
processor injecting the correct fault.
Signed-off-by: Julien Grall <julien.gr...@arm.com>
Couldn't a guest purposely cause a DoS in the hypervisor this way?
Just double-checking. I am pretty sure it cannot, because the replayed
instruction won't cause another hypervisor trap the second time around.
Before returning to the guest vCPU, Xen is handling any pending softirqs
(see leave_hypervisor_tail). It might be possible to have the vCPU
rescheduled.
So even if the replay cause another hypervisor trap, it will only impact
its timeslice.
I will update the commit message to explain why it is not possible.
Regards,
--
Julien Grall
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel