From: Walker, Benjamin <benjamin.walker at intel.com>
To: spdk@lists.01.org
Subject: Re: [SPDK] #416879 qp recovery: outstanding requests
Date: Tue, 17 Jul 2018 23:10:20 +0000 [thread overview]
Message-ID: <c51ea42ad6b67b45d93e8817616f65ad24a08f35.camel@intel.com> (raw)
In-Reply-To: DM6PR04MB49887F7606E0309BE1959E24865C0@DM6PR04MB4988.namprd04.prod.outlook.com
[-- Attachment #1: Type: text/plain, Size: 1205 bytes --]
On Tue, 2018-07-17 at 22:41 +0000, Philipp Skadorov wrote:
> Hi Benjamin,
>
> I have played with SoftRoCE and run through the real SNIC IB driver sources to
> see how it is possible to continue with the outstanding requests after the QP
> is recovered.
> When the QP goes into an error state (async event: IB_EVENT_QP_FATAL) and
> drains the CQ, it sends responses back with the error code IB_WC_WR_FLUSH_ERR
> (5) which makes the outstanding requests in SPDK sort of invalidated. It looks
> to me that dropping those outstanding SPDK requests and freeing resources the
> best way to go.
Ok - I assume there is some handling we need to implement on the initiator side
to deal with the IB_WC_WR_FLUSH_ERR responses. Maybe we should retry those on
the initiator side once the RDMA queue pair recovers? I just looked at the
specification and it doesn't have much to say on the issue beyond errors may
cause the RDMA QP to be terminated, and that the details were up to the specific
transport specification (Infiniband Verbs in this case).
I wonder if the other NVMe-oF initiator implementations attempt any sort of
error handling, or if they just terminate the QP.
Thanks,
Ben
next reply other threads:[~2018-07-17 23:10 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-07-17 23:10 Walker, Benjamin [this message]
-- strict thread matches above, loose matches on Subject: below --
2018-07-18 21:21 [SPDK] #416879 qp recovery: outstanding requests Walker, Benjamin
2018-07-18 19:15 Philipp Skadorov
2018-07-17 22:41 Philipp Skadorov
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=c51ea42ad6b67b45d93e8817616f65ad24a08f35.camel@intel.com \
--to=spdk@lists.01.org \
/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