From: Stephen Hemminger <shemminger@vyatta.com>
To: David Miller <davem@davemloft.net>
Cc: netdev@vger.kernel.org
Subject: [PATCH 1/2] skb: expose and constify hash primitives
Date: Thu, 19 Mar 2009 23:34:04 -0700 [thread overview]
Message-ID: <20090319233404.6697768b@nehalam> (raw)
Some minor changes to queue hashing:
1. Use const on accessor functions
2. Export skb_tx_hash for use in drivers (see ixgbe)
Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
---
include/linux/skbuff.h | 9 ++++++---
net/core/dev.c | 3 ++-
2 files changed, 8 insertions(+), 4 deletions(-)
--- a/include/linux/skbuff.h 2009-03-19 22:57:01.041090287 -0700
+++ b/include/linux/skbuff.h 2009-03-19 22:59:00.951841088 -0700
@@ -1969,7 +1969,7 @@ static inline void skb_set_queue_mapping
skb->queue_mapping = queue_mapping;
}
-static inline u16 skb_get_queue_mapping(struct sk_buff *skb)
+static inline u16 skb_get_queue_mapping(const struct sk_buff *skb)
{
return skb->queue_mapping;
}
@@ -1984,16 +1984,19 @@ static inline void skb_record_rx_queue(s
skb->queue_mapping = rx_queue + 1;
}
-static inline u16 skb_get_rx_queue(struct sk_buff *skb)
+static inline u16 skb_get_rx_queue(const struct sk_buff *skb)
{
return skb->queue_mapping - 1;
}
-static inline bool skb_rx_queue_recorded(struct sk_buff *skb)
+static inline bool skb_rx_queue_recorded(const struct sk_buff *skb)
{
return (skb->queue_mapping != 0);
}
+extern u16 skb_tx_hash(const struct net_device *dev,
+ const struct sk_buff *skb);
+
#ifdef CONFIG_XFRM
static inline struct sec_path *skb_sec_path(struct sk_buff *skb)
{
--- a/net/core/dev.c 2009-03-19 22:57:01.031089784 -0700
+++ b/net/core/dev.c 2009-03-19 22:58:16.794089571 -0700
@@ -1725,7 +1725,7 @@ out_kfree_skb:
static u32 skb_tx_hashrnd;
-static u16 skb_tx_hash(struct net_device *dev, struct sk_buff *skb)
+u16 skb_tx_hash(const struct net_device *dev, const struct sk_buff *skb)
{
u32 hash;
@@ -1740,6 +1740,7 @@ static u16 skb_tx_hash(struct net_device
return (u16) (((u64) hash * dev->real_num_tx_queues) >> 32);
}
+EXPORT_SYMBOL(skb_tx_hash);
static struct netdev_queue *dev_pick_tx(struct net_device *dev,
struct sk_buff *skb)
next reply other threads:[~2009-03-20 6:36 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-03-20 6:34 Stephen Hemminger [this message]
2009-03-20 6:36 ` [PATCH 2/2] ixgbe: fix select_queue management Stephen Hemminger
2009-03-20 7:23 ` Waskiewicz Jr, Peter P
2009-03-20 16:24 ` Stephen Hemminger
2009-03-20 17:14 ` Waskiewicz Jr, Peter P
2009-03-21 0:24 ` Jeff Kirsher
2009-03-21 20:40 ` David Miller
2009-03-20 16:12 ` [PATCH 2/2] ixgbe: fix select_queue management (v2) Stephen Hemminger
2009-03-21 3:48 ` Waskiewicz Jr, Peter P
2009-03-21 4:45 ` Stephen Hemminger
2009-03-21 6:21 ` Waskiewicz Jr, Peter P
2009-03-21 7:33 ` David Miller
2009-03-21 7:43 ` Waskiewicz Jr, Peter P
2009-03-21 19:39 ` Stephen Hemminger
2009-03-22 1:48 ` Waskiewicz Jr, Peter P
2009-03-22 2:00 ` David Miller
2009-03-21 20:39 ` [PATCH 1/2] skb: expose and constify hash primitives David Miller
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=20090319233404.6697768b@nehalam \
--to=shemminger@vyatta.com \
--cc=davem@davemloft.net \
--cc=netdev@vger.kernel.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.