Message ID | 20180509214841.GL8564@decadent.org.uk (mailing list archive) |
---|---|
State | Accepted |
Headers | show |
On Wed, 2018-05-09 at 22:48 +0100, Ben Hutchings wrote: > DMA_VIRT_OPS requires that dma_addr_t is at least as wide as a > pointer, which is expressed as a dependency on !64BIT || > ARCH_DMA_ADDR_T_64BIT. > > For parisc64 this is not true, and if these IB modules are enabled, > kconfig warns: > > WARNING: unmet direct dependencies detected for DMA_VIRT_OPS > Depends on [n]: HAS_DMA [=y] && (!64BIT [=y] || ARCH_DMA_ADDR_T_64BIT) > Selected by [m]: > - INFINIBAND_RDMAVT [=m] && INFINIBAND [=m] && 64BIT [=y] && PCI [=y] > - RDMA_RXE [=m] && INET [=y] && PCI [=y] && INFINIBAND [=m] > > Add dependencies to fix this. > > Signed-off-by: Ben Hutchings <ben@decadent.org.uk> > Applied to for-next area, thanks.
On Wed, May 09, 2018 at 10:48:41PM +0100, Ben Hutchings wrote: > DMA_VIRT_OPS requires that dma_addr_t is at least as wide as a > pointer, which is expressed as a dependency on !64BIT || > ARCH_DMA_ADDR_T_64BIT. > > For parisc64 this is not true, and if these IB modules are enabled, > kconfig warns: > > WARNING: unmet direct dependencies detected for DMA_VIRT_OPS > Depends on [n]: HAS_DMA [=y] && (!64BIT [=y] || ARCH_DMA_ADDR_T_64BIT) > Selected by [m]: > - INFINIBAND_RDMAVT [=m] && INFINIBAND [=m] && 64BIT [=y] && PCI [=y] > - RDMA_RXE [=m] && INET [=y] && PCI [=y] && INFINIBAND [=m] Makes sense to me.. But how did you produce the above output? What command does this? Thanks, Jason -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Tue, 2018-05-15 at 13:38 -0600, Jason Gunthorpe wrote: > On Wed, May 09, 2018 at 10:48:41PM +0100, Ben Hutchings wrote: > > DMA_VIRT_OPS requires that dma_addr_t is at least as wide as a > > pointer, which is expressed as a dependency on !64BIT || > > ARCH_DMA_ADDR_T_64BIT. > > > > For parisc64 this is not true, and if these IB modules are enabled, > > kconfig warns: > > > > WARNING: unmet direct dependencies detected for DMA_VIRT_OPS > > Depends on [n]: HAS_DMA [=y] && (!64BIT [=y] || ARCH_DMA_ADDR_T_64BIT) > > Selected by [m]: > > - INFINIBAND_RDMAVT [=m] && INFINIBAND [=m] && 64BIT [=y] && PCI [=y] > > - RDMA_RXE [=m] && INET [=y] && PCI [=y] && INFINIBAND [=m] > > Makes sense to me.. > > But how did you produce the above output? What command does this? You should be able to reproduce it like this: make ARCH=parisc allmodconfig scripts/config --enable 64BIT --enable PA8X00 make ARCH=parisc listnewconfig Ben.
diff --git a/drivers/infiniband/sw/rdmavt/Kconfig b/drivers/infiniband/sw/rdmavt/Kconfig index 2b5513da7e83..98e798007f75 100644 --- a/drivers/infiniband/sw/rdmavt/Kconfig +++ b/drivers/infiniband/sw/rdmavt/Kconfig @@ -1,6 +1,6 @@ config INFINIBAND_RDMAVT tristate "RDMA verbs transport library" - depends on 64BIT + depends on 64BIT && ARCH_DMA_ADDR_T_64BIT depends on PCI select DMA_VIRT_OPS ---help--- diff --git a/drivers/infiniband/sw/rxe/Kconfig b/drivers/infiniband/sw/rxe/Kconfig index bad4a576d7cf..67ae960ab523 100644 --- a/drivers/infiniband/sw/rxe/Kconfig +++ b/drivers/infiniband/sw/rxe/Kconfig @@ -1,6 +1,7 @@ config RDMA_RXE tristate "Software RDMA over Ethernet (RoCE) driver" depends on INET && PCI && INFINIBAND + depends on !64BIT || ARCH_DMA_ADDR_T_64BIT select NET_UDP_TUNNEL select CRYPTO_CRC32 select DMA_VIRT_OPS
DMA_VIRT_OPS requires that dma_addr_t is at least as wide as a pointer, which is expressed as a dependency on !64BIT || ARCH_DMA_ADDR_T_64BIT. For parisc64 this is not true, and if these IB modules are enabled, kconfig warns: WARNING: unmet direct dependencies detected for DMA_VIRT_OPS Depends on [n]: HAS_DMA [=y] && (!64BIT [=y] || ARCH_DMA_ADDR_T_64BIT) Selected by [m]: - INFINIBAND_RDMAVT [=m] && INFINIBAND [=m] && 64BIT [=y] && PCI [=y] - RDMA_RXE [=m] && INET [=y] && PCI [=y] && INFINIBAND [=m] Add dependencies to fix this. Signed-off-by: Ben Hutchings <ben@decadent.org.uk> --- drivers/infiniband/sw/rdmavt/Kconfig | 2 +- drivers/infiniband/sw/rxe/Kconfig | 1 + 2 files changed, 2 insertions(+), 1 deletion(-)