On Wed, Jan 20, 2021 at 05:19:13PM +0100, mwilck@xxxxxxxx wrote: > From: Martin Wilck <mwilck@xxxxxxxx> > > This reverts commit b2d2440430c0fdd5e0cad3efd6d1c9e3d3d02e5b. > > It's true that creating rxe on top of 802.1q interfaces doesn't work. > Thus, commit fd49ddaf7e26 ("RDMA/rxe: prevent rxe creation on top of vlan interface") > was absolutely correct. > > But b2d2440430c0 was incorrect assuming that with this change, > RDMA and VLAN don't work togehter at all. It just has to be > set up differently. Rather than creating rxe on top of the VLAN > interface, rxe must be created on top of the physical interface. > RDMA then works just fine through VLAN interfaces on top of that > physical interface, via the "upper device" logic. > > I've tested this mainly with NVMe over RDMA and rping, but I don't > see why it wouldn't work just as well for other protocols. If there > are real issues, I'd like to know. > > b2d2440430c0 broke this setup deliberately and should thus be > reverted. Also, b2d2440430c0 removed rxe_dma_device() (which is > indeed not necessary), but not its declaration in rxe_loc.h. > > Fixes: b2d2440430c0 ("RDMA/rxe: Remove VLAN code leftovers from RXE") > > Cc: Zhu Yanjun <zyjzyj2000@xxxxxxxxx> > Cc: Mohammad Heib <goody698@xxxxxxxxx> > Cc: Nicolas Morey-Chaisemartin <nmoreychaisemartin@xxxxxxxx> > Signed-off-by: Martin Wilck <mwilck@xxxxxxxx> > --- > drivers/infiniband/sw/rxe/rxe_loc.h | 1 - > drivers/infiniband/sw/rxe/rxe_net.c | 6 ++++++ > drivers/infiniband/sw/rxe/rxe_resp.c | 5 +++++ > 3 files changed, 11 insertions(+), 1 deletion(-) Applied to for-rc, thanks Jason