Browse Source

net: If SKB has attached socket, use socket's hash for TX queue selection.

Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller 16 years ago
parent
commit
f7105d6394
1 changed files with 7 additions and 0 deletions
  1. 7 0
      net/core/dev.c

+ 7 - 0
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)))