mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-02 23:33:54 -06:00
hw/arm/smmuv3: Remove SMMUNotifierNode
The SMMUNotifierNode struct is not necessary and brings extra
complexity so let's remove it. We now directly track the SMMUDevices
which have registered IOMMU MR notifiers.
This is inspired from the same transformation on intel-iommu
done in commit b4a4ba0d68
("intel-iommu: remove IntelIOMMUNotifierNode")
Signed-off-by: Eric Auger <eric.auger@redhat.com>
Reviewed-by: Peter Xu <peterx@redhat.com>
Message-id: 20190409160219.19026-1-eric.auger@redhat.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
parent
413a99a92c
commit
c637044120
3 changed files with 12 additions and 30 deletions
|
@ -80,13 +80,9 @@ typedef struct SMMUDevice {
|
|||
AddressSpace as;
|
||||
uint32_t cfg_cache_hits;
|
||||
uint32_t cfg_cache_misses;
|
||||
QLIST_ENTRY(SMMUDevice) next;
|
||||
} SMMUDevice;
|
||||
|
||||
typedef struct SMMUNotifierNode {
|
||||
SMMUDevice *sdev;
|
||||
QLIST_ENTRY(SMMUNotifierNode) next;
|
||||
} SMMUNotifierNode;
|
||||
|
||||
typedef struct SMMUPciBus {
|
||||
PCIBus *bus;
|
||||
SMMUDevice *pbdev[0]; /* Parent array is sparse, so dynamically alloc */
|
||||
|
@ -108,7 +104,7 @@ typedef struct SMMUState {
|
|||
GHashTable *iotlb;
|
||||
SMMUPciBus *smmu_pcibus_by_bus_num[SMMU_PCI_BUS_MAX];
|
||||
PCIBus *pci_bus;
|
||||
QLIST_HEAD(, SMMUNotifierNode) notifiers_list;
|
||||
QLIST_HEAD(, SMMUDevice) devices_with_notifiers;
|
||||
uint8_t bus_num;
|
||||
PCIBus *primary_bus;
|
||||
} SMMUState;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue