[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] VT-d: section adjustments to DMAR parsing code
# HG changeset patch # User Jan Beulich <jbeulich@xxxxxxxxxx> # Date 1299687760 0 # Node ID 58f883dfa7e79ac6b323d1f9919d7e89b0a33547 # Parent 4f8f51c8bc9d497751a91b4b160024e1712ba6b5 VT-d: section adjustments to DMAR parsing code Move whatever possible into .init.*, and some data items into .data.read_mostly. Signed-off-by: Jan Beulich <jbeulich@xxxxxxxxxx> --- diff -r 4f8f51c8bc9d -r 58f883dfa7e7 xen/drivers/passthrough/vtd/dmar.c --- a/xen/drivers/passthrough/vtd/dmar.c Wed Mar 09 16:22:16 2011 +0000 +++ b/xen/drivers/passthrough/vtd/dmar.c Wed Mar 09 16:22:40 2011 +0000 @@ -41,13 +41,12 @@ #define MIN_SCOPE_LEN (sizeof(struct acpi_pci_path) + \ sizeof(struct acpi_dev_scope)) -LIST_HEAD(acpi_drhd_units); -LIST_HEAD(acpi_rmrr_units); -LIST_HEAD(acpi_atsr_units); -LIST_HEAD(acpi_rhsa_units); +LIST_HEAD_READ_MOSTLY(acpi_drhd_units); +LIST_HEAD_READ_MOSTLY(acpi_rmrr_units); +static LIST_HEAD_READ_MOSTLY(acpi_atsr_units); +static LIST_HEAD_READ_MOSTLY(acpi_rhsa_units); -static u64 igd_drhd_address; -u8 dmar_host_address_width; +static u64 __read_mostly igd_drhd_address; void dmar_scope_add_buses(struct dmar_scope *scope, u16 sec_bus, u16 sub_bus) { @@ -679,6 +678,7 @@ { struct acpi_table_dmar *dmar; struct acpi_dmar_entry_header *entry_header; + u8 dmar_host_address_width; int ret = 0; dmar = (struct acpi_table_dmar *)table; diff -r 4f8f51c8bc9d -r 58f883dfa7e7 xen/drivers/passthrough/vtd/dmar.h --- a/xen/drivers/passthrough/vtd/dmar.h Wed Mar 09 16:22:16 2011 +0000 +++ b/xen/drivers/passthrough/vtd/dmar.h Wed Mar 09 16:22:40 2011 +0000 @@ -24,8 +24,6 @@ #include <xen/list.h> #include <xen/iommu.h> -extern u8 dmar_host_address_width; - /* This one is for interrupt remapping */ struct acpi_ioapic_unit { struct list_head list; diff -r 4f8f51c8bc9d -r 58f883dfa7e7 xen/include/xen/list.h --- a/xen/include/xen/list.h Wed Mar 09 16:22:16 2011 +0000 +++ b/xen/include/xen/list.h Wed Mar 09 16:22:40 2011 +0000 @@ -36,6 +36,9 @@ #define LIST_HEAD(name) \ struct list_head name = LIST_HEAD_INIT(name) +#define LIST_HEAD_READ_MOSTLY(name) \ + struct list_head __read_mostly name = LIST_HEAD_INIT(name) + static inline void INIT_LIST_HEAD(struct list_head *list) { list->next = list; _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |