[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <9d5f532a-9ea1-42be-8628-4acb060753b3@linux.dev>
Date: Tue, 5 Dec 2023 13:50:25 +0800
From: Zhu Yanjun <yanjun.zhu@...ux.dev>
To: Bob Pearson <rpearsonhpe@...il.com>, jgg@...dia.com,
linux-rdma@...r.kernel.org, dsahern@...nel.org,
"davem@...emloft.net" <davem@...emloft.net>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>
Subject: Re: [PATCH for-next v5 0/7] RDMA/rxe: Make multicast work
Add David S. Miller and David Ahern.
They are the maintainers in netdev and very familiar with mcast.
Zhu Yanjun
在 2023/12/5 8:23, Bob Pearson 写道:
> After developing a test program which exercises node to node
> testing of RoCE multicast it became clear that there are a
> number of issues with the current rdma_rxe multicast implementation.
>
> The issues seen include:
> - There is no support for IPV4 multicast addresses.
> - Once a multicast MAC is added it is not removed.
> - Multicast packets are sent with the wrong QP number.
> - Multicast IP addresses are not created and without
> them no multicast packets received on the interface
> are delivered to the rdma_rxe driver.
> - The implementation in rxe_mcast.c is potentially
> racy if multiple simultaneous attach/detach operations
> are issued.
>
> This patch set fixes these issues.
> ---
> v5:
> Missed previous fix in error path. Add sock lock around
> ipv6_sock_mm_drop() in rxe_mcast_add6().
> v4:
> Corrected a lockdep bug reported by Zhu Yanjun.
> v3:
> Removed rxe_loop_and_send(). It turns out it is not needed.
> Added module parameters to set mcast limits to small values when
> driver is loaded to enable mcast limit testing.
> Rebased to current for-next branch.
> v2:
> Respond to comments by Zhu.
> Added more Fixes lines.
> Added some more explanation in the commit messages.
> Fixed an error in rxe_lookup_mcg. Should have checked
> the return from rxe_get_mcg().
>
> Bob Pearson (7):
> RDMA/rxe: Cleanup rxe_ah/av_chk_attr
> RDMA/rxe: Fix sending of mcast packets
> RDMA/rxe: Register IP mcast address
> RDMA/rxe: Let rxe_lookup_mcg use rcu_read_lock
> RDMA/rxe: Split multicast lock
> RDMA/rxe: Cleanup mcg lifetime
> RDMA/rxe: Add module parameters for mcast limits
>
> drivers/infiniband/sw/rxe/Makefile | 3 +-
> drivers/infiniband/sw/rxe/rxe.c | 8 +-
> drivers/infiniband/sw/rxe/rxe_av.c | 50 +--
> drivers/infiniband/sw/rxe/rxe_loc.h | 6 +-
> drivers/infiniband/sw/rxe/rxe_mcast.c | 526 +++++++++++--------------
> drivers/infiniband/sw/rxe/rxe_net.c | 6 +-
> drivers/infiniband/sw/rxe/rxe_net.h | 1 +
> drivers/infiniband/sw/rxe/rxe_opcode.h | 2 +-
> drivers/infiniband/sw/rxe/rxe_param.c | 23 ++
> drivers/infiniband/sw/rxe/rxe_param.h | 4 +
> drivers/infiniband/sw/rxe/rxe_qp.c | 4 +-
> drivers/infiniband/sw/rxe/rxe_recv.c | 11 +-
> drivers/infiniband/sw/rxe/rxe_req.c | 11 +-
> drivers/infiniband/sw/rxe/rxe_verbs.c | 5 +-
> drivers/infiniband/sw/rxe/rxe_verbs.h | 5 +-
> 15 files changed, 305 insertions(+), 360 deletions(-)
> create mode 100644 drivers/infiniband/sw/rxe/rxe_param.c
>
Powered by blists - more mailing lists