From: zhaoshenglong@huawei•com (Shannon Zhao)
To: linux-arm-kernel@lists•infradead.org
Subject: [PATCH v3 40/62] arm/acpi: Estimate memory required for acpi/efi tables
Date: Thu, 31 Dec 2015 17:16:00 +0800 [thread overview]
Message-ID: <5684F250.2060400@huawei.com> (raw)
In-Reply-To: <alpine.DEB.2.02.1511261622080.8984@kaball.uk.xensource.com>
On 2015/11/27 0:39, Stefano Stabellini wrote:
> On Tue, 17 Nov 2015, shannon.zhao at linaro.org wrote:
>> From: Shannon Zhao <shannon.zhao@linaro•org>
>>
>> Estimate the memory required for loading acpi/efi tables in Dom0. Alloc
>> the pages to store the new created EFI and ACPI tables and free these
>> pages when destroying domain.
>
> Could you please explain what you are page aligning exactly and why?
>
At least it should be 64bit aligned of the table start address. If not,
guest will throw out an alignment fault.
ACPI: Using GIC for interrupt routing
Unhandled fault: alignment fault (0x96000021) at 0xffffff800006c19c
Internal error: : 96000021 [#1] PREEMPT SMP
Modules linked in:
CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.3.0+ #551
Hardware name: (null) (DT)
task: ffffffc008870000 ti: ffffffc00884c000 task.ti: ffffffc00884c000
PC is at acpi_get_phys_id+0x264/0x290
LR is at acpi_get_phys_id+0x178/0x290
>
>>
>> Signed-off-by: Parth Dixit <parth.dixit@linaro•org>
>> Signed-off-by: Shannon Zhao <shannon.zhao@linaro•org>
>> ---
>> xen/arch/arm/domain.c | 4 +++
>> xen/arch/arm/domain_build.c | 80 ++++++++++++++++++++++++++++++++++++++++++++-
>> xen/common/efi/boot.c | 21 ++++++++++++
>> xen/include/asm-arm/setup.h | 2 ++
>> 4 files changed, 106 insertions(+), 1 deletion(-)
>>
>> diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c
>> index 880d0a6..10c58c4 100644
>> --- a/xen/arch/arm/domain.c
>> +++ b/xen/arch/arm/domain.c
>> @@ -638,6 +638,10 @@ void arch_domain_destroy(struct domain *d)
>> domain_vgic_free(d);
>> domain_vuart_free(d);
>> free_xenheap_page(d->shared_info);
>> +#ifdef CONFIG_ACPI
>> + free_xenheap_pages(d->arch.efi_acpi_table,
>> + get_order_from_bytes(d->arch.efi_acpi_len));
>> +#endif
>> }
>>
>> void arch_domain_shutdown(struct domain *d)
>> diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
>> index 0c3441a..b5ed44c 100644
>> --- a/xen/arch/arm/domain_build.c
>> +++ b/xen/arch/arm/domain_build.c
>> @@ -12,6 +12,8 @@
>> #include <xen/libfdt/libfdt.h>
>> #include <xen/guest_access.h>
>> #include <xen/iocap.h>
>> +#include <xen/acpi.h>
>> +#include <acpi/actables.h>
>> #include <asm/device.h>
>> #include <asm/setup.h>
>> #include <asm/platform.h>
>> @@ -1354,6 +1356,78 @@ static int prepare_dtb(struct domain *d, struct kernel_info *kinfo)
>> return -EINVAL;
>> }
>>
>> +#ifdef CONFIG_ACPI
>> +static int estimate_acpi_efi_size(struct domain *d, struct kernel_info *kinfo)
>> +{
>> + u64 efi_size, acpi_size = 0, addr;
>> + u32 madt_size;
>> + struct acpi_table_rsdp *rsdp_tbl;
>> + struct acpi_table_header *table = NULL;
>> +
>> + efi_size = estimate_efi_size(kinfo->mem.nr_banks);
>> +
>> + acpi_size += PAGE_ALIGN(sizeof(struct acpi_table_fadt));
>> + acpi_size += PAGE_ALIGN(sizeof(struct acpi_table_stao));
>> +
>> + madt_size = sizeof(struct acpi_table_madt)
>> + + sizeof(struct acpi_madt_generic_interrupt) * d->max_vcpus
>> + + sizeof(struct acpi_madt_generic_distributor);
>> + if ( d->arch.vgic.version == GIC_V3 )
>> + madt_size += sizeof(struct acpi_madt_generic_redistributor)
>> + * d->arch.vgic.nr_regions;
>> + acpi_size += PAGE_ALIGN(madt_size);
>
> are the MADT and FADT tables guaranteed to be on separate pages or is it
> just an estimate?
>
>
>> + addr = acpi_os_get_root_pointer();
>> + if ( !addr )
>> + {
>> + printk("Unable to get acpi root pointer\n");
>> + return -EINVAL;
>> + }
>> + rsdp_tbl = acpi_os_map_memory(addr, sizeof(struct acpi_table_rsdp));
>> + table = acpi_os_map_memory(rsdp_tbl->xsdt_physical_address,
>> + sizeof(struct acpi_table_header));
>> + acpi_size += PAGE_ALIGN(table->length + sizeof(u64));
>> + acpi_os_unmap_memory(table, sizeof(struct acpi_table_header));
>> + acpi_os_unmap_memory(rsdp_tbl, sizeof(struct acpi_table_rsdp));
>> +
>> + acpi_size += PAGE_ALIGN(sizeof(struct acpi_table_rsdp));
>> + d->arch.efi_acpi_len = PAGE_ALIGN(efi_size) + PAGE_ALIGN(acpi_size);
>> +
>> + return 0;
>> +}
>> +
>> +static int prepare_acpi(struct domain *d, struct kernel_info *kinfo)
>> +{
>> + int rc = 0;
>> + int order;
>> +
>> + rc = estimate_acpi_efi_size(d, kinfo);
>> + if ( rc != 0 )
>> + return rc;
>> +
>> + order = get_order_from_bytes(d->arch.efi_acpi_len);
>> + d->arch.efi_acpi_table = alloc_xenheap_pages(order, 0);
>> + if ( d->arch.efi_acpi_table == NULL )
>> + {
>> + printk("unable to allocate memory!\n");
>> + return -1;
>
> ENOMEM
>
>
>> + }
>> + memset(d->arch.efi_acpi_table, 0, d->arch.efi_acpi_len);
>> +
>> + /* For ACPI, Dom0 doesn't use kinfo->gnttab_start to get the grant table
>> + * region. So we use it as the ACPI table mapped address. */
>> + d->arch.efi_acpi_gpa = kinfo->gnttab_start;
>> +
>> + return 0;
>> +}
>> +#else
>> +static int prepare_acpi(struct domain *d, struct kernel_info *kinfo)
>> +{
>> + /* Only booting with ACPI will hit here */
>> + BUG_ON(1);
>> + return -EINVAL;
>> +}
>> +#endif
>> static void dtb_load(struct kernel_info *kinfo)
>> {
>> void * __user dtb_virt = (void * __user)(register_t)kinfo->dtb_paddr;
>> @@ -1540,7 +1614,11 @@ int construct_dom0(struct domain *d)
>> allocate_memory(d, &kinfo);
>> find_gnttab_region(d, &kinfo);
>>
>> - rc = prepare_dtb(d, &kinfo);
>> + if ( acpi_disabled )
>> + rc = prepare_dtb(d, &kinfo);
>> + else
>> + rc = prepare_acpi(d, &kinfo);
>> +
>> if ( rc < 0 )
>> return rc;
>>
>> diff --git a/xen/common/efi/boot.c b/xen/common/efi/boot.c
>> index 53c7452..78d8ae9 100644
>> --- a/xen/common/efi/boot.c
>> +++ b/xen/common/efi/boot.c
>> @@ -13,6 +13,7 @@
>> #include <xen/multiboot.h>
>> #include <xen/pci_regs.h>
>> #include <xen/pfn.h>
>> +#include <asm/acpi.h>
>> #if EFI_PAGE_SIZE != PAGE_SIZE
>> # error Cannot use xen/pfn.h here!
>> #endif
>> @@ -1171,6 +1172,26 @@ efi_start(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *SystemTable)
>> for( ; ; ); /* not reached */
>> }
>>
>> +#ifdef CONFIG_ACPI
>> +/* Constant to indicate "Xen" in unicode u16 format */
>> +static const u16 XEN_EFI_FW_VENDOR[] ={0x0058,0x0065,0x006E,0x0000};
>> +
>> +int __init estimate_efi_size(int mem_nr_banks)
>> +{
>> + int size;
>> + int est_size = sizeof(EFI_SYSTEM_TABLE);
>> + int ect_size = sizeof(EFI_CONFIGURATION_TABLE);
>> + int emd_size = sizeof(EFI_MEMORY_DESCRIPTOR);
>> + int fw_vendor_size = sizeof(XEN_EFI_FW_VENDOR);
>> +
>> + size = PAGE_ALIGN(est_size + ect_size + fw_vendor_size)
>> + + PAGE_ALIGN(emd_size *
>> + (mem_nr_banks + acpi_mem.nr_banks + TBL_MMAX));
>
> Why are they on two separate pages? Is it mandated by the EFI spec?
> Why are you adding TBL_MMAX to the multiplicand here?
>
> I don't like that we are passing mem_nr_banks as argument but we are
> accessing acpi_mem.nr_banks from the global variable. I would prefer if
> they were both passed as arguments.
>
>
>> + return size;
>> +}
>> +#endif
>> +
>> #ifndef CONFIG_ARM /* TODO - runtime service support */
>>
>> static bool_t __initdata efi_rs_enable = 1;
>> diff --git a/xen/include/asm-arm/setup.h b/xen/include/asm-arm/setup.h
>> index 30ac53b..b759813 100644
>> --- a/xen/include/asm-arm/setup.h
>> +++ b/xen/include/asm-arm/setup.h
>> @@ -51,6 +51,8 @@ void arch_init_memory(void);
>>
>> void copy_from_paddr(void *dst, paddr_t paddr, unsigned long len);
>>
>> +int estimate_efi_size(int mem_nr_banks);
>> +
>> int construct_dom0(struct domain *d);
>>
>> void discard_initial_modules(void);
>> --
>> 2.1.0
>>
>
> .
>
--
Shannon
next prev parent reply other threads:[~2015-12-31 9:16 UTC|newest]
Thread overview: 212+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-11-17 9:39 [PATCH v3 00/62] Add ACPI support for arm64 on Xen shannon.zhao at linaro.org
2015-11-17 9:40 ` [PATCH v3 01/62] Revert "xen/arm: vgic-v2: Drop cbase from arch_domain" shannon.zhao at linaro.org
2015-11-17 11:27 ` Julien Grall
2015-11-17 12:32 ` Shannon Zhao
2015-11-17 13:57 ` Julien Grall
2015-11-18 2:28 ` Shannon Zhao
2015-11-18 11:41 ` Julien Grall
2015-11-18 13:09 ` Shannon Zhao
2015-11-18 13:33 ` Julien Grall
2015-11-18 13:38 ` Shannon Zhao
2015-11-17 9:40 ` [PATCH v3 02/62] acpi/NUMA: Build NUMA for x86 only shannon.zhao at linaro.org
2015-11-17 9:40 ` [PATCH v3 03/62] acpi/pmstat: Build pmstat " shannon.zhao at linaro.org
2015-11-23 15:46 ` Jan Beulich
2015-11-17 9:40 ` [PATCH v3 04/62] arm/acpi: Emulate io ports for arm shannon.zhao at linaro.org
2015-11-17 9:50 ` Arnd Bergmann
2015-11-18 7:01 ` Shannon Zhao
2015-11-18 8:24 ` Arnd Bergmann
2015-11-17 9:40 ` [PATCH v3 05/62] acpi: Don't do traditional BIOS table scan for ARM64 shannon.zhao at linaro.org
2015-11-23 11:24 ` Stefano Stabellini
2015-11-23 11:35 ` Jan Beulich
2015-11-24 3:39 ` Shannon Zhao
2015-11-24 7:20 ` Jan Beulich
2015-11-17 9:40 ` [PATCH v3 06/62] acpi: Refactor acpi_os_map_memory to be architecturally independent shannon.zhao at linaro.org
2015-11-23 11:29 ` [Xen-devel] " Stefano Stabellini
2015-11-23 11:37 ` Jan Beulich
2015-12-07 12:00 ` Julien Grall
2015-11-17 9:40 ` [PATCH v3 07/62] arm/acpi: Add arch_acpi_os_map_memory helper function for ARM shannon.zhao at linaro.org
2015-11-23 11:37 ` Stefano Stabellini
2015-11-30 14:47 ` [Xen-devel] " Julien Grall
2015-12-07 8:58 ` Shannon Zhao
2015-12-07 10:32 ` Jan Beulich
2015-12-07 10:38 ` Ian Campbell
2015-12-07 12:02 ` Julien Grall
2015-11-17 9:40 ` [PATCH v3 08/62] arm/acpi: Add arm specific acpi header file shannon.zhao at linaro.org
2015-11-23 11:43 ` Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 09/62] arm/acpi: Add basic ACPI initialization shannon.zhao at linaro.org
2015-11-23 11:52 ` [Xen-devel] " Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 10/62] arm/acpi: Move end_boot_allocator after acpi_boot_table_init shannon.zhao at linaro.org
2015-11-23 11:54 ` Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 11/62] arm/acpi: Introduce ARM Boot Architecture Flags in FADT shannon.zhao at linaro.org
2015-11-23 12:13 ` Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 12/62] ACPICA: ACPI 6.0: Add changes for FADT table shannon.zhao at linaro.org
2015-11-23 12:15 ` Stefano Stabellini
2015-11-24 11:29 ` Jan Beulich
2015-11-25 1:45 ` Shannon Zhao
2015-11-17 9:40 ` [PATCH v3 13/62] arm/acpi: Parse FADT table and get PSCI flags shannon.zhao at linaro.org
2015-11-23 12:42 ` Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 14/62] arm/acpi: Add Generic Interrupt and Distributor struct shannon.zhao at linaro.org
2015-11-23 14:43 ` Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 15/62] ACPICA: ACPI 6.0: Add changes for MADT table shannon.zhao at linaro.org
2015-11-23 14:51 ` Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 16/62] ACPICA: ACPI 6.0: Add values for MADT GIC version field shannon.zhao at linaro.org
2015-11-23 14:52 ` Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 17/62] arm/acpi: Print GIC information when MADT is parsed shannon.zhao at linaro.org
2015-11-23 14:56 ` Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 18/62] arm/acpi: Parse MADT to map logical cpu to MPIDR and get cpu_possible_map shannon.zhao at linaro.org
2015-11-23 15:18 ` Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 19/62] arm/smpboot: Move dt specific code in smp to seperate functions shannon.zhao at linaro.org
2015-11-23 15:22 ` Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 20/62] arm/acpi: Add ACPI support for SMP initialization shannon.zhao at linaro.org
2015-11-23 15:27 ` Stefano Stabellini
2015-11-30 14:57 ` [Xen-devel] " Julien Grall
2015-12-30 3:11 ` Shannon Zhao
2016-01-04 14:51 ` Stefano Stabellini
2016-01-04 15:00 ` Mark Rutland
2016-01-04 15:14 ` Mark Rutland
2016-01-04 15:12 ` Mark Rutland
2015-11-17 9:40 ` [PATCH v3 21/62] arm/gic-v2: Refactor gicv2_init into generic and dt specific parts shannon.zhao at linaro.org
2015-11-23 15:40 ` Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 22/62] arm/gic-v3: Refactor gicv3_init " shannon.zhao at linaro.org
2015-11-24 10:51 ` [Xen-devel] " Stefano Stabellini
2015-11-30 15:01 ` Julien Grall
2015-11-17 9:40 ` [PATCH v3 23/62] acpi/table: Introduce acpi_parse_entries shannon.zhao at linaro.org
2015-11-23 16:56 ` Jan Beulich
2015-11-17 9:40 ` [PATCH v3 24/62] arm: Introduce a generic way to use a device from acpi shannon.zhao at linaro.org
2015-11-17 12:40 ` Julien Grall
2015-11-17 13:21 ` Shannon Zhao
2015-11-17 14:25 ` Julien Grall
2015-11-18 2:37 ` Shannon Zhao
2015-11-18 11:46 ` Julien Grall
2015-11-24 11:18 ` [Xen-devel] " Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 25/62] acpi/table: Introduce acpi_get_entry to get specified entry shannon.zhao at linaro.org
2015-11-23 16:59 ` Jan Beulich
2015-11-24 3:08 ` Shannon Zhao
2015-11-24 7:22 ` Jan Beulich
2015-11-24 7:48 ` Shannon Zhao
2015-11-24 8:04 ` Jan Beulich
2015-11-17 9:40 ` [PATCH v3 26/62] arm/gic-v2: Add ACPI boot support for GICv2 shannon.zhao at linaro.org
2015-11-24 11:54 ` [Xen-devel] " Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 27/62] arm/gic-v3: Add ACPI boot support for GICv3 shannon.zhao at linaro.org
2015-11-24 12:00 ` [Xen-devel] " Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 28/62] arm/gic: Add ACPI support for GIC preinit shannon.zhao at linaro.org
2015-11-26 12:10 ` Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 29/62] arm/acpi: Add GTDT support updated by ACPI 5.1 shannon.zhao at linaro.org
2015-11-26 12:14 ` [Xen-devel] " Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 30/62] arm/irq: Add helper function for setting interrupt type shannon.zhao at linaro.org
2015-11-26 12:20 ` Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 31/62] arm/acpi: Add a helper function to get " shannon.zhao at linaro.org
2015-11-18 12:16 ` [Xen-devel] " Julien Grall
2015-11-26 12:33 ` Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 32/62] arm/acpi: Parse GTDT to initialize timer shannon.zhao at linaro.org
2015-11-26 12:54 ` [Xen-devel] " Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 33/62] arm/uart: Create generic uart initialization function shannon.zhao at linaro.org
2015-11-17 11:49 ` Julien Grall
2015-11-17 12:34 ` Shannon Zhao
2015-11-17 9:40 ` [PATCH v3 34/62] pl011: Refactor pl011 driver to dt and common initialization parts shannon.zhao at linaro.org
2015-11-26 15:22 ` Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 35/62] serial: Rename SERHND_DTUART to SERHND_UART shannon.zhao at linaro.org
2015-11-26 15:32 ` [Xen-devel] " Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 36/62] arm/acpi: Initialize serial port from ACPI SPCR table shannon.zhao at linaro.org
2015-11-26 15:43 ` Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 37/62] arm/acpi: Define a enum for reserved tables shannon.zhao at linaro.org
2015-11-26 16:50 ` [Xen-devel] " Stefano Stabellini
2015-11-26 17:06 ` Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 38/62] arm/acpi: Add placeholder for efi and acpi load address shannon.zhao at linaro.org
2015-11-17 11:58 ` Julien Grall
2015-11-17 12:45 ` Shannon Zhao
2015-11-17 14:23 ` Julien Grall
2015-11-18 3:01 ` Shannon Zhao
2015-11-18 11:56 ` Julien Grall
2015-11-26 16:04 ` Stefano Stabellini
2015-11-30 15:10 ` Julien Grall
2015-11-26 16:02 ` Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 39/62] arm/acpi: Read acpi memory info from uefi shannon.zhao at linaro.org
2015-11-26 16:18 ` Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 40/62] arm/acpi: Estimate memory required for acpi/efi tables shannon.zhao at linaro.org
2015-11-26 16:39 ` Stefano Stabellini
2015-12-31 9:16 ` Shannon Zhao [this message]
2016-01-04 14:35 ` Stefano Stabellini
2015-11-30 15:14 ` [Xen-devel] " Julien Grall
2016-01-04 9:03 ` Shannon Zhao
2016-01-04 14:34 ` Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 41/62] arm/acpi: Add a helper function to get the acpi table offset shannon.zhao at linaro.org
2015-11-26 17:02 ` Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 42/62] arm/acpi: Prepare FADT table for Dom0 shannon.zhao at linaro.org
2015-11-26 17:19 ` [Xen-devel] " Stefano Stabellini
2015-11-27 9:50 ` Ian Campbell
2015-11-17 9:40 ` [PATCH v3 43/62] arm/acpi: Prepare MADT " shannon.zhao at linaro.org
2015-11-26 17:48 ` Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 44/62] ACPICA: ACPI 6.0: Add support for STAO table shannon.zhao at linaro.org
2015-11-27 11:15 ` Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 45/62] arm/acpi: Prepare STAO table for Dom0 shannon.zhao at linaro.org
2015-11-27 11:24 ` [Xen-devel] " Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 46/62] arm/acpi: Prepare XSDT " shannon.zhao at linaro.org
2015-11-27 11:58 ` [Xen-devel] " Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 47/62] arm/p2m: Add helper functions to map memory regions shannon.zhao at linaro.org
2015-11-27 12:04 ` Stefano Stabellini
2015-11-30 15:22 ` Julien Grall
2016-01-05 3:50 ` Shannon Zhao
2015-11-30 15:23 ` [Xen-devel] " Julien Grall
2015-11-17 9:40 ` [PATCH v3 48/62] arm/acpi: Prepare RSDP table for Dom0 shannon.zhao at linaro.org
2015-11-27 12:10 ` Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 49/62] arm/acpi: Map rest tables " shannon.zhao at linaro.org
2015-11-27 12:16 ` Stefano Stabellini
2015-11-30 15:25 ` Julien Grall
2015-11-17 9:40 ` [PATCH v3 50/62] xen/efi: store EFI system table in efi structure shannon.zhao at linaro.org
2015-11-17 11:07 ` Jan Beulich
2015-11-17 11:57 ` Julien Grall
2015-11-18 3:17 ` Shannon Zhao
2015-11-17 9:40 ` [PATCH v3 51/62] arm/acpi: Prepare EFI system table for Dom0 shannon.zhao at linaro.org
2015-11-17 12:02 ` Julien Grall
2015-11-18 12:09 ` [Xen-devel] " Julien Grall
2015-11-27 14:13 ` Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 52/62] arm/acpi: Prepare EFI memory descriptor " shannon.zhao at linaro.org
2015-11-27 14:30 ` Stefano Stabellini
2015-12-31 7:40 ` Shannon Zhao
2016-01-04 14:54 ` Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 53/62] arm/acpi: Map the new created EFI and ACPI tables to Dom0 shannon.zhao at linaro.org
2015-11-27 14:34 ` Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 54/62] arm/acpi: Create min DT stub for Dom0 shannon.zhao at linaro.org
2015-11-27 14:44 ` [Xen-devel] " Stefano Stabellini
2015-11-17 9:40 ` [PATCH v3 55/62] arm/acpi: Route all Xen unused SPIs to Dom0 shannon.zhao at linaro.org
2015-11-17 12:33 ` Julien Grall
2015-11-27 15:04 ` Stefano Stabellini
2015-11-30 15:41 ` [Xen-devel] " Julien Grall
2015-11-17 9:40 ` [PATCH v3 56/62] arm/acpi: Deny MMIO access of UART shannon.zhao at linaro.org
2015-11-17 12:04 ` Julien Grall
2015-11-17 13:10 ` Shannon Zhao
2015-11-27 14:50 ` Stefano Stabellini
2015-11-30 15:30 ` Julien Grall
2015-11-17 9:40 ` [PATCH v3 57/62] hvm/params: Add a new dilivery type for event-channel in HVM_PARAM_CALLBACK_IRQ shannon.zhao at linaro.org
2015-11-24 7:35 ` Jan Beulich
2015-11-17 9:40 ` [PATCH v3 58/62] xen/acpi: Fix event-channel interrupt when booting with ACPI shannon.zhao at linaro.org
2015-11-27 15:12 ` Stefano Stabellini
2015-11-30 15:30 ` Julien Grall
2015-11-17 9:40 ` [PATCH v3 59/62] xen/arm: Add a hypercall for device mmio mapping shannon.zhao at linaro.org
2015-11-17 11:04 ` Jan Beulich
2016-01-07 6:58 ` Shannon Zhao
2016-01-07 7:45 ` Jan Beulich
2016-01-07 9:11 ` Shannon Zhao
2016-01-07 10:50 ` Jan Beulich
2016-01-07 21:40 ` Daniel De Graaf
2016-01-08 2:12 ` Shannon Zhao
2015-11-17 9:40 ` [PATCH v3 60/62] arm/acpi: Configure interrupts dynamically shannon.zhao at linaro.org
2015-11-27 16:13 ` Stefano Stabellini
2015-11-27 16:19 ` Stefano Stabellini
2015-11-30 15:42 ` [Xen-devel] " Julien Grall
2016-01-05 11:51 ` Shannon Zhao
2016-01-05 14:18 ` Stefano Stabellini
2015-11-17 9:41 ` [PATCH v3 61/62] arm/acpi: Add acpi parameter to enable/disable acpi shannon.zhao at linaro.org
2015-11-17 12:26 ` Julien Grall
2015-11-17 12:57 ` Shannon Zhao
2015-11-17 14:32 ` Julien Grall
2015-11-17 9:41 ` [PATCH v3 62/62] xen/arm64: Add ACPI support shannon.zhao at linaro.org
2015-11-27 15:16 ` [Xen-devel] " Stefano Stabellini
2015-11-30 15:44 ` Julien Grall
2015-11-17 10:59 ` [PATCH v3 00/62] Add ACPI support for arm64 on Xen Jan Beulich
2015-11-17 11:10 ` David Vrabel
2015-11-17 13:02 ` Shannon Zhao
2015-11-17 11:52 ` Julien Grall
2015-11-18 8:03 ` Shannon Zhao
2015-11-18 12:18 ` Julien Grall
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5684F250.2060400@huawei.com \
--to=zhaoshenglong@huawei$(echo .)com \
--cc=linux-arm-kernel@lists$(echo .)infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox