[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v4 13/24] arm/acpi: Map all other tables for Dom0
On 2016/2/29 22:15, Stefano Stabellini wrote: > On Sun, 28 Feb 2016, Shannon Zhao wrote: >> > From: Shannon Zhao <shannon.zhao@xxxxxxxxxx> >> > >> > Map all other tables to Dom0 using 1:1 mappings. >> > >> > Signed-off-by: Shannon Zhao <shannon.zhao@xxxxxxxxxx> >> > --- >> > v4: fix commit message >> > --- >> > xen/arch/arm/domain_build.c | 26 ++++++++++++++++++++++++++ >> > 1 file changed, 26 insertions(+) >> > >> > diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c >> > index 64e48ae..6ad420c 100644 >> > --- a/xen/arch/arm/domain_build.c >> > +++ b/xen/arch/arm/domain_build.c >> > @@ -1357,6 +1357,30 @@ static int prepare_dtb(struct domain *d, struct >> > kernel_info *kinfo) >> > } >> > >> > #ifdef CONFIG_ACPI >> > +static void acpi_map_other_tables(struct domain *d) >> > +{ >> > + int i; >> > + unsigned long res; >> > + u64 addr, size; >> > + >> > + /* Map all other tables to Dom0 using 1:1 mappings. */ >> > + for( i = 0; i < acpi_gbl_root_table_list.count; i++ ) >> > + { >> > + addr = acpi_gbl_root_table_list.tables[i].address; >> > + size = acpi_gbl_root_table_list.tables[i].length; >> > + res = map_regions(d, >> > + paddr_to_pfn(addr & PAGE_MASK), >> > + DIV_ROUND_UP(size, PAGE_SIZE), >> > + paddr_to_pfn(addr & PAGE_MASK)); >> > + if ( res ) >> > + { >> > + panic(XENLOG_ERR "Unable to map 0x%"PRIx64 >> > + " - 0x%"PRIx64" in domain \n", >> > + addr & PAGE_MASK, PAGE_ALIGN(addr + size) - 1); >> > + } >> > + } >> > +} > The problem with this function is that it is mapping all other tables to > the guest, including the unmodified FADT and MADT. This way dom0 is > going to find two different versions of the FADT and MADT, isn't that > right? > We've replaced the entries of XSDT table with new value. That means XSDT points to new table. Guest will not see the old ones. Thanks, -- Shannon _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |