From: swise@opengridcomputing.com (Steve Wise)
Subject: [PATCH] nvmet-rdma: fix possible bogus dereference under heavy load
Date: Sat, 1 Sep 2018 07:40:39 -0500 [thread overview]
Message-ID: <003801d441f0$fdc37a70$f94a6f50$@opengridcomputing.com> (raw)
In-Reply-To: <20180901074414.GA32538@lst.de>
> -----Original Message-----
> From: Christoph Hellwig <hch at lst.de>
> Sent: Saturday, September 1, 2018 2:44 AM
> To: Sagi Grimberg <sagi at grimberg.me>
> Cc: linux-nvme at lists.infradead.org; Steve Wise
> <swise at opengridcomputing.com>; Christoph Hellwig <hch at lst.de>
> Subject: Re: [PATCH] nvmet-rdma: fix possible bogus dereference under
> heavy load
>
> On Fri, Aug 31, 2018@06:14:47PM -0700, Sagi Grimberg wrote:
> > Currently we always repost the recv buffer before we send a response
> > capsule back to the host. Since ordering is not guaranteed for send
> > and recv completions, it is posible that we will receive a new request
> > from the host before we got a send completion for the response capsule.
> >
> > Today, we pre-allocate 2x rsps the length of the queue, but in reality,
under
> > heavy load there is nothing that is really preventing the gap to expand
> > until we exhaust all our rsps.
>
> This is a little scary and means we have the same issue in all other
> protocol drivers. It also means that there probably is no point in
> allocating twice the queue length as it will be wasted most of the
> time, but still not enough.
I'm not sure the other protocols have this issue. Where is the similar
issue in ib_isert?
If we made the rsp struct part of the nvmet_rdma_cmd, then we could remove
this issue and the list management involved with the nvmet_rdma_rsp struct.
Then we're ensured that when we get a nvme command from the host via a
recv_done completion, we have a rsp.
Steve
next prev parent reply other threads:[~2018-09-01 12:40 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-09-01 1:14 [PATCH] nvmet-rdma: fix possible bogus dereference under heavy load Sagi Grimberg
2018-09-01 7:44 ` Christoph Hellwig
2018-09-01 12:40 ` Steve Wise [this message]
2018-09-02 16:24 ` Max Gurtovoy
2018-09-03 10:42 ` Sagi Grimberg
2018-09-03 10:45 ` Sagi Grimberg
2018-09-03 14:54 ` Max Gurtovoy
2018-09-03 10:35 ` Sagi Grimberg
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='003801d441f0$fdc37a70$f94a6f50$@opengridcomputing.com' \
--to=swise@opengridcomputing.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;
as well as URLs for NNTP newsgroup(s).