From: Jiri Pirko <jiri@resnulli.us>
To: netdev@vger.kernel.org
Cc: davem@davemloft.net, jhs@mojatatu.com, tgraf@suug.ch,
jesse@nicira.com, kaber@trash.net, therbert@google.com,
edumazet@google.com, alexander.h.duyck@redhat.com,
hannes@stressinduktion.org, ast@plumgrid.com,
daniel@iogearbox.net, herbert@gondor.apana.org.au,
cwang@twopensource.com, john.fastabend@gmail.com
Subject: [patch net-next v4 RFC 06/15] net: move __skb_tx_hash to skbuff.c
Date: Fri, 24 Apr 2015 17:51:32 +0200 [thread overview]
Message-ID: <1429890701-30052-7-git-send-email-jiri@resnulli.us> (raw)
In-Reply-To: <1429890701-30052-1-git-send-email-jiri@resnulli.us>
__skb_tx_hash function has no relation to flow_dissect so just muve it
to skbuff.c (it is declared in skbuff.h)
Signed-off-by: Jiri Pirko <jiri@resnulli.us>
---
net/core/flow_dissector.c | 28 ----------------------------
net/core/skbuff.c | 28 ++++++++++++++++++++++++++++
2 files changed, 28 insertions(+), 28 deletions(-)
diff --git a/net/core/flow_dissector.c b/net/core/flow_dissector.c
index 6a02b26..302a806 100644
--- a/net/core/flow_dissector.c
+++ b/net/core/flow_dissector.c
@@ -322,34 +322,6 @@ void __skb_get_hash(struct sk_buff *skb)
}
EXPORT_SYMBOL(__skb_get_hash);
-/*
- * Returns a Tx hash based on the given packet descriptor a Tx queues' number
- * to be used as a distribution range.
- */
-u16 __skb_tx_hash(const struct net_device *dev, struct sk_buff *skb,
- unsigned int num_tx_queues)
-{
- u32 hash;
- u16 qoffset = 0;
- u16 qcount = num_tx_queues;
-
- if (skb_rx_queue_recorded(skb)) {
- hash = skb_get_rx_queue(skb);
- while (unlikely(hash >= num_tx_queues))
- hash -= num_tx_queues;
- return hash;
- }
-
- if (dev->num_tc) {
- u8 tc = netdev_get_prio_tc_map(dev, skb->priority);
- qoffset = dev->tc_to_txq[tc].offset;
- qcount = dev->tc_to_txq[tc].count;
- }
-
- return (u16) reciprocal_scale(skb_get_hash(skb), qcount) + qoffset;
-}
-EXPORT_SYMBOL(__skb_tx_hash);
-
u32 __skb_get_poff(const struct sk_buff *skb, void *data,
const struct flow_keys *keys, int hlen)
{
diff --git a/net/core/skbuff.c b/net/core/skbuff.c
index d1967da..0e7053b 100644
--- a/net/core/skbuff.c
+++ b/net/core/skbuff.c
@@ -4410,3 +4410,31 @@ failure:
return NULL;
}
EXPORT_SYMBOL(alloc_skb_with_frags);
+
+/*
+ * Returns a Tx hash based on the given packet descriptor a Tx queues' number
+ * to be used as a distribution range.
+ */
+u16 __skb_tx_hash(const struct net_device *dev, struct sk_buff *skb,
+ unsigned int num_tx_queues)
+{
+ u32 hash;
+ u16 qoffset = 0;
+ u16 qcount = num_tx_queues;
+
+ if (skb_rx_queue_recorded(skb)) {
+ hash = skb_get_rx_queue(skb);
+ while (unlikely(hash >= num_tx_queues))
+ hash -= num_tx_queues;
+ return hash;
+ }
+
+ if (dev->num_tc) {
+ u8 tc = netdev_get_prio_tc_map(dev, skb->priority);
+ qoffset = dev->tc_to_txq[tc].offset;
+ qcount = dev->tc_to_txq[tc].count;
+ }
+
+ return (u16) reciprocal_scale(skb_get_hash(skb), qcount) + qoffset;
+}
+EXPORT_SYMBOL(__skb_tx_hash);
--
1.9.3
next prev parent reply other threads:[~2015-04-24 15:51 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-04-24 15:51 [patch net-next v4 RFC 00/15] introduce programable flow dissector and cls_flower Jiri Pirko
2015-04-24 15:51 ` [patch net-next v4 RFC 01/15] net: change name of flow_dissector header to match the .c file name Jiri Pirko
2015-04-24 15:51 ` [patch net-next v4 RFC 02/15] flow_dissector: remove unused function flow_get_hlen declaration Jiri Pirko
2015-04-24 15:51 ` [patch net-next v4 RFC 03/15] net: move *skb_get_poff declarations into correct header Jiri Pirko
2015-04-24 15:51 ` [patch net-next v4 RFC 04/15] flow_dissector: fix doc for __skb_get_hash and remove couple of empty lines Jiri Pirko
2015-04-24 15:51 ` [patch net-next v4 RFC 05/15] net: move __skb_get_hash function declaration to flow_dissector.h Jiri Pirko
2015-04-24 15:51 ` Jiri Pirko [this message]
2015-04-24 15:51 ` [patch net-next v4 RFC 07/15] net: move netdev_pick_tx and dependencies to net/core/dev.c Jiri Pirko
2015-04-24 15:51 ` [patch net-next v4 RFC 08/15] flow_dissector: fix doc for skb_get_poff Jiri Pirko
2015-04-24 15:51 ` [patch net-next v4 RFC 09/15] flow_dissector: introduce programable flow_dissector Jiri Pirko
2015-04-24 15:51 ` [patch net-next v4 RFC 10/15] flow_dissect: use programable dissector in skb_flow_dissect and friends Jiri Pirko
2015-04-24 15:51 ` [patch net-next v4 RFC 11/15] flow_dissector: add missing header includes Jiri Pirko
2015-04-24 15:51 ` [patch net-next v4 RFC 12/15] flow_dissector: introduce support for ipv6 addressses Jiri Pirko
2015-04-24 17:28 ` Tom Herbert
2015-04-25 19:17 ` Jiri Pirko
2015-04-24 15:51 ` [patch net-next v4 RFC 13/15] flow_dissector: introduce support for Ethernet addresses Jiri Pirko
2015-04-24 15:51 ` [patch net-next v4 RFC 14/15] flow_dissector: change port array into src,dst tuple Jiri Pirko
2015-04-24 15:51 ` [patch net-next v4 RFC 15/15] tc: introduce Flower classifier Jiri Pirko
2015-04-26 19:55 ` [patch net-next v4 RFC 00/15] introduce programable flow dissector and cls_flower Or Gerlitz
2015-04-26 19:57 ` Or Gerlitz
2015-04-26 23:33 ` Tom Herbert
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=1429890701-30052-7-git-send-email-jiri@resnulli.us \
--to=jiri@resnulli.us \
--cc=alexander.h.duyck@redhat.com \
--cc=ast@plumgrid.com \
--cc=cwang@twopensource.com \
--cc=daniel@iogearbox.net \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=hannes@stressinduktion.org \
--cc=herbert@gondor.apana.org.au \
--cc=jesse@nicira.com \
--cc=jhs@mojatatu.com \
--cc=john.fastabend@gmail.com \
--cc=kaber@trash.net \
--cc=netdev@vger.kernel.org \
--cc=tgraf@suug.ch \
--cc=therbert@google.com \
/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