All of lore.kernel.org
 help / color / mirror / Atom feed
From: Or Gerlitz <ogerlitz-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
To: Steve Wise <swise-7bPotxP6k4+P2YhJcF5u+vpXobYPEAuW@public.gmane.org>
Cc: Roland Dreier <roland-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
	linux-rdma <linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	Christoph Lameter <cl-vYTEC60ixJUAvxtiuMwx3w@public.gmane.org>,
	Liran Liss <liranl-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
Subject: Re: [PATCH 0/4] add RAW Packet QP type
Date: Tue, 17 Jan 2012 17:59:39 +0200	[thread overview]
Message-ID: <4F159AEB.1060603@mellanox.com> (raw)
In-Reply-To: <4F158ED7.3080405-7bPotxP6k4+P2YhJcF5u+vpXobYPEAuW@public.gmane.org>

On 1/17/2012 5:08 PM, Steve Wise wrote:
> I think this series should add some new send flags for HW that does 
> checksum offload [...] also, on ingress, most hardware can do INET 
> checksum validation, and a way to indicate the results to the 
> application is needed.  Perhaps flags in the CQE? [...] another form 
> of HW assist is with VLAN insertion/extraction.  The API should 
> provide a way to specify if a VLAN ID should be inserted by HW and 
> removed from a packet on ingress (and passed to the app via the CQE).  
> In fact, we probably want a way to associate a VLAN with a RAW QP, 
> maybe as a QP attribute?

Hi Steve,

Nice to see how a discussion is quickly revived when the subject is 
close to people's needs... anyway, yep, sure, this submission allows for 
basic functionality, as I mentioned and there's more to add here, but 
this could (should...) be done gradually,  i.e in steps that adds on the 
basic patch. Now to the points you've raised:

Sure, we want to be able to do checksum offload on TX and on RX as well. 
Adding checksum offload support will be done with a patch to libibverbs 
which is similar in spirit to commit e0605d "IB/core: Add IP checksum 
offload support" subject to reporting the RX checksum okay through new 
IB_WC_IP_CSUM_OK bit in ibv_wc->wc_flags along the lines of the patch I 
sent last week to the kernel. So we will have a new device capability 
and two new bit flags IB_SEND_IP_CSUM and IB_WC_IP_CSUM_OK, no ABI 
breaking... happy.

Less simple will be to add support in libibverbs and the low level 
driver libraries, for Large-Send-Offload, e.g in the spirit of commits 
b846f25aa "IB/core: Add creation flags to struct ib_qp_init_attr" and 
c93570f2 "IB/core: Add IPoIB UD LSO support", since we probably need to 
be able to specify something in the qp creation (Sean's verbs extension 
proposal!) and add fields to struct ibv_send_wr.wr.ud, in the WR case, 
we need more 16 (= 8 + 4 + 4) bytes, where it seems before the patch we 
have 12 bytes extra from wr.atomic, I need to check the compiler packing 
here...

> diff --git a/include/infiniband/verbs.h b/include/infiniband/verbs.h
> index 6acfc81..81bc55f 100644
> --- a/include/infiniband/verbs.h
> +++ b/include/infiniband/verbs.h
> @@ -534,6 +534,9 @@ struct ibv_send_wr {
>                         struct ibv_ah  *ah;
>                         uint32_t        remote_qpn;
>                         uint32_t        remote_qkey;
> +                       void            *header;
> +                       uint32_t        hlen;
> +                       uint32_t        mss;
>                 } ud;
>         } wr;
>  };


As for vlan stripping/insertion, I'm not having definitive opinion yet - 
if we don't expect the system (library, firmware, hardware) to 
insert/strip the L2 MAC header, I', not sure what does it buy us to have 
the vlan tag inserted/stripped?

As for your comment on vlan association with raw qp, do you actually 
refer to the steering work the HCA/NIC should do w.r.t that qp? e.g 
you'd like to have L2 elements in the tuple/rule which is used to steer 
packets to that QP?

Or.


--
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

  parent reply	other threads:[~2012-01-17 15:59 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <alpine.LRH.2.00.1201171330540.24946@ogerlitz.voltaire.com>
     [not found] ` <alpine.LRH.2.00.1201171330540.24946-VYr5/9ddeaGSIdy2EShu12Xnswh1EIUO@public.gmane.org>
2012-01-17 11:37   ` [PATCH 1/4] IB/core: add RAW Packet QP type Or Gerlitz
     [not found]     ` <alpine.LRH.2.00.1201171337040.26871-VYr5/9ddeaGSIdy2EShu12Xnswh1EIUO@public.gmane.org>
2012-01-19  1:28       ` Hefty, Sean
     [not found]         ` <1828884A29C6694DAF28B7E6B8A823732DC04FDC-P5GAC/sN6hmkrb+BlOpmy7fspsVTdybXVpNB7YpNyf8@public.gmane.org>
2012-02-16  3:59           ` Or Gerlitz
     [not found]             ` <CAJZOPZKbdQF1pb7wQNjk23D4hpVgsYF1RNvtq9zDVURLxkLRzA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2012-02-16 15:27               ` Christoph Lameter
     [not found]                 ` <alpine.DEB.2.00.1202160926460.26083-sBS69tsa9Uj/9pzu0YdTqQ@public.gmane.org>
2012-03-12 16:41                   ` Or Gerlitz
     [not found]                     ` <4F5E272B.6060909-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2012-03-12 19:29                       ` Christoph Lameter
2012-03-01 10:17       ` [PATCH V1 " Or Gerlitz
2012-04-24 23:42       ` [PATCH " Roland Dreier
2012-01-17 11:39   ` [PATCH 2/4] IB/mlx4: add Raw Packet QP support Or Gerlitz
     [not found]     ` <alpine.LRH.2.00.1201171338430.26871-VYr5/9ddeaGSIdy2EShu12Xnswh1EIUO@public.gmane.org>
2012-01-18 18:47       ` Hefty, Sean
     [not found]         ` <1828884A29C6694DAF28B7E6B8A823732DC04E97-P5GAC/sN6hmkrb+BlOpmy7fspsVTdybXVpNB7YpNyf8@public.gmane.org>
2012-01-18 21:11           ` Or Gerlitz
2012-01-17 11:41   ` [PATCH libibverbs 3/4] add RAW Packet QP type Or Gerlitz
2012-01-17 11:42   ` [PATCH libmlx4 4/4] add Raw Packet QP support Or Gerlitz
2012-01-17 15:08   ` [PATCH 0/4] add RAW Packet QP type Steve Wise
     [not found]     ` <4F158ED7.3080405-7bPotxP6k4+P2YhJcF5u+vpXobYPEAuW@public.gmane.org>
2012-01-17 15:30       ` Walukiewicz, Miroslaw
2012-01-17 15:59       ` Or Gerlitz [this message]
     [not found]         ` <4F159AEB.1060603-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2012-01-17 16:21           ` Steve Wise
     [not found]             ` <4F15A008.9010303-7bPotxP6k4+P2YhJcF5u+vpXobYPEAuW@public.gmane.org>
2013-05-20 22:43               ` Shawn Bohrer
     [not found]                 ` <20130520224308.GA16639-/vebjAlq/uFE7V8Yqttd03bhEEblAqRIDbRjUBewulXQT0dZR+AlfA@public.gmane.org>
2013-05-21 19:57                   ` 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=4F159AEB.1060603@mellanox.com \
    --to=ogerlitz-vpraknaxozvwk0htik3j/w@public.gmane.org \
    --cc=cl-vYTEC60ixJUAvxtiuMwx3w@public.gmane.org \
    --cc=linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=liranl-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org \
    --cc=roland-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
    --cc=swise-7bPotxP6k4+P2YhJcF5u+vpXobYPEAuW@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.