]> git.karo-electronics.de Git - linux-beck.git/commitdiff
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
authorLinus Torvalds <torvalds@linux-foundation.org>
Mon, 7 Nov 2011 18:55:33 +0000 (10:55 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Mon, 7 Nov 2011 18:55:33 +0000 (10:55 -0800)
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (47 commits)
  forcedeth: fix a few sparse warnings (variable shadowing)
  forcedeth: Improve stats counters
  forcedeth: remove unneeded stats updates
  forcedeth: Acknowledge only interrupts that are being processed
  forcedeth: fix race when unloading module
  MAINTAINERS/rds: update maintainer
  wanrouter: Remove kernel_lock annotations
  usbnet: fix oops in usbnet_start_xmit
  ixgbe: Fix compile for kernel without CONFIG_PCI_IOV defined
  etherh: Add MAINTAINERS entry for etherh
  bonding: comparing a u8 with -1 is always false
  sky2: fix regression on Yukon Optima
  netlink: clarify attribute length check documentation
  netlink: validate NLA_MSECS length
  i825xx:xscale:8390:freescale: Fix Kconfig dependancies
  macvlan: receive multicast with local address
  tg3: Update version to 3.121
  tg3: Eliminate timer race with reset_task
  tg3: Schedule at most one tg3_reset_task run
  tg3: Obtain PCI function number from device
  ...

1  2 
MAINTAINERS
drivers/net/bonding/bond_procfs.c
drivers/net/wireless/ath/ath9k/hw.c
drivers/net/wireless/iwlwifi/iwl-pci.c
drivers/net/wireless/libertas/main.c
net/bluetooth/mgmt.c
net/mac80211/mlme.c

diff --combined MAINTAINERS
index 6388a96dc1c4acb98f167459ff3fe0670976b4eb,237c9ab228042b733716b65ef9bf62ae038e834f..4c5eac0e51d1b30a85642af141118245178def7d
@@@ -1032,6 -1032,7 +1032,7 @@@ F:      arch/arm/include/asm/hardware/ioc.
  F:    arch/arm/include/asm/hardware/iomd.h
  F:    arch/arm/include/asm/hardware/memc.h
  F:    arch/arm/mach-rpc/
+ F:    drivers/net/ethernet/8390/etherh.c
  F:    drivers/net/ethernet/i825xx/ether1*
  F:    drivers/net/ethernet/seeq/ether3*
  F:    drivers/scsi/arm/
@@@ -2387,7 -2388,7 +2388,7 @@@ F:      include/linux/netfilter_bridge/ebt_*
  F:    net/bridge/netfilter/ebt*.c
  
  ECRYPT FILE SYSTEM
 -M:    Tyler Hicks <tyhicks@linux.vnet.ibm.com>
 +M:    Tyler Hicks <tyhicks@canonical.com>
  M:    Dustin Kirkland <kirkland@canonical.com>
  L:    ecryptfs@vger.kernel.org
  W:    https://launchpad.net/ecryptfs
@@@ -5470,7 -5471,7 +5471,7 @@@ S:      Maintaine
  F:    drivers/net/ethernet/rdc/r6040.c
  
  RDS - RELIABLE DATAGRAM SOCKETS
- M:    Andy Grover <andy.grover@oracle.com>
+ M:    Venkat Venkatsubra <venkat.x.venkatsubra@oracle.com>
  L:    rds-devel@oss.oracle.com (moderated for non-subscribers)
  S:    Supported
  F:    net/rds/
index 2acf0b080169203fcaa6d29c92e4081607a57ef3,17206da2fab7a2da03e210732f8ec99f70c6d80e..ad284baafe87df64599c3335106a31aa0d6b3ec0
@@@ -1,5 -1,4 +1,5 @@@
  #include <linux/proc_fs.h>
 +#include <linux/export.h>
  #include <net/net_namespace.h>
  #include <net/netns/generic.h>
  #include "bonding.h"
@@@ -158,12 -157,12 +158,12 @@@ static void bond_info_show_slave(struc
        seq_printf(seq, "\nSlave Interface: %s\n", slave->dev->name);
        seq_printf(seq, "MII Status: %s\n",
                   (slave->link == BOND_LINK_UP) ?  "up" : "down");
-       if (slave->speed == -1)
+       if (slave->speed == SPEED_UNKNOWN)
                seq_printf(seq, "Speed: %s\n", "Unknown");
        else
                seq_printf(seq, "Speed: %d Mbps\n", slave->speed);
  
-       if (slave->duplex == -1)
+       if (slave->duplex == DUPLEX_UNKNOWN)
                seq_printf(seq, "Duplex: %s\n", "Unknown");
        else
                seq_printf(seq, "Duplex: %s\n", slave->duplex ? "full" : "half");
index 4952ad8c4e8cb2f4f14c685d85aebbdf33fb233c,b479160dc26266092f0c2ff23a8db385d8efe5de..2f91acccb7dbc80499e7988b74ac62521bd06799
@@@ -16,7 -16,6 +16,7 @@@
  
  #include <linux/io.h>
  #include <linux/slab.h>
 +#include <linux/module.h>
  #include <asm/unaligned.h>
  
  #include "hw.h"
@@@ -1725,6 -1724,9 +1725,9 @@@ int ath9k_hw_reset(struct ath_hw *ah, s
        if (!ath9k_hw_init_cal(ah, chan))
                return -EIO;
  
+       ath9k_hw_loadnf(ah, chan);
+       ath9k_hw_start_nfcal(ah, true);
        ENABLE_REGWRITE_BUFFER(ah);
  
        ath9k_hw_restore_chainmask(ah);
index f0c623ade3fff149a21dedb3ff11a7bfb3caf464,19cc6a81da57a887ea7a69bd957c5974db8fce81..1800029911adfa1e21dfc8d3c6b0d59614daf88f
@@@ -60,7 -60,6 +60,7 @@@
   * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
   *
   *****************************************************************************/
 +#include <linux/module.h>
  #include <linux/pci.h>
  #include <linux/pci-aspm.h>
  
@@@ -446,10 -445,9 +446,9 @@@ static int iwl_pci_probe(struct pci_de
        pci_write_config_byte(pdev, PCI_CFG_RETRY_TIMEOUT, 0x00);
  
        err = pci_enable_msi(pdev);
-       if (err) {
-               dev_printk(KERN_ERR, &pdev->dev, "pci_enable_msi failed");
-               goto out_iounmap;
-       }
+       if (err)
+               dev_printk(KERN_ERR, &pdev->dev,
+                       "pci_enable_msi failed(0X%x)", err);
  
        /* TODO: Move this away, not needed if not MSI */
        /* enable rfkill interrupt: hw bug w/a */
  
  out_disable_msi:
        pci_disable_msi(pdev);
- out_iounmap:
        pci_iounmap(pdev, pci_bus->hw_base);
  out_pci_release_regions:
        pci_set_drvdata(pdev, NULL);
index 4ae99a40dbf7f6aadb4ef9bbb8971237d5584cfe,39a6a7a4024473197b0a32d4c00eaef0bdb0d4b9..957681dede1776b1a9ee94ab87626bb9e0f9ee63
@@@ -6,7 -6,7 +6,7 @@@
  
  #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
  
 -#include <linux/moduleparam.h>
 +#include <linux/module.h>
  #include <linux/delay.h>
  #include <linux/etherdevice.h>
  #include <linux/hardirq.h>
@@@ -255,10 -255,8 +255,8 @@@ static int lbs_eth_stop(struct net_devi
  
        lbs_update_mcast(priv);
        cancel_delayed_work_sync(&priv->scan_work);
-       if (priv->scan_req) {
-               cfg80211_scan_done(priv->scan_req, false);
-               priv->scan_req = NULL;
-       }
+       if (priv->scan_req)
+               lbs_scan_done(priv);
  
        netif_carrier_off(priv->dev);
  
diff --combined net/bluetooth/mgmt.c
index 940858a48cbdbdbf562ef12645ebdfc568f23d78,5caff4d47596319f41f3aebb922e43d62065ed07..2c76342968660f97a1911783f26d60a7a96b715a
@@@ -23,7 -23,6 +23,7 @@@
  /* Bluetooth HCI Management interface */
  
  #include <linux/uaccess.h>
 +#include <linux/module.h>
  #include <asm/unaligned.h>
  
  #include <net/bluetooth/bluetooth.h>
@@@ -148,8 -147,6 +148,6 @@@ static int read_index_list(struct sock 
  
                hci_del_off_timer(d);
  
-               set_bit(HCI_MGMT, &d->flags);
                if (test_bit(HCI_SETUP, &d->flags))
                        continue;
  
diff --combined net/mac80211/mlme.c
index 96f9fae32495a8af1c46dfcd7d7ffcb7d16d2d0b,17258feaab9b8f9c6958e64502a7587501dbfa8f..72c8bea81a6cc8f7b321c0700e3aa619a9a2c444
  #include <linux/skbuff.h>
  #include <linux/if_arp.h>
  #include <linux/etherdevice.h>
 +#include <linux/moduleparam.h>
  #include <linux/rtnetlink.h>
  #include <linux/pm_qos.h>
  #include <linux/crc32.h>
  #include <linux/slab.h>
 +#include <linux/export.h>
  #include <net/mac80211.h>
  #include <asm/unaligned.h>
  
@@@ -639,6 -637,9 +639,9 @@@ static bool ieee80211_powersave_allowed
        if (!mgd->powersave)
                return false;
  
+       if (mgd->broken_ap)
+               return false;
        if (!mgd->associated)
                return false;
  
@@@ -1491,10 -1492,21 +1494,21 @@@ static bool ieee80211_assoc_success(str
        capab_info = le16_to_cpu(mgmt->u.assoc_resp.capab_info);
  
        if ((aid & (BIT(15) | BIT(14))) != (BIT(15) | BIT(14)))
-               printk(KERN_DEBUG "%s: invalid aid value %d; bits 15:14 not "
-                      "set\n", sdata->name, aid);
+               printk(KERN_DEBUG
+                      "%s: invalid AID value 0x%x; bits 15:14 not set\n",
+                      sdata->name, aid);
        aid &= ~(BIT(15) | BIT(14));
  
+       ifmgd->broken_ap = false;
+       if (aid == 0 || aid > IEEE80211_MAX_AID) {
+               printk(KERN_DEBUG
+                      "%s: invalid AID value %d (out of range), turn off PS\n",
+                      sdata->name, aid);
+               aid = 0;
+               ifmgd->broken_ap = true;
+       }
        pos = mgmt->u.assoc_resp.variable;
        ieee802_11_parse_elems(pos, len - (pos - (u8 *) mgmt), &elems);