diff mbox

iproute2: tc: f_flow: add key rxhash

Message ID 1282408201-3522-1-git-send-email-xiaosuo@gmail.com
State Accepted, archived
Delegated to: stephen hemminger
Headers show

Commit Message

Changli Gao Aug. 21, 2010, 4:30 p.m. UTC
We can use rxhash to classify the traffic into flows. As rxhash maybe
supplied by NIC or RPS, it is cheaper.

Signed-off-by: Changli Gao <xiaosuo@gmail.com>
---
 include/linux/pkt_cls.h |    1 +
 tc/f_flow.c             |    3 ++-
 2 files changed, 3 insertions(+), 1 deletion(-)
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Comments

jamal Aug. 21, 2010, 9:42 p.m. UTC | #1
On Sun, 2010-08-22 at 00:30 +0800, Changli Gao wrote:
> We can use rxhash to classify the traffic into flows. As rxhash maybe
> supplied by NIC or RPS, it is cheaper.
> 
> Signed-off-by: Changli Gao <xiaosuo@gmail.com>

Acked-by: Jamal Hadi Salim <hadi@cyberus.ca>


cheers,
jamal

--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
stephen hemminger Nov. 30, 2010, 5:58 p.m. UTC | #2
On Sat, 21 Aug 2010 17:42:17 -0400
jamal <hadi@cyberus.ca> wrote:

> On Sun, 2010-08-22 at 00:30 +0800, Changli Gao wrote:
> > We can use rxhash to classify the traffic into flows. As rxhash maybe
> > supplied by NIC or RPS, it is cheaper.
> > 
> > Signed-off-by: Changli Gao <xiaosuo@gmail.com>
> 
> Acked-by: Jamal Hadi Salim <hadi@cyberus.ca>
> 
> 
> cheers,
> jamal
> 

Applied
diff mbox

Patch

diff --git a/include/linux/pkt_cls.h b/include/linux/pkt_cls.h
index 7f6ba86..defbde2 100644
--- a/include/linux/pkt_cls.h
+++ b/include/linux/pkt_cls.h
@@ -332,6 +332,7 @@  enum {
 	FLOW_KEY_SKUID,
 	FLOW_KEY_SKGID,
 	FLOW_KEY_VLAN_TAG,
+	FLOW_KEY_RXHASH,
 	__FLOW_KEY_MAX,
 };
 
diff --git a/tc/f_flow.c b/tc/f_flow.c
index 84b45c9..574253d 100644
--- a/tc/f_flow.c
+++ b/tc/f_flow.c
@@ -33,7 +33,7 @@  static void explain(void)
 "KEY      := [ src | dst | proto | proto-src | proto-dst | iif | priority | \n"
 "              mark | nfct | nfct-src | nfct-dst | nfct-proto-src | \n"
 "              nfct-proto-dst | rt-classid | sk-uid | sk-gid |\n"
-"              vlan-tag ]\n"
+"              vlan-tag | rxhash ]\n"
 "OPS      := [ or NUM | and NUM | xor NUM | rshift NUM | addend NUM ]\n"
 "ID       := X:Y\n"
 	);
@@ -57,6 +57,7 @@  static const char *flow_keys[FLOW_KEY_MAX+1] = {
 	[FLOW_KEY_SKUID]		= "sk-uid",
 	[FLOW_KEY_SKGID]		= "sk-gid",
 	[FLOW_KEY_VLAN_TAG]		= "vlan-tag",
+	[FLOW_KEY_RXHASH]		= "rxhash",
 };
 
 static int flow_parse_keys(__u32 *keys, __u32 *nkeys, char *argv)