Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
authorDavid S. Miller <davem@davemloft.net>
Fri, 31 Jul 2009 02:22:43 +0000 (19:22 -0700)
committerDavid S. Miller <davem@davemloft.net>
Fri, 31 Jul 2009 02:22:43 +0000 (19:22 -0700)
Conflicts:
drivers/net/wireless/iwlwifi/iwl-3945.h
drivers/net/wireless/iwlwifi/iwl-tx.c
drivers/net/wireless/iwlwifi/iwl3945-base.c

18 files changed:
1  2 
drivers/net/3c515.c
drivers/net/at1700.c
drivers/net/eepro.c
drivers/net/eexpress.c
drivers/net/fealnx.c
drivers/net/ixgbe/ixgbe.h
drivers/net/ixgbe/ixgbe_ethtool.c
drivers/net/ixgbe/ixgbe_main.c
drivers/net/netxen/netxen_nic_init.c
drivers/net/tokenring/ibmtr.c
drivers/net/wireless/airo.c
drivers/net/wireless/ath/ath9k/eeprom.c
drivers/net/wireless/iwlwifi/iwl-tx.c
drivers/net/wireless/iwmc3200wifi/netdev.c
drivers/net/wireless/libertas/assoc.c
net/mac80211/mlme.c
net/mac80211/rx.c
net/netlabel/netlabel_kapi.c

Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index 0912987af6035ca42df0786ff6e8b1c405872b0e,2e89040e63be69c156786bfb09fbc7c8812fc1fa..c7100b9dcede62314ad7b81272b87d450bc830d9
@@@ -749,16 -744,21 +747,19 @@@ int iwl_tx_skb(struct iwl_priv *priv, s
                hdr->seq_ctrl |= cpu_to_le16(seq_number);
                seq_number += 0x10;
                /* aggregation is on for this <sta,tid> */
 -              if (info->flags & IEEE80211_TX_CTL_AMPDU) {
 +              if (info->flags & IEEE80211_TX_CTL_AMPDU)
                        txq_id = priv->stations[sta_id].tid[tid].agg.txq_id;
-               priv->stations[sta_id].tid[tid].tfds_in_queue++;
 -                      swq_id = iwl_virtual_agg_queue_num(swq_id, txq_id);
 -              }
        }
  
        txq = &priv->txq[txq_id];
 +      swq_id = txq->swq_id;
        q = &txq->q;
 -      txq->swq_id = swq_id;
  
-       spin_lock_irqsave(&priv->lock, flags);
+       if (unlikely(iwl_queue_space(q) < q->high_mark))
+               goto drop_unlock;
+       if (ieee80211_is_data_qos(fc))
+               priv->stations[sta_id].tid[tid].tfds_in_queue++;
  
        /* Set up driver data for this TFD */
        memset(&(txq->txb[q->write_ptr]), 0, sizeof(struct iwl_tx_info));
Simple merge
Simple merge
Simple merge
Simple merge