Thread (52 messages) 52 messages, 9 authors, 2016-03-10

Re: [PATCH v3 1/3] fm10k: enable FTAG based forwarding

From: Wang, Xiao W <hidden>
Date: 2016-02-26 04:31:54

Hi,
-----Original Message-----
From: Richardson, Bruce
Sent: Friday, February 26, 2016 12:14 AM
To: Chen, Jing D <redacted>
Cc: Thomas Monjalon <redacted>; Wang, Xiao W
[off-list ref]; dev@dpdk.org
Subject: Re: [dpdk-dev] [PATCH v3 1/3] fm10k: enable FTAG based forwarding

On Thu, Feb 25, 2016 at 03:45:45PM +0000, Chen, Jing D wrote:
quoted
Hi, Bruce,
quoted
-----Original Message-----
From: Richardson, Bruce
Sent: Thursday, February 25, 2016 9:35 PM
To: Chen, Jing D <redacted>
Cc: Thomas Monjalon <redacted>; Wang, Xiao W
[off-list ref]; dev@dpdk.org
Subject: Re: [dpdk-dev] [PATCH v3 1/3] fm10k: enable FTAG based
forwarding

On Thu, Feb 25, 2016 at 10:04:02AM +0000, Chen, Jing D wrote:
quoted
Hi, Bruce, Thomas,

Best Regards,
Mark
quoted
-----Original Message-----
From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Thomas
Monjalon
quoted
quoted
Sent: Thursday, February 25, 2016 12:38 AM
To: Richardson, Bruce; Wang, Xiao W
Cc: dev@dpdk.org
Subject: Re: [dpdk-dev] [PATCH v3 1/3] fm10k: enable FTAG based
forwarding

2016-02-24 15:42, Bruce Richardson:
quoted
On Thu, Feb 04, 2016 at 11:38:47AM +0800, Wang Xiao W wrote:
quoted
This patch enables reading sglort info into mbuf for RX and
inserting an FTAG at the beginning of the packet for TX. The
vlan_tci_outer field selected from rte_mbuf structure for
sglort is not
used in fm10k now.
quoted
quoted
quoted
quoted
In FTAG based forwarding mode, the switch will forward
packets
according
quoted
quoted
to glort info in FTAG rather than mac and vlan table.

To activate this feature, user needs to turn
``CONFIG_RTE_LIBRTE_FM10K_FTAG_FWD``
quoted
quoted
to y in common_linuxapp or common_bsdapp. Currently this
feature is
supported
quoted
quoted
only on PF, because FM10K_PFVTCTL register is read-only for VF.

Signed-off-by: Wang Xiao W <redacted>
Any comments on this patch?

My thoughts: is there a way in which this could be done
without adding in a
new
quoted
build time config option?
Bruce, it's simpler to explain that build time options are
forbidden to enable such options.
Or the terrific kid's approach: one day, the Big Build-Option
Eater will come and will eat every undecided features! ;)
This feature is trying to use FTAG (a unique tech in fm10k)
instead of mac/vlan to forward packets. App need a way to tell PMD
driver that which forwarding style it would like to use.
Why not just specify this in the port configuration at setup time?
Please educate me. I think the port configuration flags are also
common to all PMD Drivers. Is it possible to add a flag like "RTE_USE_FTAG"
and pass to PMD driver?
quoted
They are.
For something PMD specific, like FTAG, it's always a challenge, and I don't
know off the top of my head if there is a simple option. However, given the
choice between an mbuf flag and a port config flag, I'd always choose the
former.
Other alternatives would be to have a fm10k specific API in the fm10k driver
alone.

I'll let Thomas as ethdev maintainer comment if he has other suggestions as to
how to handle this case. I suspect this won't be the first device-specific piece of
functionality we need to deal with.

/Bruce
Whatever method we choose, we have to find a way for the user to express his need
for FTAG, it maybe a build time config option, or a port config flag (no such flag now),
or a fast path flag in mbuf (no such flag now) etc. For the customer Topsec's use case,
they use FTAG for all the TX packets, so all the above methods (per build config, per
port config, per mbuf config) can meet their need. Since the pmd frame work is for
common, it's hard to add new fields only for one specific NIC, so I add a build time
config and make an introduction in the doc.

Thanks for the discussion, Thomas, do you have any suggestions?

BTW, I have found the patch needs to be rebased on head of dpdk-next-net/rel_16_04 since several
fm10k patches were applied recently.

Best Regards,
Xiao
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help