[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [XEN-devel] arm64: fix incorrect pa_range_info table to support 42 bit PA systems.



Hello Feng,

On 13/05/17 01:26, Feng Kan wrote:
The pa_range_info table contain incorrect root_order and t0sz which
prevent 42 bit PA systems from booting dom0.

As I mentioned in the previous thread [1], this is not a bug. What you configure below is the stage-2 page table and not the hypervisor page-table.

It is perfectly fine to expose less IPA (Intermediate Physical Address) bits than the number of PA (Physical Address) bits as long as all the address wired are below 40 bits (assumption made by the patch who added this code). Does your hardware have devices/RAM above 40 bits? If so, then you need to mention in the commit message.

This bring another question, now you will allocate 8 pages by default for both DOM0 and guests. Exposing 42 bits IPA to a guest does not sound necessary, so we would waste memory here. How are you going to address that?

Lastly, please quote the ARM ARM when you modify the generic ARM code to help the reviewer checking your code.

Cheers,

[1] https://lists.xenproject.org/archives/html/xen-devel/2017-05/msg01254.html


Signed-off-by: Feng Kan <fkan@xxxxxxx>
---
 xen/arch/arm/p2m.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/arm/p2m.c b/xen/arch/arm/p2m.c
index 34d5776..cbb8675 100644
--- a/xen/arch/arm/p2m.c
+++ b/xen/arch/arm/p2m.c
@@ -1479,7 +1479,7 @@ void __init setup_virt_paging(void)
         [0] = { 32,      32/*32*/,  0,          1 },
         [1] = { 36,      28/*28*/,  0,          1 },
         [2] = { 40,      24/*24*/,  1,          1 },
-        [3] = { 42,      24/*22*/,  1,          1 },
+        [3] = { 42,      22/*22*/,  3,          1 },
         [4] = { 44,      20/*20*/,  0,          2 },
         [5] = { 48,      16/*16*/,  0,          2 },
         [6] = { 0 }, /* Invalid */


--
Julien Grall

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.