public inbox for linux-rdma@vger.kernel.org
 help / color / mirror / Atom feed
From: "Yanjun.Zhu" <yanjun.zhu@linux.dev>
To: Leon Romanovsky <leon@kernel.org>, Zhu Yanjun <yanjun.zhu@linux.dev>
Cc: jgg@ziepe.ca, zyjzyj2000@gmail.com, shuah@kernel.org,
	linux-rdma@vger.kernel.org, linux-kselftest@vger.kernel.org,
	dsahern@kernel.org
Subject: Re: [PATCH v5 1/4] RDMA/nldev: Add dellink function pointer
Date: Tue, 10 Mar 2026 18:58:00 -0700	[thread overview]
Message-ID: <5700c718-d10e-4b23-adfc-c14ee1930b18@linux.dev> (raw)
In-Reply-To: <20260310190140.GL12611@unreal>

On 3/10/26 12:01 PM, Leon Romanovsky wrote:
> It is an RXE‑specific description, but you are adding code to the general
> nldev path. Please clarify that this behavior applies only to RXE, and
> include examples showing when and how it is invoked. In particular, explain
> how the socket is cleaned up if delink is not called.

Hi, Leon

You are correct that this logic should be driver-specific. I will add an 
explicit check for RDMA_DRIVER_RXE in the nldev path to ensure this 
behavior is strictly scoped to RXE and does not impact other drivers 
(like iWARP).

This function path is primarily invoked when a user executes the 
administrative command: rdma link delete <dev>.

Regarding socket cleanup: RXE does not rely solely on this path for 
resource management. It monitors the underlying net_device state via a 
registered netdev_notifier. Even if delink is not explicitly called 
(e.g., if the parent interface is removed or the driver is forcefully 
unloaded), the rxe_net_event callback ensures that the transport sockets 
are forcibly closed and all allocated resources are released when the 
parent net_device is destroyed.

The code diff is as below:

--- a/drivers/infiniband/core/nldev.c
+++ b/drivers/infiniband/core/nldev.c
@@ -1824,6 +1824,12 @@ static int nldev_dellink(struct sk_buff *skb, 
struct nlmsghdr *nlh,
                 return -EINVAL;
         }

+       if (device->link_ops && device->ops.driver_id == RDMA_DRIVER_RXE) {
+               err = device->link_ops->dellink(device);
+               if (err)
+                       return err;
+       }
+
         ib_unregister_device_and_put(device);
         return 0;
  }

Zhu Yanjun



  reply	other threads:[~2026-03-11  1:58 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-03-10  2:05 [PATCH v5 0/4] RDMA/rxe: Add the support that rxe can work in net namespace Zhu Yanjun
2026-03-10  2:05 ` [PATCH v5 1/4] RDMA/nldev: Add dellink function pointer Zhu Yanjun
2026-03-10 15:47   ` David Ahern
2026-03-10 19:01   ` Leon Romanovsky
2026-03-11  1:58     ` Yanjun.Zhu [this message]
2026-03-11  8:54       ` Leon Romanovsky
2026-03-11 22:01         ` Yanjun.Zhu
2026-03-11 22:09           ` Yanjun.Zhu
2026-03-12  2:04           ` David Ahern
2026-03-12  3:59             ` Zhu Yanjun
2026-03-12  5:09               ` Zhu Yanjun
2026-03-12 18:04                 ` Yanjun.Zhu
2026-03-10  2:05 ` [PATCH v5 2/4] RDMA/rxe: Add net namespace support for IPv4/IPv6 sockets Zhu Yanjun
2026-03-10 15:48   ` David Ahern
2026-03-10  2:05 ` [PATCH v5 3/4] RDMA/rxe: Support RDMA link creation and destruction per net namespace Zhu Yanjun
2026-03-10 15:48   ` David Ahern
2026-03-10 18:57   ` Leon Romanovsky
2026-03-10 20:32     ` Yanjun.Zhu
2026-03-11  8:45       ` Leon Romanovsky
2026-03-11 19:08         ` Yanjun.Zhu
2026-03-10  2:05 ` [PATCH v5 4/4] RDMA/rxe: Add testcase for net namespace rxe Zhu Yanjun
2026-03-10 15:49   ` David Ahern
2026-03-10 18:53   ` Leon Romanovsky
2026-03-10 21:01     ` Yanjun.Zhu
2026-03-11  8:51       ` Leon Romanovsky
2026-03-11 22:51         ` Yanjun.Zhu

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=5700c718-d10e-4b23-adfc-c14ee1930b18@linux.dev \
    --to=yanjun.zhu@linux.dev \
    --cc=dsahern@kernel.org \
    --cc=jgg@ziepe.ca \
    --cc=leon@kernel.org \
    --cc=linux-kselftest@vger.kernel.org \
    --cc=linux-rdma@vger.kernel.org \
    --cc=shuah@kernel.org \
    --cc=zyjzyj2000@gmail.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