[an error occurred while processing this directive]
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <1430505018-496801-1-git-send-email-tom@herbertland.com>
Date:	Fri, 1 May 2015 11:30:11 -0700
From:	Tom Herbert <tom@...bertland.com>
To:	<davem@...emloft.net>, <netdev@...r.kernel.org>
Subject: [PATCH v2 net-next 0/7] net: Eliminate calls to flow_dissector and introduce flow_keys_digest
In this patch set we add skb_get_hash_perturb which gets the skbuff
hash for a packet and perturbs it using a provided key and jhash1.
This function is used in serveral qdiscs and eliminates many calls
to flow_dissector and jhash3 to get a perturbed hash for a packet.
To handle the sch_choke issue (passes flow_keys in skbuff cb) we
add flow_keys_digest which is a digest of a flow constructed
from a flow_keys structure.
This is the second version of these patches I posted a while ago,
and is prerequisite work to increasing the size of the flow_keys
structure and hashing over it (full IPv6 address, flow label, VLAN ID,
etc.).
Version 2:
- Add keyval parameter to __flow_hash_from_keys which allows caller to
  set the initval for jhash
- Perturb always does flow dissection and creates hash based on
  input perturb value which acts as the keyval to __flow_hash_from_keys
- Added a _flow_keys_digest_data which is used in make_flow_keys_digest.
  This fills out the digest by populating individual fields instead
  of copying the whole structure.
Tom Herbert (7):
  net: Add skb_get_hash_perturb
  sched: Call skb_get_hash_perturb in sch_fq_codel
  sched: Call skb_get_hash_perturb in sch_hhf
  sched: Call skb_get_hash_perturb in sch_sfb
  sched: Call skb_get_hash_perturb in sch_sfq
  net: Add flow_keys digest
  sch_choke: Use flow_keys_digest
 include/linux/skbuff.h    |  2 ++
 include/net/flow_keys.h   | 16 ++++++++++++
 net/core/flow_dissector.c | 65 +++++++++++++++++++++++++++++++++++++++++------
 net/sched/sch_choke.c     | 14 +++-------
 net/sched/sch_fq_codel.c  | 11 ++------
 net/sched/sch_hhf.c       | 19 +-------------
 net/sched/sch_sfb.c       | 24 ++++++-----------
 net/sched/sch_sfq.c       | 27 ++------------------
 8 files changed, 92 insertions(+), 86 deletions(-)
-- 
1.8.1
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists
 
