RDMA/rxe: Correct skb on loopback path
authorBob Pearson <rpearsonhpe@gmail.com>
Thu, 28 Jan 2021 18:23:02 +0000 (12:23 -0600)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 4 Mar 2021 10:38:04 +0000 (11:38 +0100)
commita46f34ba2563425b98bf6c087f8857f64fa8871f
tree22c42f7461783ab2e541aaf8a9522e398a8fd581
parent54bdcd7b8f0a6b60355a26ac889fa09f1940a79d
RDMA/rxe: Correct skb on loopback path

[ Upstream commit 5120bf0a5fc15dec210a0fe0f39e4a256bb6e349 ]

rxe_net.c sends packets at the IP layer with skb->data pointing at the IP
header but receives packets from a UDP tunnel with skb->data pointing at
the UDP header.  On the loopback path this was not correctly accounted
for.  This patch corrects for this by using sbk_pull() to strip the IP
header from the skb on received packets.

Fixes: 8700e3e7c485 ("Soft RoCE driver")
Link: https://lore.kernel.org/r/20210128182301.16859-1-rpearson@hpe.com
Signed-off-by: Bob Pearson <rpearson@hpe.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/infiniband/sw/rxe/rxe_net.c