diff options
author | David S. Miller <davem@davemloft.net> | 2010-06-06 20:42:02 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-06-06 20:42:02 -0400 |
commit | eedc765ca4b19a41cf0b921a492ac08d640060d1 (patch) | |
tree | 95c566c6238cc953e1e336115d2daafe8bcb388f /net/ipv4/tcp_ipv4.c | |
parent | e59d44df46edaafb6b637e98d046775524b31104 (diff) | |
parent | 024a07bacf8287a6ddfa83e9d5b951c5e8b4070e (diff) |
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Conflicts:
drivers/net/sfc/net_driver.h
drivers/net/sfc/siena.c
Diffstat (limited to 'net/ipv4/tcp_ipv4.c')
-rw-r--r-- | net/ipv4/tcp_ipv4.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/net/ipv4/tcp_ipv4.c b/net/ipv4/tcp_ipv4.c index 6558dfd899da..acdc4c989853 100644 --- a/net/ipv4/tcp_ipv4.c +++ b/net/ipv4/tcp_ipv4.c | |||
@@ -1557,6 +1557,7 @@ int tcp_v4_do_rcv(struct sock *sk, struct sk_buff *skb) | |||
1557 | #endif | 1557 | #endif |
1558 | 1558 | ||
1559 | if (sk->sk_state == TCP_ESTABLISHED) { /* Fast path */ | 1559 | if (sk->sk_state == TCP_ESTABLISHED) { /* Fast path */ |
1560 | sock_rps_save_rxhash(sk, skb->rxhash); | ||
1560 | TCP_CHECK_TIMER(sk); | 1561 | TCP_CHECK_TIMER(sk); |
1561 | if (tcp_rcv_established(sk, skb, tcp_hdr(skb), skb->len)) { | 1562 | if (tcp_rcv_established(sk, skb, tcp_hdr(skb), skb->len)) { |
1562 | rsk = sk; | 1563 | rsk = sk; |
@@ -1581,7 +1582,9 @@ int tcp_v4_do_rcv(struct sock *sk, struct sk_buff *skb) | |||
1581 | } | 1582 | } |
1582 | return 0; | 1583 | return 0; |
1583 | } | 1584 | } |
1584 | } | 1585 | } else |
1586 | sock_rps_save_rxhash(sk, skb->rxhash); | ||
1587 | |||
1585 | 1588 | ||
1586 | TCP_CHECK_TIMER(sk); | 1589 | TCP_CHECK_TIMER(sk); |
1587 | if (tcp_rcv_state_process(sk, skb, tcp_hdr(skb), skb->len)) { | 1590 | if (tcp_rcv_state_process(sk, skb, tcp_hdr(skb), skb->len)) { |
@@ -1674,8 +1677,6 @@ process: | |||
1674 | 1677 | ||
1675 | skb->dev = NULL; | 1678 | skb->dev = NULL; |
1676 | 1679 | ||
1677 | sock_rps_save_rxhash(sk, skb->rxhash); | ||
1678 | |||
1679 | bh_lock_sock_nested(sk); | 1680 | bh_lock_sock_nested(sk); |
1680 | ret = 0; | 1681 | ret = 0; |
1681 | if (!sock_owned_by_user(sk)) { | 1682 | if (!sock_owned_by_user(sk)) { |