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
next prev 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.