|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v1 6/6] xen/riscv: enable DOMAIN_BUILD_HELPERS
On 3/19/26 8:58 AM, Jan Beulich wrote: On 17.03.2026 13:49, Oleksii Kurochko wrote:On 2/13/26 2:11 PM, Jan Beulich wrote: You mentioned above that: "... And with (iirc) RV32 permitting more than 4Gb (via PPN being 22 bits wide) ..." I wanted to clarify why you use PPN here in the context of GUEST_RAM0_BASE definition. (and maybe I just misinterpreted incorrectly your original message) GUEST_RAM0_BASE is the address at which the guest believes RAM starts in its physical address space, i.e. it is a GPA, which is then translated to an MPA. From the MMU's perspective, the GPA looks like: VPN[1] | VPN[0] | page_offset (in Sv32x4 mode) In Sv32x4, the GPA is 34 bits wide (or 22 bits wide in terms of GFNs), and the MPA is also 32 bits wide (or 22 bits wide in terms of PPN). The distinction is not significant in Sv32x4, since PPN width equals VPN width, but in other modes VPN < PPN (in terms of bit width). So when we want to run a guest in Sv39x4 mode and want to give the guest the full Sv39x4 address space, setting GUEST_RAM0_SIZE to the maximum possible value for Sv39x4, shouldn't we look at the VPN width rather than the PPN width? In other words, GUEST_RAM0_SIZE should be (2^41 - 1) rather than (2^56 - 1) for Sv39x4. ~ Oleksii
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |