summaryrefslogtreecommitdiff
path: root/arch/tile
diff options
context:
space:
mode:
authorErez Shitrit <erezsh@mellanox.com>2017-02-01 19:10:05 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2017-03-15 09:57:13 +0800
commitbb4a21dcb6fb57892eea7c941fdfd57e55ba5dbe (patch)
tree2e3826fcfc16d2ae50f1191369fb873cb5eb2a0f /arch/tile
parent10beca53745eff651209fbd6d8ddbbc0f46c30a4 (diff)
IB/IPoIB: Add destination address when re-queue packet
commit 2b0841766a898aba84630fb723989a77a9d3b4e6 upstream. When sending packet to destination that was not resolved yet via path query, the driver keeps the skb and tries to re-send it again when the path is resolved. But when re-sending via dev_queue_xmit the kernel doesn't call to dev_hard_header, so IPoIB needs to keep 20 bytes in the skb and to put the destination address inside them. In that way the dev_start_xmit will have the correct destination, and the driver won't take the destination from the skb->data, while nothing exists there, which causes to packet be be dropped. The test flow is: 1. Run the SM on remote node, 2. Restart the driver. 4. Ping some destination, 3. Observe that first ICMP request will be dropped. Fixes: fc791b633515 ("IB/ipoib: move back IB LL address into the hard header") Signed-off-by: Erez Shitrit <erezsh@mellanox.com> Signed-off-by: Noa Osherovich <noaos@mellanox.com> Signed-off-by: Leon Romanovsky <leon@kernel.org> Tested-by: Yuval Shaia <yuval.shaia@oracle.com> Signed-off-by: Doug Ledford <dledford@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'arch/tile')
0 files changed, 0 insertions, 0 deletions