Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
David S. Miller [Fri, 8 May 2009 09:48:30 +0000 (02:48 -0700)]
Conflicts:
include/net/tcp.h

12 files changed:
1  2 
drivers/net/e1000/e1000_main.c
drivers/net/ehea/ehea_main.c
drivers/net/igb/igb_main.c
drivers/net/usb/Kconfig
drivers/net/usb/Makefile
drivers/net/wireless/iwlwifi/iwl-sta.c
drivers/net/wireless/iwlwifi/iwl3945-base.c
include/net/tcp.h
net/ipv4/tcp_input.c
net/mac80211/tx.c
net/wireless/reg.c
net/wireless/scan.c

Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
@@@ -754,11 -765,9 +765,9 @@@ void iwl_update_tkip_key(struct iwl_pri
  {
        u8 sta_id = IWL_INVALID_STATION;
        unsigned long flags;
-       __le16 key_flags = 0;
        int i;
-       DECLARE_MAC_BUF(mac);
  
 -      sta_id = iwl_find_station(priv, addr);
 +      sta_id = priv->cfg->ops->smgmt->find_station(priv, addr);
        if (sta_id == IWL_INVALID_STATION) {
                IWL_DEBUG_MAC80211(priv, "leave - %pM not in station map.\n",
                                   addr);
@@@ -890,32 -889,30 +902,32 @@@ static inline int tcp_prequeue(struct s
  {
        struct tcp_sock *tp = tcp_sk(sk);
  
 -      if (!sysctl_tcp_low_latency && tp->ucopy.task) {
 -              __skb_queue_tail(&tp->ucopy.prequeue, skb);
 -              tp->ucopy.memory += skb->truesize;
 -              if (tp->ucopy.memory > sk->sk_rcvbuf) {
 -                      struct sk_buff *skb1;
 -
 -                      BUG_ON(sock_owned_by_user(sk));
 -
 -                      while ((skb1 = __skb_dequeue(&tp->ucopy.prequeue)) != NULL) {
 -                              sk_backlog_rcv(sk, skb1);
 -                              NET_INC_STATS_BH(sock_net(sk), LINUX_MIB_TCPPREQUEUEDROPPED);
 -                      }
 -
 -                      tp->ucopy.memory = 0;
 -              } else if (skb_queue_len(&tp->ucopy.prequeue) == 1) {
 -                      wake_up_interruptible(sk->sk_sleep);
 -                      if (!inet_csk_ack_scheduled(sk))
 -                              inet_csk_reset_xmit_timer(sk, ICSK_TIME_DACK,
 -                                                        (3 * tcp_rto_min(sk)) / 4,
 -                                                        TCP_RTO_MAX);
 +      if (sysctl_tcp_low_latency || !tp->ucopy.task)
 +              return 0;
 +
 +      __skb_queue_tail(&tp->ucopy.prequeue, skb);
 +      tp->ucopy.memory += skb->truesize;
 +      if (tp->ucopy.memory > sk->sk_rcvbuf) {
 +              struct sk_buff *skb1;
 +
 +              BUG_ON(sock_owned_by_user(sk));
 +
 +              while ((skb1 = __skb_dequeue(&tp->ucopy.prequeue)) != NULL) {
 +                      sk_backlog_rcv(sk, skb1);
 +                      NET_INC_STATS_BH(sock_net(sk),
 +                                       LINUX_MIB_TCPPREQUEUEDROPPED);
                }
 -              return 1;
 +
 +              tp->ucopy.memory = 0;
 +      } else if (skb_queue_len(&tp->ucopy.prequeue) == 1) {
 +              wake_up_interruptible_poll(sk->sk_sleep,
 +                                         POLLIN | POLLRDNORM | POLLRDBAND);
 +              if (!inet_csk_ack_scheduled(sk))
 +                      inet_csk_reset_xmit_timer(sk, ICSK_TIME_DACK,
-                                                 (3 * TCP_RTO_MIN) / 4,
++                                                (3 * tcp_rto_min(sk)) / 4,
 +                                                TCP_RTO_MAX);
        }
 -      return 0;
 +      return 1;
  }
  
  
Simple merge
Simple merge
Simple merge
Simple merge