AMD IOMMU: struct amd_iommu remove padding on 64 bit
Remove 16 bytes of padding from struct amd_iommu on 64bit builds reducing its size to 120 bytes, allowing it to span one fewer cachelines. Signed-off-by: Richard Kennedy <richard@rsk.demon.co.uk> Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
This commit is contained in:
committed by
Joerg Roedel
parent
061e41fdb5
commit
eac9fbc6a9
@@ -251,13 +251,6 @@ struct amd_iommu {
|
|||||||
/* Pointer to PCI device of this IOMMU */
|
/* Pointer to PCI device of this IOMMU */
|
||||||
struct pci_dev *dev;
|
struct pci_dev *dev;
|
||||||
|
|
||||||
/*
|
|
||||||
* Capability pointer. There could be more than one IOMMU per PCI
|
|
||||||
* device function if there are more than one AMD IOMMU capability
|
|
||||||
* pointers.
|
|
||||||
*/
|
|
||||||
u16 cap_ptr;
|
|
||||||
|
|
||||||
/* physical address of MMIO space */
|
/* physical address of MMIO space */
|
||||||
u64 mmio_phys;
|
u64 mmio_phys;
|
||||||
/* virtual address of MMIO space */
|
/* virtual address of MMIO space */
|
||||||
@@ -266,6 +259,13 @@ struct amd_iommu {
|
|||||||
/* capabilities of that IOMMU read from ACPI */
|
/* capabilities of that IOMMU read from ACPI */
|
||||||
u32 cap;
|
u32 cap;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Capability pointer. There could be more than one IOMMU per PCI
|
||||||
|
* device function if there are more than one AMD IOMMU capability
|
||||||
|
* pointers.
|
||||||
|
*/
|
||||||
|
u16 cap_ptr;
|
||||||
|
|
||||||
/* pci domain of this IOMMU */
|
/* pci domain of this IOMMU */
|
||||||
u16 pci_seg;
|
u16 pci_seg;
|
||||||
|
|
||||||
@@ -284,19 +284,19 @@ struct amd_iommu {
|
|||||||
/* size of command buffer */
|
/* size of command buffer */
|
||||||
u32 cmd_buf_size;
|
u32 cmd_buf_size;
|
||||||
|
|
||||||
/* event buffer virtual address */
|
|
||||||
u8 *evt_buf;
|
|
||||||
/* size of event buffer */
|
/* size of event buffer */
|
||||||
u32 evt_buf_size;
|
u32 evt_buf_size;
|
||||||
|
/* event buffer virtual address */
|
||||||
|
u8 *evt_buf;
|
||||||
/* MSI number for event interrupt */
|
/* MSI number for event interrupt */
|
||||||
u16 evt_msi_num;
|
u16 evt_msi_num;
|
||||||
|
|
||||||
/* if one, we need to send a completion wait command */
|
|
||||||
int need_sync;
|
|
||||||
|
|
||||||
/* true if interrupts for this IOMMU are already enabled */
|
/* true if interrupts for this IOMMU are already enabled */
|
||||||
bool int_enabled;
|
bool int_enabled;
|
||||||
|
|
||||||
|
/* if one, we need to send a completion wait command */
|
||||||
|
int need_sync;
|
||||||
|
|
||||||
/* default dma_ops domain for that IOMMU */
|
/* default dma_ops domain for that IOMMU */
|
||||||
struct dma_ops_domain *default_dom;
|
struct dma_ops_domain *default_dom;
|
||||||
};
|
};
|
||||||
|
Reference in New Issue
Block a user