iommu/dma: fix function declaration

Message ID 20170518132402.1355029-1-arnd@arndb.de
State New
Headers show

Commit Message

Arnd Bergmann May 18, 2017, 1:13 p.m.
Newly added code in the ipmmu-vmsa driver showed a small mistake
in a header file that can't be included by itself without CONFIG_IOMMU_DMA
enabled:

In file included from drivers/iommu/ipmmu-vmsa.c:13:0:
include/linux/dma-iommu.h:105:94: error: 'struct device' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]

This adds a forward declaration for 'struct device', similar to how
we treat the other struct types in this case.

Fixes: 3ae47292024f ("iommu/ipmmu-vmsa: Add new IOMMU_DOMAIN_DMA ops")
Fixes: 273df9635385 ("iommu/dma: Make PCI window reservation generic")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>

---
 include/linux/dma-iommu.h | 1 +
 1 file changed, 1 insertion(+)

-- 
2.9.0

Comments

Robin Murphy May 18, 2017, 2:18 p.m. | #1
On 18/05/17 14:13, Arnd Bergmann wrote:
> Newly added code in the ipmmu-vmsa driver showed a small mistake

> in a header file that can't be included by itself without CONFIG_IOMMU_DMA

> enabled:

> 

> In file included from drivers/iommu/ipmmu-vmsa.c:13:0:

> include/linux/dma-iommu.h:105:94: error: 'struct device' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]

> 

> This adds a forward declaration for 'struct device', similar to how

> we treat the other struct types in this case.


Oops, looks like this was latent from day one, thanks Arnd.

Acked-by: Robin Murphy <robin.murphy@arm.com>


> Fixes: 3ae47292024f ("iommu/ipmmu-vmsa: Add new IOMMU_DOMAIN_DMA ops")

> Fixes: 273df9635385 ("iommu/dma: Make PCI window reservation generic")

> Signed-off-by: Arnd Bergmann <arnd@arndb.de>

> ---

>  include/linux/dma-iommu.h | 1 +

>  1 file changed, 1 insertion(+)

> 

> diff --git a/include/linux/dma-iommu.h b/include/linux/dma-iommu.h

> index 4eac2670bfa1..92f20832fd28 100644

> --- a/include/linux/dma-iommu.h

> +++ b/include/linux/dma-iommu.h

> @@ -78,6 +78,7 @@ void iommu_dma_get_resv_regions(struct device *dev, struct list_head *list);

>  

>  struct iommu_domain;

>  struct msi_msg;

> +struct device;

>  

>  static inline int iommu_dma_init(void)

>  {

>
Joerg Roedel May 19, 2017, 11:33 a.m. | #2
On Thu, May 18, 2017 at 03:13:57PM +0200, Arnd Bergmann wrote:
> Newly added code in the ipmmu-vmsa driver showed a small mistake

> in a header file that can't be included by itself without CONFIG_IOMMU_DMA

> enabled:

> 

> In file included from drivers/iommu/ipmmu-vmsa.c:13:0:

> include/linux/dma-iommu.h:105:94: error: 'struct device' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]

> 

> This adds a forward declaration for 'struct device', similar to how

> we treat the other struct types in this case.

> 

> Fixes: 3ae47292024f ("iommu/ipmmu-vmsa: Add new IOMMU_DOMAIN_DMA ops")

> Fixes: 273df9635385 ("iommu/dma: Make PCI window reservation generic")

> Signed-off-by: Arnd Bergmann <arnd@arndb.de>


Applied, thanks.

Patch hide | download patch | download mbox

diff --git a/include/linux/dma-iommu.h b/include/linux/dma-iommu.h
index 4eac2670bfa1..92f20832fd28 100644
--- a/include/linux/dma-iommu.h
+++ b/include/linux/dma-iommu.h
@@ -78,6 +78,7 @@  void iommu_dma_get_resv_regions(struct device *dev, struct list_head *list);
 
 struct iommu_domain;
 struct msi_msg;
+struct device;
 
 static inline int iommu_dma_init(void)
 {