[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [xen staging] xen/asm-generic: fold struct devarch into struct dev
commit 981f722efa876e3f1766629f444d10e8806adc93 Author: Oleksii Kurochko <oleksii.kurochko@xxxxxxxxx> AuthorDate: Tue Feb 20 12:23:50 2024 +0100 Commit: Jan Beulich <jbeulich@xxxxxxxx> CommitDate: Tue Feb 20 12:23:50 2024 +0100 xen/asm-generic: fold struct devarch into struct dev The 'struct dev_archdata' is exclusively used within 'struct device', so it could be merged into 'struct device.' After the merger, it is necessary to update the 'dev_archdata()' macros and the comments above 'struct arm_smmu_xen_device' in drivers/passthrough/arm/smmu.c. Additionally, it is required to update instances of "dev->archdata->iommu" to "dev->iommu". Suggested-by: Julien Grall <julien@xxxxxxx> Signed-off-by: Oleksii Kurochko <oleksii.kurochko@xxxxxxxxx> Reviewed-by: Julien Grall <jgrall@xxxxxxxxxx> --- xen/drivers/passthrough/arm/smmu.c | 12 ++++++------ xen/include/asm-generic/device.h | 8 +------- 2 files changed, 7 insertions(+), 13 deletions(-) diff --git a/xen/drivers/passthrough/arm/smmu.c b/xen/drivers/passthrough/arm/smmu.c index 32e2ff279b..4a272c8779 100644 --- a/xen/drivers/passthrough/arm/smmu.c +++ b/xen/drivers/passthrough/arm/smmu.c @@ -227,9 +227,9 @@ struct arm_smmu_xen_domain { }; /* - * Xen: Information about each device stored in dev->archdata.iommu + * Xen: Information about each device stored in dev->iommu * - * Initially dev->archdata.iommu only stores the iommu_domain (runtime + * Initially dev->iommu only stores the iommu_domain (runtime * configuration of the SMMU) but, on Xen, we also have to store the * iommu_group (list of streamIDs associated to the device). * @@ -242,7 +242,7 @@ struct arm_smmu_xen_device { struct iommu_group *group; }; -#define dev_archdata(dev) ((struct arm_smmu_xen_device *)dev->archdata.iommu) +#define dev_archdata(dev) ((struct arm_smmu_xen_device *)dev->iommu) #define dev_iommu_domain(dev) (dev_archdata(dev)->domain) #define dev_iommu_group(dev) (dev_archdata(dev)->group) @@ -2777,9 +2777,9 @@ static int arm_smmu_assign_dev(struct domain *d, u8 devfn, xen_domain = dom_iommu(d)->arch.priv; - if (!dev->archdata.iommu) { - dev->archdata.iommu = xzalloc(struct arm_smmu_xen_device); - if (!dev->archdata.iommu) + if (!dev->iommu) { + dev->iommu = xzalloc(struct arm_smmu_xen_device); + if (!dev->iommu) return -ENOMEM; } diff --git a/xen/include/asm-generic/device.h b/xen/include/asm-generic/device.h index f91bb7f771..1acd1ba1d8 100644 --- a/xen/include/asm-generic/device.h +++ b/xen/include/asm-generic/device.h @@ -22,12 +22,6 @@ enum device_class DEVICE_UNKNOWN, }; -struct dev_archdata { -#ifdef CONFIG_HAS_PASSTHROUGH - void *iommu; /* IOMMU private data */ -#endif -}; - /* struct device - The basic device structure */ struct device { @@ -35,8 +29,8 @@ struct device #ifdef CONFIG_HAS_DEVICE_TREE struct dt_device_node *of_node; /* Used by drivers imported from Linux */ #endif - struct dev_archdata archdata; #ifdef CONFIG_HAS_PASSTHROUGH + void *iommu; /* IOMMU private data */; struct iommu_fwspec *iommu_fwspec; /* per-device IOMMU instance data */ #endif }; -- generated by git-patchbot for /home/xen/git/xen.git#staging
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |