[dpdk-dev] vfio: fix compile on older kernels

Message ID 1490112483-5603-1-git-send-email-anatoly.burakov@intel.com (mailing list archive)
State Superseded, archived
Headers

Checks

Context Check Description
ci/Intel-compilation success Compilation OK
ci/checkpatch success coding style OK

Commit Message

Anatoly Burakov March 21, 2017, 4:08 p.m. UTC
  From: "Burakov, Anatoly" <anatoly.burakov@intel.com>

Fixing compile failures for kernels without sPAPR IOMMU support.

Fixes: 0fe9830b5345 ("eal/ppc: support sPAPR IOMMU for vfio-pci")
Signed-off-by: Burakov, Anatoly <anatoly.burakov@intel.com>
---
 lib/librte_eal/linuxapp/eal/eal_vfio.h | 13 +++++++++++++
 1 file changed, 13 insertions(+)
  

Comments

Shreyansh Jain March 22, 2017, 4:46 a.m. UTC | #1
Super trivial comment inline:

On Tuesday 21 March 2017 09:38 PM, Anatoly Burakov wrote:
> From: "Burakov, Anatoly" <anatoly.burakov@intel.com>
>
> Fixing compile failures for kernels without sPAPR IOMMU support.
>
> Fixes: 0fe9830b5345 ("eal/ppc: support sPAPR IOMMU for vfio-pci")
> Signed-off-by: Burakov, Anatoly <anatoly.burakov@intel.com>
> ---
>  lib/librte_eal/linuxapp/eal/eal_vfio.h | 13 +++++++++++++
>  1 file changed, 13 insertions(+)
>
> diff --git a/lib/librte_eal/linuxapp/eal/eal_vfio.h b/lib/librte_eal/linuxapp/eal/eal_vfio.h
> index ac31a4f..58b7976 100644
> --- a/lib/librte_eal/linuxapp/eal/eal_vfio.h
> +++ b/lib/librte_eal/linuxapp/eal/eal_vfio.h
> @@ -59,6 +59,7 @@
>  #define VFIO_IOMMU_SPAPR_REGISTER_MEMORY _IO(VFIO_TYPE, VFIO_BASE + 17)
>  #define VFIO_IOMMU_SPAPR_TCE_CREATE _IO(VFIO_TYPE, VFIO_BASE + 19)
>  #define VFIO_IOMMU_SPAPR_TCE_REMOVE _IO(VFIO_TYPE, VFIO_BASE + 20)
> +#define VFIO_IOMMU_SPAPR_TCE_GET_INFO	_IO(VFIO_TYPE, VFIO_BASE + 12)

I guess a new line should be added here and ...

>  struct vfio_iommu_spapr_register_memory {
>  	uint32_t argsz;
>  	uint32_t flags;
> @@ -75,6 +76,18 @@ struct vfio_iommu_spapr_tce_remove {
>  	uint32_t argsz;
>  	uint64_t start_addr;
>  };

and here...

> +struct vfio_iommu_spapr_tce_ddw_info {
> +	uint64_t pgsizes;
> +	uint32_t max_dynamic_windows_supported;
> +	uint32_t levels;
> +};

and here.

> +struct vfio_iommu_spapr_tce_info {
> +	uint32_t argsz;
> +	uint32_t flags;
> +	uint32_t dma32_window_start;
> +	uint32_t dma32_window_size;
> +	struct vfio_iommu_spapr_tce_ddw_info ddw;
> +};
>  #else
>  #define RTE_VFIO_SPAPR VFIO_SPAPR_TCE_v2_IOMMU
>  #endif
>
  
Anatoly Burakov March 22, 2017, 9:57 a.m. UTC | #2
> Super trivial comment inline:

Thanks, I'll add those and do a v2. I'll wait a bit in case there are more comments.

Thanks,
Anatoly
  

Patch

diff --git a/lib/librte_eal/linuxapp/eal/eal_vfio.h b/lib/librte_eal/linuxapp/eal/eal_vfio.h
index ac31a4f..58b7976 100644
--- a/lib/librte_eal/linuxapp/eal/eal_vfio.h
+++ b/lib/librte_eal/linuxapp/eal/eal_vfio.h
@@ -59,6 +59,7 @@ 
 #define VFIO_IOMMU_SPAPR_REGISTER_MEMORY _IO(VFIO_TYPE, VFIO_BASE + 17)
 #define VFIO_IOMMU_SPAPR_TCE_CREATE _IO(VFIO_TYPE, VFIO_BASE + 19)
 #define VFIO_IOMMU_SPAPR_TCE_REMOVE _IO(VFIO_TYPE, VFIO_BASE + 20)
+#define VFIO_IOMMU_SPAPR_TCE_GET_INFO	_IO(VFIO_TYPE, VFIO_BASE + 12)
 struct vfio_iommu_spapr_register_memory {
 	uint32_t argsz;
 	uint32_t flags;
@@ -75,6 +76,18 @@  struct vfio_iommu_spapr_tce_remove {
 	uint32_t argsz;
 	uint64_t start_addr;
 };
+struct vfio_iommu_spapr_tce_ddw_info {
+	uint64_t pgsizes;
+	uint32_t max_dynamic_windows_supported;
+	uint32_t levels;
+};
+struct vfio_iommu_spapr_tce_info {
+	uint32_t argsz;
+	uint32_t flags;
+	uint32_t dma32_window_start;
+	uint32_t dma32_window_size;
+	struct vfio_iommu_spapr_tce_ddw_info ddw;
+};
 #else
 #define RTE_VFIO_SPAPR VFIO_SPAPR_TCE_v2_IOMMU
 #endif