[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1675755374-107598-1-git-send-email-alibuda@linux.alibaba.com>
Date: Tue, 7 Feb 2023 15:36:12 +0800
From: "D. Wythe" <alibuda@...ux.alibaba.com>
To: kgraul@...ux.ibm.com, wenjia@...ux.ibm.com, jaka@...ux.ibm.com
Cc: kuba@...nel.org, davem@...emloft.net, netdev@...r.kernel.org,
linux-s390@...r.kernel.org, linux-rdma@...r.kernel.org
Subject: [net-next 0/2] Deliver confirm/delete rkey message in parallel
From: "D. Wythe" <alibuda@...ux.alibaba.com>
According to the SMC protocol specification, we know that all flows except
confirm_rkey adn delete_rkey are exclusive, confirm/delete rkey flows
can run concurrently (local and remote).
However, although the protocol allows, all flows are actually mutually
exclusive in implementation, deus to we are waiting for LLC message
in serial.
On the one hand, this implementation does not conform to the protocol
specification, on the other hand, this implementation aggravates the
time for establishing or destroying a SMC-R connection, connection
have to be queued in smc_llc_wait.
This patch will improve the performance of the short link scenario
by about 5%. In fact, we all know that the performance bottleneck
of the short link scenario is not here.
This patch try use rtokens or rkey to correlate a confirm/delete
rkey message with its response.
This patch contains two parts.
At first, we have added the process
of asynchronously waiting for the response of confirm/delete rkey
messages, using rtokens or rkey to be correlate with.
And then, we try to send confirm/delete rkey message in parallel,
allowing parallel execution of start (remote) or initialization (local)
SMC_LLC_FLOW_RKEY flows.
D. Wythe (2):
net/smc: allow confirm/delete rkey response deliver multiplex
net/smc: make SMC_LLC_FLOW_RKEY run concurrently
net/smc/smc_core.h | 1 +
net/smc/smc_llc.c | 263 +++++++++++++++++++++++++++++++++++++++++------------
net/smc/smc_llc.h | 6 ++
net/smc/smc_wr.c | 10 --
net/smc/smc_wr.h | 10 ++
5 files changed, 220 insertions(+), 70 deletions(-)
--
1.8.3.1
Powered by blists - more mailing lists