Patchwork [3/4] : net: If SKB has attached socket, use socket's hash for TX queue selection.

login
register
mail settings
Submitter David Miller
Date Jan. 28, 2009, 12:40 a.m.
Message ID <20090127.164031.28244223.davem@davemloft.net>
Download mbox | patch
Permalink /patch/20542/
State Accepted
Delegated to: David Miller
Headers show

Comments

David Miller - Jan. 28, 2009, 12:40 a.m.
Signed-off-by: David S. Miller <davem@davemloft.net>
---
 net/core/dev.c |    7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)

Patch

diff --git a/net/core/dev.c b/net/core/dev.c
index b21ad0b..cb8caa9 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -1729,6 +1729,13 @@  static u16 simple_tx_hash(struct net_device *dev, struct sk_buff *skb)
 		goto out;
 	}
 
+	if (skb->sk && skb->sk->sk_hash) {
+		u32 val = skb->sk->sk_hash;
+
+		hash = jhash_1word(val, simple_tx_hashrnd);
+		goto out;
+	}
+
 	switch (skb->protocol) {
 	case htons(ETH_P_IP):
 		if (!(ip_hdr(skb)->frag_off & htons(IP_MF | IP_OFFSET)))