linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Doug Ledford <dledford@redhat.com>
To: Tom Talpey <tom@talpey.com>
Cc: "ira.weiny" <ira.weiny@intel.com>,
	Michael Wang <yun.wang@profitbricks.com>,
	Liran Liss <liranl@mellanox.com>,
	Roland Dreier <roland@kernel.org>,
	Sean Hefty <sean.hefty@intel.com>,
	Hal Rosenstock <hal@dev.mellanox.co.il>,
	"linux-rdma@vger.kernel.org" <linux-rdma@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	Steve Wise <swise@opengridcomputing.com>,
	Jason Gunthorpe <jgunthorpe@obsidianresearch.com>,
	Tom Tucker <tom@opengridcomputing.com>,
	Hoang-Nam Nguyen <hnguyen@de.ibm.com>,
	"raisch@de.ibm.com" <raisch@de.ibm.com>,
	Mike Marciniszyn <infinipath@intel.com>,
	Eli Cohen <eli@mellanox.com>,
	Faisal Latif <faisal.latif@intel.com>,
	Jack Morgenstein <jackm@dev.mellanox.co.il>,
	Or Gerlitz <ogerlitz@mellanox.com>,
	Haggai Eran <haggaie@mellanox.com>
Subject: Re: [PATCH v6 01/26] IB/Verbs: Implement new callback query_transport()
Date: Mon, 27 Apr 2015 21:24:35 -0400	[thread overview]
Message-ID: <1430184275.44548.44.camel@redhat.com> (raw)
In-Reply-To: <553EDA01.9040708@talpey.com>

[-- Attachment #1: Type: text/plain, Size: 3623 bytes --]

On Mon, 2015-04-27 at 17:53 -0700, Tom Talpey wrote:
> On 4/27/2015 5:36 PM, Doug Ledford wrote:
> > On Mon, 2015-04-27 at 17:16 -0700, Tom Talpey wrote:
> >> On 4/27/2015 2:52 PM, ira.weiny wrote:
> >>> On Mon, Apr 27, 2015 at 09:39:05AM +0200, Michael Wang wrote:
> >>>> On 04/24/2015 05:12 PM, Liran Liss wrote:
> >>>>> [snip]
> >>>>
> >>>> Like:
> >>>>
> >>>> enum rdma_protocol {
> >>>> 	RDMA_PROTOCOL_IB,
> >>>> 	RDMA_PROTOCOL_IBOE,
> >>>> 	RDMA_PROTOCOL_IWARP,
> >>>> 	RDMA_PROTOCOL_USNIC_UDP
> >>>> };
> >>>>
> >>>> So we could use query_protocol() to ask device provide the protocol
> >>>> type, and there will be no mixing with the legacy transport type
> >>>> anymore :-)
> >>>
> >>> I'm ok with that.  I like introducing a unique namespace which is clearly
> >>> different from the previous "transport" one.
> >>
> >> I agree the word "transport" takes things into the weeds.
> >>
> >> But on the topic of naming protocols, I've been wondering, is there
> >> some reason that "IBOE" is being used instead of "RoCE"?
> >
> > Because back in the day, when RoCE was accepted into the kernel, I'm
> > pretty sure it was prior to the IBTA's final stamp of approval and
> > before the name was set on RoCE, so IBoE was chosen upstream as the more
> > "correct" name because it properly denoted what it was deemed to truly
> > be: IB Verbs over Ethernet.
> 
> Well history is all well and good, but it seems weird to not use the
> current, standard name in new code. It confuses me, anyway, because
> it seems like IBOE could easily mean something else.

Having some of it refer to things as IBOE and some as ROCE would be
similarly confusing, and switching existing IBOE usage to ROCE would
cause pain to people with out of tree drivers (Lustre is the main one I
know of).  There's not a good answer here.  There's only less sucky
ones.

> >> Also wondering, why add "UDP" to USNIC, is there a different USNIC?
> >
> > Yes, there are two transports, one a distinct ethertype and one that
> > encapsulates USNIC in UDP.
> 
> But this new enum isn't about transport, it's about protocol. So is
> there one USNIC protocol, with a raw layering and a separate one with
> UDP? Or is it one USNIC protocol with two different framings? Seems
> there should be at least the USNIC protocol, without the _UDP
> decoration, and I don't see it in the enum.

Keep in mind that this enum was Liran's response to Michael's original
patch.  In the enum in Michael's patch, there was both USNIC and
USNIC_UDP.

> >
> >> Naming multiple layers together seems confusing and maybe in the end
> >> will create more code to deal with the differences. For example, what
> >> token will RoCEv2 take? RoCE_UDP, RoCE_v2 or ... ?
> >
> > Uncertain as of now.
> 
> Ok, but it's imminent, right? What's the preference/guidance?

There is a patchset from Devesh Sharma at Emulex.  It added the RoCEv2
capability.  As I recall, it used a new flag added to the existing port
capabilities bitmask and notably did not modify either the node type or
link layer that are currently used to differentiate between the
different protocols.  That's from memory though, so I could be mistaken.

But that patchset was not written with this patchset in mind, and
merging the two may well change that.  In any case, there is a proposed
spec to follow, so for now that's the preference/guidance (unless this
rework means that we need to depart from the spec on internals for
implementation reasons).


-- 
Doug Ledford <dledford@redhat.com>
              GPG KeyID: 0E572FDD



[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

  reply	other threads:[~2015-04-28  1:25 UTC|newest]

Thread overview: 54+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-04-24 12:23 [PATCH v6 00/26] IB/Verbs: IB Management Helpers Michael Wang
2015-04-24 12:23 ` [PATCH v6 01/26] IB/Verbs: Implement new callback query_transport() Michael Wang
2015-04-24 14:29   ` Tom Talpey
2015-04-24 14:35     ` Michael Wang
2015-04-24 14:46       ` Tom Talpey
2015-04-24 16:00         ` Doug Ledford
2015-04-24 15:12   ` Liran Liss
2015-04-27  7:39     ` Michael Wang
2015-04-27 21:52       ` ira.weiny
2015-04-28  0:16         ` Tom Talpey
2015-04-28  0:36           ` Doug Ledford
2015-04-28  0:53             ` Tom Talpey
2015-04-28  1:24               ` Doug Ledford [this message]
2015-04-28  1:49                 ` Tom Talpey
2015-04-28  6:14                   ` Hefty, Sean
2015-04-28 19:50                     ` Dave Goodell (dgoodell)
2015-04-28 19:53                       ` Hefty, Sean
2015-04-28 20:17                         ` Dave Goodell (dgoodell)
2015-04-28 14:29                 ` Michael Wang
2015-04-28 18:56                 ` Jason Gunthorpe
2015-04-28 19:11                   ` Or Gerlitz
2015-04-28 20:02                     ` Doug Ledford
2015-04-28 20:03                   ` Doug Ledford
2015-04-24 12:23 ` [PATCH v6 02/26] IB/Verbs: Implement raw management helpers Michael Wang
2015-04-24 15:15   ` Liran Liss
2015-04-24 16:29     ` Jason Gunthorpe
2015-04-27  7:41       ` Michael Wang
2015-04-24 12:23 ` [PATCH v6 03/26] IB/Verbs: Reform IB-core mad/agent/user_mad Michael Wang
2015-04-24 12:23 ` [PATCH v6 04/26] IB/Verbs: Reform IB-core cm Michael Wang
2015-04-24 12:23 ` [PATCH v6 05/26] IB/Verbs: Reform IB-core sa_query Michael Wang
2015-04-24 12:23 ` [PATCH v6 06/26] IB/Verbs: Reform IB-core multicast Michael Wang
2015-04-24 12:23 ` [PATCH v6 07/26] IB/Verbs: Reform IB-ulp ipoib Michael Wang
2015-04-24 12:23 ` [PATCH v6 08/26] IB/Verbs: Reform IB-ulp xprtrdma Michael Wang
2015-04-24 12:23 ` [PATCH v6 09/26] IB/Verbs: Reform IB-core verbs Michael Wang
2015-04-24 12:23 ` [PATCH v6 10/26] IB/Verbs: Reform cm related part in IB-core cma/ucm Michael Wang
2015-04-24 12:23 ` [PATCH v6 11/26] IB/Verbs: Reform route related part in IB-core cma Michael Wang
2015-04-24 12:23 ` [PATCH v6 12/26] IB/Verbs: Reform mcast " Michael Wang
2015-04-24 12:23 ` [PATCH v6 13/26] IB/Verbs: Reserve legacy transport type in 'dev_addr' Michael Wang
2015-04-24 12:23 ` [PATCH v6 14/26] IB/Verbs: Reform cma_acquire_dev() Michael Wang
2015-04-24 12:23 ` [PATCH v6 15/26] IB/Verbs: Reform rest part in IB-core cma Michael Wang
2015-04-24 12:23 ` [PATCH v6 16/26] IB/Verbs: Use management helper cap_ib_mad() Michael Wang
2015-04-24 12:23 ` [PATCH v6 17/26] IB/Verbs: Use management helper cap_ib_smi() Michael Wang
2015-04-24 12:23 ` [PATCH v6 18/26] IB/Verbs: Use management helper cap_ib_cm() Michael Wang
2015-04-24 12:23 ` [PATCH v6 19/26] IB/Verbs: Use management helper cap_iw_cm() Michael Wang
2015-04-24 12:23 ` [PATCH v6 20/26] IB/Verbs: Use management helper cap_ib_sa() Michael Wang
2015-04-24 12:23 ` [PATCH v6 21/26] IB/Verbs: Use management helper cap_ib_mcast() Michael Wang
2015-04-24 12:23 ` [PATCH v6 22/26] IB/Verbs: Use management helper cap_read_multi_sge() Michael Wang
2015-04-24 12:23 ` [PATCH v6 23/26] IB/Verbs: Use management helper cap_af_ib() Michael Wang
2015-04-24 12:23 ` [PATCH v6 24/26] IB/Verbs: Use management helper cap_eth_ah() Michael Wang
2015-04-24 12:23 ` [PATCH v6 25/26] IB/Verbs: Clean up rdma_ib_or_iboe() Michael Wang
2015-04-24 12:23 ` [PATCH v6 26/26] IB/Verbs: Cleanup rdma_node_get_transport() Michael Wang
2015-04-24 13:13 ` [PATCH v6 00/26] IB/Verbs: IB Management Helpers Michael Wang
2015-04-27  7:19   ` Devesh Sharma
2015-04-27  7:44     ` Michael Wang

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=1430184275.44548.44.camel@redhat.com \
    --to=dledford@redhat.com \
    --cc=eli@mellanox.com \
    --cc=faisal.latif@intel.com \
    --cc=haggaie@mellanox.com \
    --cc=hal@dev.mellanox.co.il \
    --cc=hnguyen@de.ibm.com \
    --cc=infinipath@intel.com \
    --cc=ira.weiny@intel.com \
    --cc=jackm@dev.mellanox.co.il \
    --cc=jgunthorpe@obsidianresearch.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-rdma@vger.kernel.org \
    --cc=liranl@mellanox.com \
    --cc=ogerlitz@mellanox.com \
    --cc=raisch@de.ibm.com \
    --cc=roland@kernel.org \
    --cc=sean.hefty@intel.com \
    --cc=swise@opengridcomputing.com \
    --cc=tom@opengridcomputing.com \
    --cc=tom@talpey.com \
    --cc=yun.wang@profitbricks.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).