From: Christoph Hellwig <hch@lst.de>
To: Bart Van Assche <bart.vanassche@sandisk.com>
Cc: Sagi Grimberg <sagig@dev.mellanox.co.il>,
Christoph Hellwig <hch@lst.de>,
linux-rdma@vger.kernel.org, axboe@fb.com,
linux-scsi@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 4/9] srpt: chain RDMA READ/WRITE requests
Date: Fri, 20 Nov 2015 11:20:52 +0100 [thread overview]
Message-ID: <20151120102052.GD24298@lst.de> (raw)
In-Reply-To: <564CA83B.4060403@sandisk.com>
On Wed, Nov 18, 2015 at 08:32:59AM -0800, Bart Van Assche wrote:
> As you know events like a cable pull can cause some of the RDMA work
> requests to succeed and others to fail. It is essential that all RDMA work
> requests related to the same SCSI command have finished before the buffers
> these requests operate upon are reused. The purpose of the SRPT_RDMA_ABORT
> request is to wait for the RDMA requests that were posted without
> IB_SEND_SIGNALED and for which no error completion will be received. BTW, I
> think this consideration applies to all SCSI target drivers and not only to
> SRP target drivers.
I think everyone understand the theroetical issue, but we'd like to
see a practical case that the implementation in isert and my proposed
srpt one don't handle.
Given that chained WRs must not be reordered the HCA must also give
us the completions in the order we submitted them. Because of that
the previous WRs must have been completed by the time we get the
notification for the last one which usually does the cleanup.
next prev parent reply other threads:[~2015-11-20 10:20 UTC|newest]
Thread overview: 86+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-11-13 13:46 add a proper completion queue abstraction Christoph Hellwig
2015-11-13 13:46 ` [PATCH 1/9] move blk_iopoll to limit and make it generally available Christoph Hellwig
2015-11-13 15:23 ` Or Gerlitz
2015-11-14 7:02 ` Christoph Hellwig
2015-11-15 8:48 ` Sagi Grimberg
2015-11-15 9:04 ` Or Gerlitz
2015-11-15 13:16 ` Sagi Grimberg
2015-11-15 12:51 ` Christoph Hellwig
2015-11-13 19:19 ` Bart Van Assche
2015-11-14 7:02 ` Christoph Hellwig
2015-11-17 17:16 ` Bart Van Assche
2015-11-17 17:27 ` Bart Van Assche
2015-11-18 13:58 ` Christoph Hellwig
2015-11-13 13:46 ` [PATCH 2/9] IB: add a proper completion queue abstraction Christoph Hellwig
2015-11-13 18:25 ` Jason Gunthorpe
2015-11-13 19:57 ` Bart Van Assche
2015-11-13 22:06 ` Jason Gunthorpe
2015-11-14 7:13 ` Christoph Hellwig
2015-11-23 20:37 ` Jason Gunthorpe
2015-11-23 21:04 ` Bart Van Assche
2015-11-23 21:28 ` Jason Gunthorpe
2015-11-23 21:54 ` Bart Van Assche
2015-11-23 22:18 ` Jason Gunthorpe
2015-11-23 22:33 ` Bart Van Assche
2015-11-23 23:06 ` Jason Gunthorpe
[not found] ` <B24F4DDE-709A-4D2D-8B26-4E83325DBB1A@asomi.com>
2015-11-24 0:00 ` Jason Gunthorpe
2015-11-24 0:34 ` Tom Talpey
2015-11-24 0:40 ` Jason Gunthorpe
2015-11-24 2:35 ` Caitlin Bestler
2015-11-24 7:03 ` Jason Gunthorpe
2015-11-24 12:52 ` Tom Talpey
2015-11-14 7:08 ` Christoph Hellwig
2015-11-23 20:01 ` Jason Gunthorpe
2015-11-23 20:57 ` Christoph Hellwig
2015-11-15 9:40 ` Sagi Grimberg
2015-11-15 12:55 ` Christoph Hellwig
2015-11-15 13:21 ` Sagi Grimberg
2015-11-17 17:52 ` Bart Van Assche
2015-11-18 7:55 ` Sagi Grimberg
2015-11-18 18:20 ` Bart Van Assche
2015-11-20 10:16 ` Christoph Hellwig
2015-11-20 16:50 ` Bart Van Assche
2015-11-22 9:51 ` Sagi Grimberg
2015-11-22 10:13 ` Christoph Hellwig
2015-11-22 10:36 ` Sagi Grimberg
2015-11-22 13:23 ` Christoph Hellwig
2015-11-22 14:57 ` Sagi Grimberg
2015-11-22 16:55 ` Bart Van Assche
2015-11-18 14:00 ` Christoph Hellwig
2015-11-13 13:46 ` [PATCH 3/9] IB: add a helper to safely drain a QP Christoph Hellwig
2015-11-13 16:16 ` Steve Wise
2015-11-14 7:05 ` Christoph Hellwig
2015-11-15 9:34 ` Sagi Grimberg
2015-11-16 16:38 ` Steve Wise
2015-11-16 18:30 ` Steve Wise
2015-11-16 18:37 ` Sagi Grimberg
2015-11-16 19:03 ` Steve Wise
2015-11-17 8:54 ` Sagi Grimberg
2015-11-23 10:28 ` Sagi Grimberg
2015-11-23 10:35 ` Sagi Grimberg
2015-11-23 14:33 ` 'Christoph Hellwig'
2015-11-23 14:48 ` Steve Wise
2015-11-23 14:44 ` Steve Wise
2015-11-17 17:06 ` Bart Van Assche
2015-11-18 7:59 ` Sagi Grimberg
2015-11-18 11:32 ` Sagi Grimberg
2015-11-18 14:06 ` Christoph Hellwig
2015-11-18 15:21 ` Steve Wise
2015-11-13 13:46 ` [PATCH 4/9] srpt: chain RDMA READ/WRITE requests Christoph Hellwig
2015-11-18 1:17 ` Bart Van Assche
2015-11-18 9:15 ` Sagi Grimberg
2015-11-18 16:32 ` Bart Van Assche
2015-11-20 10:20 ` Christoph Hellwig [this message]
2015-11-18 14:06 ` Christoph Hellwig
2015-11-13 13:46 ` [PATCH 5/9] srpt: use the new CQ API Christoph Hellwig
2015-11-17 18:22 ` Bart Van Assche
2015-11-17 19:38 ` Bart Van Assche
2015-11-18 14:03 ` Christoph Hellwig
2015-11-13 13:46 ` [PATCH 6/9] srp: " Christoph Hellwig
2015-11-17 19:56 ` Bart Van Assche
2015-11-18 14:03 ` Christoph Hellwig
2015-11-13 13:46 ` [PATCH 7/9] IB/iser: Use a dedicated descriptor for login Christoph Hellwig
2015-11-15 9:14 ` Or Gerlitz
2015-11-13 13:46 ` [PATCH 8/9] IB/iser: Use helper for container_of Christoph Hellwig
2015-11-13 13:46 ` [PATCH 9/9] IB/iser: Convert to CQ abstraction Christoph Hellwig
2015-11-15 9:21 ` Or Gerlitz
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=20151120102052.GD24298@lst.de \
--to=hch@lst.de \
--cc=axboe@fb.com \
--cc=bart.vanassche@sandisk.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rdma@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=sagig@dev.mellanox.co.il \
/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