From: Jason Gunthorpe <jgunthorpe-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
To: Parav Pandit <parav-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
Cc: Tom Talpey <tom-CLs1Zie5N5HQT0dZR+AlfA@public.gmane.org>,
Bart Van Assche
<Bart.VanAssche-XdAiOPVOjttBDgjK7y7TUQ@public.gmane.org>,
"leon-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org"
<leon-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
"dledford-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org"
<dledford-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
"linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
<linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
Idan Burstein <idanb-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
Subject: Re: [PATCH rdma-next 0/3] Support out of order data placement
Date: Sat, 22 Jul 2017 15:27:06 -0600 [thread overview]
Message-ID: <20170722212706.GA14714@obsidianresearch.com> (raw)
In-Reply-To: <VI1PR0502MB3008E483BB36F944C2E212ACD1A50-o1MPJYiShExKsLr+rGaxW8DSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
On Sat, Jul 22, 2017 at 05:32:05PM +0000, Parav Pandit wrote:
> >
> > Eg
> >
> > RDMA-W VA=0 Data=1
> > RDMA-R VA=0
> > RDMA-W VA=0 Data=2
> >
> > What does the read return? Spec says 1, but it sounds like this relaxed ordering
> > could return 2.
> >
> Spec says Data=1 on RDMA-R only if Fence is set on read operation in Table-76.
> Otherwise duplicate read request after executing RDMA-W2 of Data=2 can return Data=2 on read request.
Erm, I should have written it like this
Initial Condition VA=0 Data = 0
RDMA-W VA=0 Data=1
RDMA-R VA=0
Spec says 1 must be returned, but sounds like this relaxed version
could return 0. So RDMA Write -> RDMA Read degrades to a F
Similarly,
RDMA-W VA=0 Data=1
RDMA-W VA=0 Data=2
SEND
Sounds like with the relaxed version the app could see 1 at SEND CQ
time.
So RDMA-W -> RDMA-W degrades to a F
> > Whta about
> >
> > RDMA-W VA=0 Data=1
> > SEND WITH INVALIDATE VA=0
> > RDMA-W VA=0 Data=2
> >
> > Spec says the second RDMA-W must fail,
> Right.
>
> > but it sounds like this relaxed ordering would allow it to happen.
> No. Table 76 is followed in this case.
> 1st operation Write.
> 2nd operation send.
> There is implicit fence defined by '#' in Table, which is followed.
> So 2nd RDMA-W continue to fail.
So, I expect what is happening here is that the SEND RCQ is delayed
until the sequence numbers catch up, eg guarenteeing that all
packets prior to the SEND have been seen and committed to memory.
Which is what table 76 is primarily talking about.
However, SEND WITH INVALIDATE is a special cases that impacts the
processing of work itself, not just the CPU observation, which is a
bit outside what table 76 is talking about.
I'd advocate for allowing this to be out of order (but documented as
such), as impliclty fencing SEND WITH INVALIDATE is not acceptable for
performance and most workloads using that feature do not care about
this strict ordering.
The requirement is really that by the time the SEND RCQ is seen that
the INVALIDATE has taken effect.
Atomic are basically similar, sounds like Atomic Op -> RDMA Read should
degrade to a F as well. I'd say that is desired as well.
The point is we want a definition for this feature that is broad
enough to allow future hardware optimization, and not just some some
narrow defintion that follows what mlx5 happened to implement.
> I completely understand and agree that storage protocols who depend
> on RDMA-CM would like to have this. But again, unavailability of
> this bit in RDMA-CM is not a blocker for user land apps and let them
> start using it. Once RDMA-CM has it, storage kernel ULPs can also
> be enabled.
If there is no path to get this into the RDMA CM then it is just
another vendor feature and it does not belong in the common API.
Jason
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2017-07-22 21:27 UTC|newest]
Thread overview: 71+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-06-12 6:49 [PATCH rdma-next 0/3] Support out of order data placement Leon Romanovsky
[not found] ` <20170612064918.12510-1-leon-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
2017-06-12 6:49 ` [PATCH rdma-next 1/3] IB/core: Expose out of order data placement capability Leon Romanovsky
2017-06-12 6:49 ` [PATCH rdma-next 2/3] IB/uverbs: Enable user space programs to use out of order placement Leon Romanovsky
2017-06-12 6:49 ` [PATCH rdma-next 3/3] IB/mlx5: Support out of order data placement Leon Romanovsky
2017-06-12 15:28 ` [PATCH rdma-next 0/3] " Bart Van Assche
[not found] ` <1497281280.2770.1.camel-Sjgp3cTcYWE@public.gmane.org>
2017-06-12 16:19 ` Parav Pandit
[not found] ` <VI1PR0502MB3008478FC7C70D1F398FE2B2D1CD0-o1MPJYiShExKsLr+rGaxW8DSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
2017-06-12 16:29 ` Jason Gunthorpe
[not found] ` <20170612162917.GA11993-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-06-12 16:42 ` Parav Pandit
[not found] ` <VI1PR0502MB3008EA451DA9ECEBECE27362D1CD0-o1MPJYiShExKsLr+rGaxW8DSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
2017-06-12 16:43 ` Jason Gunthorpe
[not found] ` <20170612164343.GA12435-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-06-12 16:53 ` Parav Pandit
[not found] ` <VI1PR0502MB300831A1560531E67B29589DD1CD0-o1MPJYiShExKsLr+rGaxW8DSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
2017-06-12 16:55 ` Jason Gunthorpe
[not found] ` <20170612165536.GB12435-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-06-12 17:11 ` Parav Pandit
[not found] ` <VI1PR0502MB30089EDC828A142338B1EE06D1CD0-o1MPJYiShExKsLr+rGaxW8DSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
2017-06-12 17:14 ` Jason Gunthorpe
[not found] ` <20170612171436.GA12739-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-06-12 17:28 ` Parav Pandit
[not found] ` <VI1PR0502MB3008304F8465C19ACCFF3D68D1CD0-o1MPJYiShExKsLr+rGaxW8DSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
2017-06-12 17:32 ` Jason Gunthorpe
[not found] ` <20170612173221.GA13302-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-06-12 17:46 ` Parav Pandit
[not found] ` <VI1PR0502MB30081FD74492E97043F45BD8D1CD0-o1MPJYiShExKsLr+rGaxW8DSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
2017-06-12 17:51 ` Jason Gunthorpe
2017-06-12 21:09 ` Tom Talpey
[not found] ` <6747e257-67b0-a364-be21-04f73ef82ffe-CLs1Zie5N5HQT0dZR+AlfA@public.gmane.org>
2017-06-12 21:32 ` Parav Pandit
[not found] ` <VI1PR0502MB30080B672B80836FF0A328DCD1CD0-o1MPJYiShExKsLr+rGaxW8DSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
2017-06-12 21:41 ` Jason Gunthorpe
[not found] ` <20170612214135.GB30578-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-06-12 21:59 ` Parav Pandit
[not found] ` <VI1PR0502MB30087762738A4E02A1DA24D0D1CD0-o1MPJYiShExKsLr+rGaxW8DSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
2017-06-12 22:07 ` Jason Gunthorpe
[not found] ` <20170612220730.GA32510-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-06-12 22:16 ` Parav Pandit
[not found] ` <VI1PR0502MB30088258D7BADC83B0609F38D1CD0-o1MPJYiShExKsLr+rGaxW8DSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
2017-06-12 22:21 ` Jason Gunthorpe
2017-06-12 22:19 ` Tom Talpey
[not found] ` <475e1873-e842-ecb9-d260-34777da57e51-CLs1Zie5N5HQT0dZR+AlfA@public.gmane.org>
2017-06-12 22:54 ` Parav Pandit
[not found] ` <VI1PR0502MB3008B7FE60CAB3BD49907A1BD1CD0-o1MPJYiShExKsLr+rGaxW8DSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
2017-06-12 23:44 ` Tom Talpey
[not found] ` <d3a436a0-9ace-b11a-2e4c-387fc575877e-CLs1Zie5N5HQT0dZR+AlfA@public.gmane.org>
2017-06-12 23:59 ` Parav Pandit
[not found] ` <VI1PR0502MB3008E04612EED6BC83F37115D1CD0-o1MPJYiShExKsLr+rGaxW8DSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
2017-06-13 0:11 ` Tom Talpey
[not found] ` <fbdcf05b-ccd8-bd9c-c9c8-86f373303250-CLs1Zie5N5HQT0dZR+AlfA@public.gmane.org>
2017-06-13 0:36 ` Parav Pandit
[not found] ` <VI1PR0502MB30089271EB542493AA58060CD1C20-o1MPJYiShExKsLr+rGaxW8DSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
2017-06-13 1:30 ` Tom Talpey
[not found] ` <fb11f261-b80b-f71a-8076-204706267798-CLs1Zie5N5HQT0dZR+AlfA@public.gmane.org>
2017-06-13 19:17 ` Jason Gunthorpe
2017-06-23 16:03 ` Parav Pandit
2017-07-19 5:33 ` Parav Pandit
[not found] ` <VI1PR0502MB3008D488FEE8A7104A7B0A7CD1A60-o1MPJYiShExKsLr+rGaxW8DSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
2017-07-19 17:12 ` Jason Gunthorpe
[not found] ` <20170719171211.GB25714-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-07-20 15:06 ` Parav Pandit
2017-07-22 2:29 ` Tom Talpey
[not found] ` <142c2fed-baa5-1295-1458-be765c94b957-CLs1Zie5N5HQT0dZR+AlfA@public.gmane.org>
2017-07-22 4:50 ` Parav Pandit
[not found] ` <VI1PR0502MB300886ED1B5B1363B55F53F0D1A50-o1MPJYiShExKsLr+rGaxW8DSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
2017-07-22 5:03 ` Tom Talpey
[not found] ` <e5cee768-586c-516a-6056-ea4a44f89134-CLs1Zie5N5HQT0dZR+AlfA@public.gmane.org>
2017-07-22 5:32 ` Parav Pandit
[not found] ` <VI1PR0502MB30089915EB792CD20CA9D179D1A50-o1MPJYiShExKsLr+rGaxW8DSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
2017-07-22 14:51 ` Tom Talpey
[not found] ` <4444a96a-c1e6-ad33-204a-680982e19bfe-CLs1Zie5N5HQT0dZR+AlfA@public.gmane.org>
2017-07-22 15:11 ` Parav Pandit
2017-07-22 16:09 ` Jason Gunthorpe
[not found] ` <20170722160939.GA30007-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-07-22 17:32 ` Parav Pandit
[not found] ` <VI1PR0502MB3008E483BB36F944C2E212ACD1A50-o1MPJYiShExKsLr+rGaxW8DSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
2017-07-22 21:27 ` Jason Gunthorpe [this message]
[not found] ` <20170722212706.GA14714-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-08-01 18:14 ` Parav Pandit
[not found] ` <VI1PR0502MB300871C35E1CC06EB378D6C8D1B30-o1MPJYiShExKsLr+rGaxW8DSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
2017-08-01 19:00 ` Jason Gunthorpe
[not found] ` <20170801190052.GA31205-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-08-01 22:06 ` Parav Pandit
[not found] ` <VI1PR0502MB3008D65E9568764C4A781230D1B30-o1MPJYiShExKsLr+rGaxW8DSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
2017-08-01 23:37 ` Jason Gunthorpe
[not found] ` <20170801233754.GB10239-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-08-02 0:30 ` Parav Pandit
[not found] ` <VI1PR0502MB300860BDA4E6BD0B10F5DB1ED1B00-o1MPJYiShExKsLr+rGaxW8DSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
2017-08-02 2:48 ` Jason Gunthorpe
2017-06-27 9:47 ` Sagi Grimberg
2017-06-12 16:29 ` Bart Van Assche
[not found] ` <1497284956.2770.8.camel-Sjgp3cTcYWE@public.gmane.org>
2017-06-12 16:51 ` Parav Pandit
2017-06-12 17:18 ` Steve Wise
2017-06-12 17:37 ` Parav Pandit
[not found] ` <VI1PR0502MB3008CE85A4F274886B74DF2BD1CD0-o1MPJYiShExKsLr+rGaxW8DSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
2017-06-12 19:06 ` Dennis Dalessandro
[not found] ` <3fa7a4b5-5c19-8c6a-d78b-93219a9be888-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2017-06-12 19:19 ` Hefty, Sean
[not found] ` <1828884A29C6694DAF28B7E6B8A82373AB142A9B-P5GAC/sN6hkd3b2yrw5b5LfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2017-06-12 20:14 ` Parav Pandit
[not found] ` <VI1PR0502MB300885A1DD676E1649CDB268D1CD0-o1MPJYiShExKsLr+rGaxW8DSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
2017-06-12 20:35 ` Dennis Dalessandro
[not found] ` <b5279c09-027f-e374-ffde-7f236c52322c-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2017-06-12 20:46 ` Hefty, Sean
[not found] ` <1828884A29C6694DAF28B7E6B8A82373AB142BEC-P5GAC/sN6hkd3b2yrw5b5LfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2017-06-12 20:57 ` Steve Wise
2017-06-12 21:02 ` Jason Gunthorpe
[not found] ` <20170612210259.GA25652-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-06-12 21:18 ` Steve Wise
2017-06-12 21:22 ` Jason Gunthorpe
2017-06-12 21:53 ` Parav Pandit
[not found] ` <VI1PR0502MB30082486BC3B1669FE48764ED1CD0-o1MPJYiShExKsLr+rGaxW8DSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
2017-06-12 21:57 ` Jason Gunthorpe
[not found] ` <20170612215741.GA31693-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-06-12 22:00 ` Parav Pandit
2017-06-13 5:29 ` Leon Romanovsky
2017-06-12 20:41 ` Hefty, Sean
[not found] ` <1828884A29C6694DAF28B7E6B8A82373AB142BC8-P5GAC/sN6hkd3b2yrw5b5LfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2017-06-12 21:25 ` Parav Pandit
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=20170722212706.GA14714@obsidianresearch.com \
--to=jgunthorpe-epgobjl8dl3ta4ec/59zmfatqe2ktcn/@public.gmane.org \
--cc=Bart.VanAssche-XdAiOPVOjttBDgjK7y7TUQ@public.gmane.org \
--cc=dledford-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=idanb-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org \
--cc=leon-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
--cc=linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=parav-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org \
--cc=tom-CLs1Zie5N5HQT0dZR+AlfA@public.gmane.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