From: Leon Romanovsky <leon@kernel.org>
To: Edward Srouji <edwards@nvidia.com>
Cc: jgg@ziepe.ca, linux-rdma@vger.kernel.org,
linux-kernel@vger.kernel.org, parav@nvidia.com,
cratiu@nvidia.com, vdumitrescu@nvidia.com, kuba@kernel.org,
tariqt@nvidia.com, mbloch@nvidia.com, gal@nvidia.com,
idosch@nvidia.com
Subject: Re: [PATCH v1 0/4] Fix local destination address resolution with VRF
Date: Thu, 18 Sep 2025 12:24:59 +0300 [thread overview]
Message-ID: <20250918092459.GC10800@unreal> (raw)
In-Reply-To: <20250916111103.84069-1-edwards@nvidia.com>
On Tue, Sep 16, 2025 at 02:10:59PM +0300, Edward Srouji wrote:
> From Parav:
>
> Presently, address resolve routines consider a destination to be local
> if the next-hop device of the resolved route for the destination is the
> loopback netdevice. While this works for simple configurations, it fails
> when the source and destination IP addresses belong to an enslaved
> netdevice of a VRF.
> In that case the next-hop device is the VRF itself, so packets are
> generated with an incorrect destination MAC on the VRF netdevice and
> ib_write_bw times out.
>
> This patch series fixes that by determining whether a destination is
> local based on the resolved route's type rather than on the next-hop
> netdevice's loopback flag.
> That approach resolves loopback traffic consistently both with and
> without VRF configurations.
>
> This series contains 4 patches:
> 1/4: refactor address resolution code for reuse by subsequent patches
> 2/4: resolve destination MAC via IP stack
> 3/4: use route table entry instead of netdev loopback flag
> 4/4: fix netdev lookup for IPoIB interfaces
>
> Parav.
>
> ---
>
> Changelog:
> v0 -> v1:
> - Addressed comments from Leon
> - Updated commit message to reflect that dev_addr fields are invalid in
> case of failure in PATCH 1/4
> - Removed incorrect commit log about 'no functional change' in PATCH 1/4
>
> v0: https://lore-kernel.gnuweeb.org/lkml/20250907160833.56589-5-edwards@nvidia.com/T/
>
> ---
>
> Parav Pandit (3):
> RDMA/core: Squash a single user static function
> RDMA/core: Resolve MAC of next-hop device without ARP support
> RDMA/core: Use route entry flag to decide on loopback traffic
>
> Vlad Dumitrescu (1):
> IB/ipoib: Ignore L3 master device
>
> drivers/infiniband/core/addr.c | 83 +++++++++++------------
> drivers/infiniband/ulp/ipoib/ipoib_main.c | 21 +++---
> 2 files changed, 50 insertions(+), 54 deletions(-)
I applied this series, but please never send series as reply-to. It
broke all flows: b4 automatic apply script, patchworks and "Thanks you .."
email.
Thanks
>
> --
> 2.21.3
>
prev parent reply other threads:[~2025-09-18 9:25 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-09-07 16:08 [PATCH 0/4] Fix local destination address resolution with VRF Edward Srouji
2025-09-07 16:08 ` [PATCH 1/4] RDMA/core: Squash a single user static function Edward Srouji
2025-09-10 8:17 ` Leon Romanovsky
2025-09-10 10:51 ` Parav Pandit
2025-09-10 12:21 ` Leon Romanovsky
2025-09-07 16:08 ` [PATCH 2/4] RDMA/core: Resolve MAC of next-hop device without ARP support Edward Srouji
2025-09-10 8:32 ` Leon Romanovsky
2025-09-10 10:55 ` Parav Pandit
2025-09-15 16:30 ` Jason Gunthorpe
2025-09-15 17:16 ` Parav Pandit
2025-09-07 16:08 ` [PATCH 3/4] RDMA/core: Use route entry flag to decide on loopback traffic Edward Srouji
2025-09-07 16:08 ` [PATCH 4/4] IB/ipoib: Ignore L3 master device Edward Srouji
2025-09-16 11:10 ` [PATCH v1 0/4] Fix local destination address resolution with VRF Edward Srouji
2025-09-16 11:11 ` [PATCH v1 1/4] RDMA/core: Squash a single user static function Edward Srouji
2025-09-16 11:11 ` [PATCH v1 2/4] RDMA/core: Resolve MAC of next-hop device without ARP support Edward Srouji
2025-09-16 11:11 ` [PATCH v1 3/4] RDMA/core: Use route entry flag to decide on loopback traffic Edward Srouji
2025-09-16 11:11 ` [PATCH v1 4/4] IB/ipoib: Ignore L3 master device Edward Srouji
2025-09-18 9:24 ` Leon Romanovsky [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250918092459.GC10800@unreal \
--to=leon@kernel.org \
--cc=cratiu@nvidia.com \
--cc=edwards@nvidia.com \
--cc=gal@nvidia.com \
--cc=idosch@nvidia.com \
--cc=jgg@ziepe.ca \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rdma@vger.kernel.org \
--cc=mbloch@nvidia.com \
--cc=parav@nvidia.com \
--cc=tariqt@nvidia.com \
--cc=vdumitrescu@nvidia.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox