From: Saeed Mahameed <saeedm@mellanox.com>
To: Leon Romanovsky <leonro@mellanox.com>
Cc: "netdev@vger.kernel.org" <netdev@vger.kernel.org>,
"linux-rdma@vger.kernel.org" <linux-rdma@vger.kernel.org>
Subject: Re: [PATCH V2 mlx5-next 00/13] Mellanox, mlx5 vport metadata matching
Date: Wed, 26 Jun 2019 19:05:46 +0000 [thread overview]
Message-ID: <773d05d69aa291631fd99425841a4c17a39e098f.camel@mellanox.com> (raw)
In-Reply-To: <20190625174727.20309-1-saeedm@mellanox.com>
On Tue, 2019-06-25 at 17:47 +0000, Saeed Mahameed wrote:
> This series includes mlx5 updates for both rdma and net-next trees.
> In case of no objection it will be applied to mlx5-next branch and
> later
> on will be sent as pull request to rdma and net-next.
>
> From Jianbo, Vport meta data matching:
>
> Hardware steering has no notion of vport number, and vport is an
> abstract concept, so firmware need to translate the source vport
> matching to match on the VHCA ID (Virtual HCA ID).
>
> In dual-port RoCE, the dual-port VHCA is able to send also on the
> second port on behalf of the affiliated vport, so now we can’t assume
> anymore that vport is represented by single VHCA only.
>
> To resolve this issue, we use metadata register as source port
> indicator instead.
>
> When a packet enters the eswitch, eswitch ingress traffic passes the
> ingress ACL flow tables, where we tag the packets (via the metadata
> value, in this case REG_C at index 0) with a unique value which will
> act as an alias of the vport. In order to guarantee uniqueness, we
> use
> the eswitch owner vhca id and the vport number as that value.
>
> Usually, the vports are numbered in each eswitch as followed:
> - Physical Function (PF) vport, the number is 0.
> - Virtual Function (VF) vport, starting from 1.
> - Uplink vport, the reserved vport number for it is 0xFFFF.
>
> With the metadata in each packet, we can then do matching on it, in
> both fast path and slow path.
>
> For slow path, there is a representor for each vport. Packet that
> misses all offloaded rules in FDB, will be forwarded to the eswitch
> manager vport. In its NIC RX, it then will be steered to the right
> representor. The rules, which decide the destination representor,
> previously were matching on source port, will now match metadata
> instead.
>
Series applied to mlx5-next.
Thanks everyone!
Saeed.
prev parent reply other threads:[~2019-06-26 19:05 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-06-25 17:47 [PATCH V2 mlx5-next 00/13] Mellanox, mlx5 vport metadata matching Saeed Mahameed
2019-06-25 17:47 ` [PATCH V2 mlx5-next 01/13] net/mlx5: Introduce vport metadata matching bits and enum constants Saeed Mahameed
2019-06-25 17:47 ` [PATCH V2 mlx5-next 02/13] net/mlx5: Get vport ACL namespace by vport index Saeed Mahameed
2019-06-25 17:47 ` [PATCH V2 mlx5-next 03/13] net/mlx5: Support allocating modify header context from ingress ACL Saeed Mahameed
2019-06-25 17:47 ` [PATCH V2 mlx5-next 04/13] net/mlx5: Introduce a helper API to check VF vport Saeed Mahameed
2019-06-25 17:47 ` [PATCH V2 mlx5-next 05/13] net/mlx5: Add flow context for flow tag Saeed Mahameed
2019-06-25 17:48 ` [PATCH V2 mlx5-next 06/13] net/mlx5: E-Switch, Tag packet with vport number in VF vports and uplink ingress ACLs Saeed Mahameed
2019-06-25 17:48 ` [PATCH V2 mlx5-next 07/13] net/mlx5e: Specifying known origin of packets matching the flow Saeed Mahameed
2019-06-25 17:48 ` [PATCH V2 mlx5-next 08/13] net/mlx5: E-Switch, Add match on vport metadata for rule in fast path Saeed Mahameed
2019-06-25 17:48 ` [PATCH V2 mlx5-next 09/13] net/mlx5: E-Switch, Add query and modify esw vport context functions Saeed Mahameed
2019-06-25 17:48 ` [PATCH V2 mlx5-next 10/13] net/mlx5: E-Switch, Pass metadata from FDB to eswitch manager Saeed Mahameed
2019-06-25 17:48 ` [PATCH V2 mlx5-next 11/13] net/mlx5: E-Switch, Add match on vport metadata for rule in slow path Saeed Mahameed
2019-06-25 17:48 ` [PATCH V2 mlx5-next 12/13] RDMA/mlx5: Add vport metadata matching for IB representors Saeed Mahameed
2019-06-25 17:48 ` [PATCH V2 mlx5-next 13/13] net/mlx5: E-Switch, Enable vport metadata matching if firmware supports it Saeed Mahameed
2019-06-26 19:05 ` Saeed Mahameed [this message]
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=773d05d69aa291631fd99425841a4c17a39e098f.camel@mellanox.com \
--to=saeedm@mellanox.com \
--cc=leonro@mellanox.com \
--cc=linux-rdma@vger.kernel.org \
--cc=netdev@vger.kernel.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;
as well as URLs for NNTP newsgroup(s).