[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH RFCv2 09/15] xen/arm32: mm: Re-implement setup_xenheap_mappings() using map_pages_to_xen()
Hi Stefano, On 12/05/2021 23:07, Stefano Stabellini wrote: On Sun, 25 Apr 2021, Julien Grall wrote:From: Julien Grall <jgrall@xxxxxxxxxx> Now that map_pages_to_xen() has been extended to support 2MB mappings, we can replace the create_mappings() call by map_pages_to_xen() call. Signed-off-by: Julien Grall <jgrall@xxxxxxxxxx> --- Changes in v2: - New patch TODOs: - add support for contiguous mapping --- xen/arch/arm/mm.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c index 5c17cafff847..19ecf73542ce 100644 --- a/xen/arch/arm/mm.c +++ b/xen/arch/arm/mm.c @@ -806,7 +806,12 @@ void mmu_init_secondary_cpu(void) void __init setup_xenheap_mappings(unsigned long base_mfn, unsigned long nr_mfns) { - create_mappings(xen_second, XENHEAP_VIRT_START, base_mfn, nr_mfns, MB(32)); + int rc; + + rc = map_pages_to_xen(XENHEAP_VIRT_START, base_mfn, nr_mfns, + PAGE_HYPERVISOR_RW | _PAGE_BLOCK); + if ( rc ) + panic("Unable to setup the xenheap mappings.\n");/* Record where the xenheap is, for translation routines. */xenheap_virt_end = XENHEAP_VIRT_START + nr_mfns * PAGE_SIZE;I get the following build error: mm.c: In function ‘setup_xenheap_mappings’: mm.c:811:47: error: incompatible type for argument 2 of ‘map_pages_to_xen’ rc = map_pages_to_xen(XENHEAP_VIRT_START, base_mfn, nr_mfns, ^~~~~~~~ In file included from mm.c:24:0: /local/repos/xen-upstream/xen/include/xen/mm.h:89:5: note: expected ‘mfn_t {aka struct <anonymous>}’ but argument is of type ‘long unsigned int’ int map_pages_to_xen( ^~~~~~~~~~~~~~~~ I think base_mfn needs to be converted to mfn_t You are right. I think my scripts are build testing arm32 with debug=n. I will fix it and respin. Cheers, -- Julien Grall
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |