From: David S. Miller Date: Sun, 6 Jul 2008 06:08:07 +0000 (-0700) Subject: Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 X-Git-Tag: v2.6.27-rc1~969^2~223 X-Git-Url: http://pilppa.com/gitweb/?a=commitdiff_plain;h=ea2aca084ba82aaf7c148d04914ceed8758ce08a;p=linux-2.6-omap-h63xx.git Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: Documentation/feature-removal-schedule.txt drivers/net/wan/hdlc_fr.c drivers/net/wireless/iwlwifi/iwl-4965.c drivers/net/wireless/iwlwifi/iwl3945-base.c --- ea2aca084ba82aaf7c148d04914ceed8758ce08a diff --cc Documentation/feature-removal-schedule.txt index 5378511a5f9,46ece3fba6f..8319c462c9f --- a/Documentation/feature-removal-schedule.txt +++ b/Documentation/feature-removal-schedule.txt @@@ -315,12 -315,9 +315,21 @@@ Who: Matthew Wilcox ++ ++--------------------------- ++ + What: CONFIG_THERMAL_HWMON + When: January 2009 + Why: This option was introduced just to allow older lm-sensors userspace + to keep working over the upgrade to 2.6.26. At the scheduled time of + removal fixed lm-sensors (2.x or 3.x) should be readily available. + Who: Rene Herman diff --cc drivers/net/wan/hdlc_fr.c index 109bab34094,6d35155c714..62e93dac6b1 --- a/drivers/net/wan/hdlc_fr.c +++ b/drivers/net/wan/hdlc_fr.c @@@ -988,10 -1003,12 +988,11 @@@ static int fr_rx(struct sk_buff *skb } if (dev) { - struct net_device_stats *stats = pvc_get_stats(dev); - stats->rx_packets++; /* PVC traffic */ - stats->rx_bytes += skb->len; + dev->stats.rx_packets++; /* PVC traffic */ + dev->stats.rx_bytes += skb->len; if (pvc->state.becn) - stats->rx_compressed++; + dev->stats.rx_compressed++; + skb->dev = dev; netif_rx(skb); return NET_RX_SUCCESS; } else { diff --cc drivers/net/wireless/hostap/hostap_main.c index b5213f61fb0,a38e85f334d..756ab56c1f4 --- a/drivers/net/wireless/hostap/hostap_main.c +++ b/drivers/net/wireless/hostap/hostap_main.c @@@ -594,9 -594,28 +594,10 @@@ void hostap_dump_tx_header(const char * } - int hostap_80211_header_parse(const struct sk_buff *skb, unsigned char *haddr) + static int hostap_80211_header_parse(const struct sk_buff *skb, + unsigned char *haddr) { - struct hostap_interface *iface = netdev_priv(skb->dev); - local_info_t *local = iface->local; - - if (local->monitor_type == PRISM2_MONITOR_PRISM || - local->monitor_type == PRISM2_MONITOR_CAPHDR) { - const unsigned char *mac = skb_mac_header(skb); - - if (*(u32 *)mac == LWNG_CAP_DID_BASE) { - memcpy(haddr, - mac + sizeof(struct linux_wlan_ng_prism_hdr) + 10, - ETH_ALEN); /* addr2 */ - } else { /* (*(u32 *)mac == htonl(LWNG_CAPHDR_VERSION)) */ - memcpy(haddr, - mac + sizeof(struct linux_wlan_ng_cap_hdr) + 10, - ETH_ALEN); /* addr2 */ - } - } else - memcpy(haddr, skb_mac_header(skb) + 10, ETH_ALEN); /* addr2 */ - + memcpy(haddr, skb_mac_header(skb) + 10, ETH_ALEN); /* addr2 */ return ETH_ALEN; } diff --cc drivers/net/wireless/iwlwifi/iwl3945-base.c index 3bc2644039f,6027e1119c3..baa1abd5a14 --- a/drivers/net/wireless/iwlwifi/iwl3945-base.c +++ b/drivers/net/wireless/iwlwifi/iwl3945-base.c @@@ -6694,10 -6685,16 +6694,16 @@@ static int iwl3945_mac_tx(struct ieee80 IWL_DEBUG_MAC80211("enter\n"); + if (priv->iw_mode == IEEE80211_IF_TYPE_MNTR) { + IWL_DEBUG_MAC80211("leave - monitor\n"); + dev_kfree_skb_any(skb); + return 0; + } + IWL_DEBUG_TX("dev->xmit(%d bytes) at rate 0x%02x\n", skb->len, - ctl->tx_rate->bitrate); + ieee80211_get_tx_rate(hw, IEEE80211_SKB_CB(skb))->bitrate); - if (iwl3945_tx_skb(priv, skb, ctl)) + if (iwl3945_tx_skb(priv, skb)) dev_kfree_skb_any(skb); IWL_DEBUG_MAC80211("leave\n"); diff --cc net/mac80211/wme.c index f23b5a4d4ac,5d09e8698b5..ffe1af82fa4 --- a/net/mac80211/wme.c +++ b/net/mac80211/wme.c @@@ -308,10 -323,9 +308,9 @@@ static void wme_qdiscop_destroy(struct struct ieee80211_hw *hw = &local->hw; int queue; - tcf_destroy_chain(q->filter_list); - q->filter_list = NULL; + tcf_destroy_chain(&q->filter_list); - for (queue=0; queue < hw->queues; queue++) { + for (queue = 0; queue < QD_NUM(hw); queue++) { skb_queue_purge(&q->requeued[queue]); qdisc_destroy(q->queues[queue]); q->queues[queue] = &noop_qdisc;