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

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

From: Wang, Xiao W <hidden>
Date: 2016-03-02 06:05:22

Hi,
-----Original Message-----
From: Stephen Hemminger [mailto:stephen@networkplumber.org]
Sent: Wednesday, March 2, 2016 6:38 AM
To: Wang, Xiao W <redacted>
Cc: Chen, Jing D <redacted>; dev@dpdk.org
Subject: Re: [dpdk-dev] [PATCH v4 1/3] fm10k: enable FTAG based forwarding

On Tue,  1 Mar 2016 13:36:39 +0800
Wang Xiao W [off-list ref] wrote:
quoted
+static int
+fm10k_check_ftag(struct rte_devargs *devargs) {
+	if (devargs == NULL)
+		return 0;
+
+	if (strstr(devargs->args, "enable_ftag=1") == NULL)
+		return 0;
+
+	return 1;
+}
+
It is good to see the DPDK keeping up with the leading edge of hardware
support.

My issue is that devargs are the Linux module parameters method of
configuration in the DPDK world.  They are an API only a developer would love..
DPDK supports passing string parameter (devargs) for every pci device to EAL, it's like:
"./test -w 84:00.0,enable_ftag=1 -w 86:00.0,enable_ftag=1 -c f -n 4".
We have discussed (in v3) on how to configure the specific feature for fm10k (by means
of adding a build time config option, or changing the common ethdev structure,
or changing the mbuf structure), neither adding extra build config option nor
changing the common structure looks satisfactory, and we think using devargs is
a good enough solution.
 1. It has to be done at boot
 2. Applications have to rewrite (or expect customer) to pass args  3. Can't be
changed at runtime  4. Can't be selected on per device basis.
Customers configure the FTAG feature according to their need.
We just parse the devargs at dev_start and set FTAG flag for RX/TX queues, we
(or the customers) needn't to change the devargs at runtime.
In DPDK devargs is designed for each pci device, each device has its own pointer
for devargs structure.

Thank you for the comment.

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