dma_virt_ops requires that all pages have a kernel virtual address. Introduce a INFINIBAND_VIRT_DMA Kconfig symbol that depends on !HIGHMEM and make all three drivers depend on the new symbol. Also remove the ARCH_DMA_ADDR_T_64BIT dependency, which has been obsolete since commit4965a68780
("arch: define the ARCH_DMA_ADDR_T_64BIT config symbol in lib/Kconfig") Fixes:551199aca1
("lib/dma-virt: Add dma_virt_ops") Link: https://lore.kernel.org/r/20201106181941.1878556-2-hch@lst.de Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
28 lines
1.1 KiB
Text
28 lines
1.1 KiB
Text
# SPDX-License-Identifier: GPL-2.0-only
|
|
config RDMA_RXE
|
|
tristate "Software RDMA over Ethernet (RoCE) driver"
|
|
depends on INET && PCI && INFINIBAND
|
|
depends on INFINIBAND_VIRT_DMA
|
|
select NET_UDP_TUNNEL
|
|
select CRYPTO_CRC32
|
|
select DMA_VIRT_OPS
|
|
help
|
|
This driver implements the InfiniBand RDMA transport over
|
|
the Linux network stack. It enables a system with a
|
|
standard Ethernet adapter to interoperate with a RoCE
|
|
adapter or with another system running the RXE driver.
|
|
Documentation on InfiniBand and RoCE can be downloaded at
|
|
www.infinibandta.org and www.openfabrics.org. (See also
|
|
siw which is a similar software driver for iWARP.)
|
|
|
|
The driver is split into two layers, one interfaces with the
|
|
Linux RDMA stack and implements a kernel or user space
|
|
verbs API. The user space verbs API requires a support
|
|
library named librxe which is loaded by the generic user
|
|
space verbs API, libibverbs. The other layer interfaces
|
|
with the Linux network stack at layer 3.
|
|
|
|
To configure and work with soft-RoCE driver please use the
|
|
following wiki page under "configure Soft-RoCE (RXE)" section:
|
|
|
|
https://github.com/linux-rdma/rdma-core/blob/master/Documentation/rxe.md
|