[PD][NixlPush] Skip extra `add_remote_agent` step in D->P handshake (#49345)

Signed-off-by: NickLucche <nicolo.lucchesi@mistral.ai>

Nicolò Lucchesi committed Jul 28, 2026 at 14:57 UTC 98e91a9600eb75b2de14ef27f13b10088d1a1279
2 files changed +6 -3
vllm/distributed/kv_transfer/kv_connector/v1/nixl/base_worker.py
+2 -1
@@ -700,8 +700,9 @@ class NixlBaseConnectorWorker:
700 )
701 setup_agent_time = time.perf_counter()
702 logger.debug(
703 - "NIXL handshake: add agent took: %s",
703 + "NIXL handshake: add agent took: %s (notif_agents_only=%s)",
704 setup_agent_time - got_metadata_time,
705 + notif_agents_only,
706 )
707 remote_ranks = (remote_pp_rank, remote_rank)
708 remote_rank_to_agent_name[remote_ranks] = remote_agent_name
vllm/distributed/kv_transfer/kv_connector/v1/nixl/push_worker.py
+4 -2
@@ -299,8 +299,10 @@ class NixlPushConnectorWorker(NixlBaseConnectorWorker):
299 reg_data["remote_port"],
300 reg_data["remote_tp_size"],
301 pp_size=remote_pp_size,
302 - # D never addresses P memory in push mode; just load P's agents.
303 - notif_agents_only=remote_pp_size > 1,
302 + # D only ever sends PUSH_REG notifs to P and never reads or writes
303 + # P's memory in push mode, so it never needs the transfer
304 + # descriptors set up by the full add_remote_agent path.
305 + notif_agents_only=True,
306 )
307 if fut is None:
308 self._do_send_reg_notif(req_id, reg_data)