Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1276030

Re: [PATCH 2/9] IB: add a proper completion queue abstraction

From Caitlin Bestler <cait@asomi.com>
Newsgroups linux.kernel
Subject Re: [PATCH 2/9] IB: add a proper completion queue abstraction
Date 2015-11-24 03:50 +0100
Message-ID <qybQ6-22s-3@gated-at.bofh.it> (permalink)
References (6 earlier) <qy7CN-7Sa-1@gated-at.bofh.it> <qy8pc-8rU-5@gated-at.bofh.it> <qy8pc-8rU-3@gated-at.bofh.it> <qy9lg-zO-7@gated-at.bofh.it> <qy9lg-zO-5@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw



On 11/23/2015 4:00 PM, Jason Gunthorpe wrote:
> On Mon, Nov 23, 2015 at 03:30:42PM -0800, Caitlin Bestler wrote:
>>     The receive completion can be safely assumed to indicate transmit
>>     completion over a reliable connection unless your peer has gone
>>     completely bonkers and is replying to a command that it did not
>>     receive.
> Perhaps iWarp is different and does specify this ordering but IB does
> not.
>
> The issue with IB is how the ACK protocol is designed. There is not
> strong ordering between ACKs and data transfers. A HCA can send
> ACK,DATA and the network could drop the ACK. The recevier side does
> not know the ACK was lost and goes ahead to process DATA.
>
> Since only ACK advances the sendq and DATA advances the recvq it is
> trivial to get a case where the recvq is advanced with a reply while
> the sendq continues to wait for the ACK to be resent.
>
> Further IB allows ACK coalescing and has no rules for how an ACK is
> placed. It is entirely valid for a HCA to RECV,REPLY,ACK - for
> instance.
>
>
Is it possible for an IB HCA to transmit a response on a QP and not in 
that packet
or a previous packet acknowledge something that it has delivered to the 
user?

My recollection of the IB verbs is that they were unlikely to have 
overlooked something
like that. If it did slip through then there should be an errata.

But regardless of specification lawyering, is this an implementation 
issue. Are there
actual HCAs that make this mistake?

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Re: [PATCH 2/9] IB: add a proper completion queue abstraction Jason Gunthorpe <jgunthorpe@obsidianresearch.com> - 2015-11-23 21:40 +0100
  Re: [PATCH 2/9] IB: add a proper completion queue abstraction Jason Gunthorpe <jgunthorpe@obsidianresearch.com> - 2015-11-23 22:30 +0100
    Re: [PATCH 2/9] IB: add a proper completion queue abstraction Jason Gunthorpe <jgunthorpe@obsidianresearch.com> - 2015-11-23 23:20 +0100
      Re: [PATCH 2/9] IB: add a proper completion queue abstraction Jason Gunthorpe <jgunthorpe@obsidianresearch.com> - 2015-11-24 00:10 +0100
        Re: [PATCH 2/9] IB: add a proper completion queue abstraction Jason Gunthorpe <jgunthorpe@obsidianresearch.com> - 2015-11-24 01:10 +0100
          Re: [PATCH 2/9] IB: add a proper completion queue abstraction Jason Gunthorpe <jgunthorpe@obsidianresearch.com> - 2015-11-24 01:50 +0100
          Re: [PATCH 2/9] IB: add a proper completion queue abstraction Tom Talpey <tom@talpey.com> - 2015-11-24 01:50 +0100
          Re: [PATCH 2/9] IB: add a proper completion queue abstraction Caitlin Bestler <cait@asomi.com> - 2015-11-24 03:50 +0100
            Re: [PATCH 2/9] IB: add a proper completion queue abstraction Jason Gunthorpe <jgunthorpe@obsidianresearch.com> - 2015-11-24 08:10 +0100
              Re: [PATCH 2/9] IB: add a proper completion queue abstraction Tom Talpey <tom@talpey.com> - 2015-11-24 14:10 +0100

csiph-web