)]}'
{
  "log": [
    {
      "commit": "a84216e671c724e0920dfad2fb70828d428ff60a",
      "tree": "a39f53715c73d267d854653dfe275da5fc60e842",
      "parents": [
        "1836d95928a0f41ada0cbb2a6c4e46b027db9491",
        "bcfe3c2046fc4f16544f2b127f1b159dd1fcad8b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Nov 03 07:44:01 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Nov 03 07:44:01 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (21 commits)\n  mac80211: check interface is down before type change\n  cfg80211: fix NULL ptr deref\n  libertas if_usb: Fix crash on 64-bit machines\n  mac80211: fix reason code output endianness\n  mac80211: fix addba timer\n  ath9k: fix misplaced semicolon on rate control\n  b43: Fix DMA TX bounce buffer copying\n  mac80211: fix BSS leak\n  rt73usb.c : more ids\n  ipw2200: fix oops on missing firmware\n  gre: Fix dev_addr clobbering for gretap\n  sky2: set carrier off in probe\n  net: fix sk_forward_alloc corruption\n  pcnet_cs: add cis of PreMax PE-200 ethernet pcmcia card\n  r8169: Fix card drop incoming VLAN tagged MTU byte large jumbo frames\n  ibmtr: possible Read buffer overflow?\n  net: Fix RPF to work with policy routing\n  net: fix kmemcheck annotations\n  e1000e: rework disable K1 at 1000Mbps for 82577/82578\n  e1000e: config PHY via software after resets\n  ...\n"
    },
    {
      "commit": "7400f42e9d765fa0656b432f3ab1245f9710f190",
      "tree": "0ed7c06fb44c0c2b966755c2a0264827b7e100f3",
      "parents": [
        "e9024a059f2c17fb2bfab212ee9d31511d7b8e57"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sat Oct 31 07:40:37 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Nov 02 15:14:07 2009 -0500"
      },
      "message": "cfg80211: fix NULL ptr deref\n\ncommit 211a4d12abf86fe0df4cd68fc6327cbb58f56f81\n  Author: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\n  Date:   Tue Oct 20 15:08:53 2009 +0900\n\n      cfg80211: sme: deauthenticate on assoc failure\n\nintroduced a potential NULL pointer dereference that\nsome people have been hitting for some reason -- the\nparams.bssid pointer is not guaranteed to be non-NULL\nfor what seems to be a race between various ways of\nreaching the same thing.\n\nWhile I\u0027m trying to analyse the problem more let\u0027s\nfirst fix the crash. I think the real fix may be to\navoid doing _anything_ if it ended up being NULL, but\nright now I\u0027m not sure yet.\n\nI think\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d14342\nmight also be this issue.\n\nReported-by: Parag Warudkar \u003cparag.lkml@gmail.com\u003e\nTested-by: Parag Warudkar \u003cparag.lkml@gmail.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "49b2de8e6febfea5a8791b6476195903af83a35d",
      "tree": "c93f328623b9429615981d4b7502997fdd0f72b0",
      "parents": [
        "8633322c5fd5b2a986b279f88a7559d8409f7da3",
        "b5dd884e682cae6b8c037f9d11f3b623b4cf2011"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 29 09:22:08 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 29 09:22:08 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (43 commits)\n  net: Fix \u0027Re: PACKET_TX_RING: packet size is too long\u0027\n  netdev: usb: dm9601.c can drive a device not supported yet, add support for it\n  qlge: Fix firmware mailbox command timeout.\n  qlge: Fix EEH handling.\n  AF_RAW: Augment raw_send_hdrinc to expand skb to fit iphdr-\u003eihl (v2)\n  bonding: fix a race condition in calls to slave MII ioctls\n  virtio-net: fix data corruption with OOM\n  sfc: Set ip_summed correctly for page buffers passed to GRO\n  cnic: Fix L2CTX_STATUSB_NUM offset in context memory.\n  MAINTAINERS: rt2x00 list is moderated\n  airo: Reorder tests, check bounds before element\n  mac80211: fix for incorrect sequence number on hostapd injected frames\n  libertas spi: fix sparse errors\n  mac80211: trivial: fix spelling in mesh_hwmp\n  cfg80211: sme: deauthenticate on assoc failure\n  mac80211: keep auth state when assoc fails\n  mac80211: fix ibss joining\n  b43: add \u0027struct b43_wl\u0027 missing declaration\n  b43: Fix Bugzilla #14181 and the bug from the previous \u0027fix\u0027\n  rt2x00: Fix crypto in TX frame for rt2800usb\n  ...\n"
    },
    {
      "commit": "7d930bc33653d5592dc386a76a38f39c2e962344",
      "tree": "f974e7f86b0d695ca1ca90095c157bec4f739006",
      "parents": [
        "2ef6e4440926668cfa9eac4b79e63528ebcbe0c1"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Oct 20 15:08:53 2009 +0900"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 27 16:29:47 2009 -0400"
      },
      "message": "cfg80211: sme: deauthenticate on assoc failure\n\nWhen the in-kernel SME gets an association failure from\nthe AP we don\u0027t deauthenticate, and thus get into a very\nconfused state which will lead to warnings later on. Fix\nthis by actually deauthenticating when the AP indicates\nan association failure.\n\n(Brought to you by the hacking session at Kernel Summit 2009 in Tokyo,\nJapan. -- JWL)\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "c3da31485f074a6f598b67045b08e2e15d908310",
      "tree": "64f9ad3d3752e80de2b22b47cbea8f8512dc5d59",
      "parents": [
        "bd0704111e625ebe75418531550cf471215c3267",
        "8f7e524ce33ca81b663711404709396165da3cbd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 15 15:03:17 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 15 15:03:17 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (53 commits)\n  vmxnet: fix 2 build problems\n  net: add support for STMicroelectronics Ethernet controllers.\n  net: ks8851_mll uses mii interfaces\n  net/fec_mpc52xx: Fix kernel panic on FEC error\n  net: Fix OF platform drivers coldplug/hotplug when compiled as modules\n  TI DaVinci EMAC: Clear statistics register properly.\n  r8169: partial support and phy init for the 8168d\n  irda/sa1100_ir: check return value of startup hook\n  udp: Fix udp_poll() and ioctl()\n  WAN: fix Cisco HDLC handshaking.\n  tcp: fix tcp_defer_accept to consider the timeout\n  3c574_cs: spin_lock the set_multicast_list function\n  net: Teach pegasus driver to ignore bluetoother adapters with clashing Vendor:Product IDs\n  netxen: fix pci bar mapping\n  ethoc: fix warning from 32bit build\n  libertas: fix build\n  net: VMware virtual Ethernet NIC driver: vmxnet3\n  net: Fix IXP 2000 network driver building.\n  libertas: fix build\n  mac80211: document ieee80211_rx() context requirement\n  ...\n"
    },
    {
      "commit": "d43c36dc6b357fa1806800f18aa30123c747a6d1",
      "tree": "339ce510073ecbe9b3592008f7dece7b277035ef",
      "parents": [
        "69585dd69e663a40729492c7b52eb82477a2027a"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Oct 07 17:09:06 2009 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 11 11:20:58 2009 -0700"
      },
      "message": "headers: remove sched.h from interrupt.h\n\nAfter m68k\u0027s task_thread_info() doesn\u0027t refer to current,\nit\u0027s possible to remove sched.h from interrupt.h and not break m68k!\nMany thanks to Heiko Carstens for allowing this.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "8a8e05e5d8f6155788761961fc9845328863c16d",
      "tree": "fc842a395135d7840b440d656cf31f0a7b1548f3",
      "parents": [
        "7e937c633f718e0916a294db7282c922c1bf3ce3"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Oct 08 21:02:02 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Oct 08 16:27:00 2009 -0400"
      },
      "message": "cfg80211: fix netns error unwinding bug\n\nThe error unwinding code in set_netns has a bug\nthat will make it run into a BUG_ON if passed a\nbad wiphy index, fix by not trying to unlock a\nwiphy that doesn\u0027t exist.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8f1546cadf7ac5e9a40d54089a1c7302264ec49b",
      "tree": "31f77528caf2b87cbafd9292d6e73e9da361cdec",
      "parents": [
        "8503bd8c7dc6f82ec2de9d05e0a476e6ca5adc8b"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Sep 28 15:26:43 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Sep 28 16:55:07 2009 -0400"
      },
      "message": "wext: add back wireless/ dir in sysfs for cfg80211 interfaces\n\nThe move away from having drivers assign wireless handlers,\nin favour of making cfg80211 assign them, broke the sysfs\nregistration (the wireless/ dir went missing) because the\nhandlers are now assigned only after registration, which is\ntoo late.\n\nFix this by special-casing cfg80211-based devices, all\nof which are required to have an ieee80211_ptr, in the\nsysfs code, and also using get_wireless_stats() to have\nthe same values reported as in procfs.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nReported-by: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nTested-by: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8503bd8c7dc6f82ec2de9d05e0a476e6ca5adc8b",
      "tree": "42da5de2f0ee624e675d7b27f7e8c05301de0d2d",
      "parents": [
        "0ff716136ab73d2fc1edc0664e38169e7a76bb9a"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sat Sep 26 20:51:14 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Sep 28 16:55:06 2009 -0400"
      },
      "message": "wext: Add bound checks for copy_from_user\n\nThe wireless extensions have a copy_from_user to a local stack\narray \"essid\", but both me and gcc have failed to find where\nthe bounds for this copy are located in the code.\n\nThis patch adds some basic sanity checks for the copy length\nto make sure that we don\u0027t overflow the stack buffer.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: linux-wireless@vger.kernel.org\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8bb894859e9495a94f94af3ee4711c89cdf24a95",
      "tree": "3b2c497467e390a3aaa28bfddbe4e72e3b94e4bf",
      "parents": [
        "b7a794048ff30d53764c1e41ccb2bff7f7bec2a8"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sat Sep 26 14:42:53 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Sep 28 16:55:05 2009 -0400"
      },
      "message": "cfg80211: always get BSS\n\nMultiple problems were reported due to interaction\nbetween wpa_supplicant and the wext compat code in\ncfg80211, which appear to be due to it not getting\nany bss pointer here when wpa_supplicant sets all\nparameters -- do that now. We should still get the\nbss after doing an extra scan, but that appears to\nincrease the time we need for connecting enough to\nsometimes cause timeouts.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nTested-by: Hin-Tak Leung \u003chintak.leung@gmail.com\u003e,\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4be3bd8ccc195297870b9ffca4ef18bcbc2f1822",
      "tree": "d8a1bed71b9b1dfb4f017494378c80a02eda6ea9",
      "parents": [
        "33de4f9d787e01646f715ac10c2699fb98fd479e"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Sep 24 09:00:57 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Sep 28 16:55:04 2009 -0400"
      },
      "message": "cfg80211: don\u0027t set privacy w/o key\n\nWhen wpa_supplicant is used to connect to open networks,\nit causes the wdev-\u003ewext.keys to point to key memory, but\nthat key memory is all empty. Only use privacy when there\nis a default key to be used.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nTested-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nTested-by: Kalle Valo \u003ckalle.valo@iki.fi\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "33de4f9d787e01646f715ac10c2699fb98fd479e",
      "tree": "8d9e9e42ac8143b7d7d26c46fd12aff091c10d74",
      "parents": [
        "d1f8297a96b0d70f17704296a6666468f2087ce6"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Sep 17 08:35:54 2009 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Sep 28 16:55:04 2009 -0400"
      },
      "message": "cfg80211: wext: don\u0027t display BSSID unless associated\n\nCurrently, cfg80211\u0027s SIOCGIWAP implementation returns\nthe BSSID that the user set, even if the connection has\nsince been dropped due to other changes. It only should\nreturn the current BSSID when actually connected.\n\nAlso do a small code cleanup.\n\nReported-by: Thomas H. Guenther \u003cthomas.h.guenther@intel.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nTested-by: Thomas H. Guenther \u003cthomas.h.guenther@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8b3f6af86378d0a10ca2f1ded1da124aef13b62c",
      "tree": "de6ca90295730343c495be8d98be8efa322140ef",
      "parents": [
        "139d6065c83071d5f66cd013a274a43699f8e2c1",
        "94e0fb086fc5663c38bbc0fe86d698be8314f82f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 24 15:13:11 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 24 15:13:11 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of /home/davem/src/GIT/linux-2.6/\n\nConflicts:\n\tdrivers/staging/Kconfig\n\tdrivers/staging/Makefile\n\tdrivers/staging/cpc-usb/TODO\n\tdrivers/staging/cpc-usb/cpc-usb_drv.c\n\tdrivers/staging/cpc-usb/cpc.h\n\tdrivers/staging/cpc-usb/cpc_int.h\n\tdrivers/staging/cpc-usb/cpcusb.h\n"
    },
    {
      "commit": "94f85853324e02c3a32bc3101f090dc9a3f512b4",
      "tree": "b01c799520a5cb39e1403824de70f7935a5cce28",
      "parents": [
        "018ae37292dd391494172495142b87e816a841c0"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Sep 17 17:15:31 2009 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Sep 23 11:35:53 2009 -0400"
      },
      "message": "cfg80211: don\u0027t overwrite privacy setting\n\nWhen cfg80211 is instructed to connect, it always\nuses the default WEP key for the privacy setting,\nwhich clearly is wrong when using wpa_supplicant.\nDon\u0027t overwrite the setting, and rely on it being\nfalse when wpa_supplicant is not running, instead\nset it to true when we have keys.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "90c215c47675be42f164a4bac282666753e09225",
      "tree": "52c1e1bef91bf7bc52c7342d12da15225b9827b5",
      "parents": [
        "909a203566a75d26c65370d7dd933fa513d47990"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Sep 16 09:04:26 2009 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Sep 23 11:35:43 2009 -0400"
      },
      "message": "cfg80211: fix SME connect\n\nThere\u0027s a check saying\n\t/* we\u0027re good if we have both BSSID and channel */\n\tif (wdev-\u003econn-\u003eparams.bssid \u0026\u0026 wdev-\u003econn-\u003eparams.channel) {\n\nbut that isn\u0027t true -- we need the BSS struct. This leads\nto errors such as\n\n    Trying to associate with 00:1b:53:11:dc:40 (SSID\u003d\u0027TEST\u0027 freq\u003d2412 MHz)\n    ioctl[SIOCSIWFREQ]: No such file or directory\n    ioctl[SIOCSIWESSID]: No such file or directory\n    Association request to the driver failed\n    Associated with 00:1b:53:11:dc:40\n\nin wpa_supplicant, as reported by Holger.\n\nInstead, we really need to have the BSS struct, and if we\ndon\u0027t, then we need to initiate a scan for it. But we may\nalready have the BSS struct here, so hang on to it if we\ndo and scan if we don\u0027t.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nTested-by: Holger Schurig \u003chs4233@mail.mn-solutions.de\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "012a1b3e5e3561376dacf07efee15688284302c6",
      "tree": "9970293afe1d5a390573e32035cf8719a7ba7e16",
      "parents": [
        "50425b0977c53c6ac608f0b2c8a562a5c7cd5602"
      ],
      "author": {
        "name": "Holger Schurig",
        "email": "hs4233@mail.mn-solutions.de",
        "time": "Fri Sep 11 10:13:55 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Sep 23 11:35:39 2009 -0400"
      },
      "message": "cfg80211: minimal error handling for wext-compat freq scanning\n\nSigned-off-by: Holger Schurig \u003chs4233@mail.mn-solutions.de\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "50425b0977c53c6ac608f0b2c8a562a5c7cd5602",
      "tree": "4e81902d774bcf126ee7ea4b8e5f17daf3a205d8",
      "parents": [
        "10a01bfd4e077ff03a4ace76a6d9b81272f91678"
      ],
      "author": {
        "name": "Holger Schurig",
        "email": "h.schurig@mn-solutions.de",
        "time": "Fri Sep 11 10:13:53 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Sep 23 11:35:39 2009 -0400"
      },
      "message": "cfg80211: use cfg80211_wext_freq() for freq conversion\n\nWEXT\u0027s \"struct iw_freq\" can also be used to handle a channel. This patch now\nuses cfg80211_wext_freq() instead of hand-converting the frequency. That\nallows user-space to specify channels as well, like with SIOCSIWFREQ.\n\nSigned-off-by: Holger Schurig \u003chs4233@mail.mn-solutions.de\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a419aef8b858a2bdb98df60336063d28df4b272f",
      "tree": "1736f6650ec0bfc01074c489fc47396114099c5e",
      "parents": [
        "2944fcbe03d65a704f07e43efe14adb0d226fd09"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Aug 18 11:18:35 2009 -0700"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Sep 21 15:14:58 2009 +0200"
      },
      "message": "trivial: remove unnecessary semicolons\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "bbac31f4c0339f6c51afbd0edfb4959df9b53fa9",
      "tree": "50764245ec0b1a3ca2e25f43bdbe5d674ec0258e",
      "parents": [
        "8c6c03fe230c448e5795464a9d73efb796acf3d6"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Sep 16 09:04:26 2009 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Sep 16 16:21:00 2009 -0400"
      },
      "message": "cfg80211: fix SME connect\n\nThere\u0027s a check saying\n\t/* we\u0027re good if we have both BSSID and channel */\n\tif (wdev-\u003econn-\u003eparams.bssid \u0026\u0026 wdev-\u003econn-\u003eparams.channel) {\n\nbut that isn\u0027t true -- we need the BSS struct. This leads\nto errors such as\n\n    Trying to associate with 00:1b:53:11:dc:40 (SSID\u003d\u0027TEST\u0027 freq\u003d2412 MHz)\n    ioctl[SIOCSIWFREQ]: No such file or directory\n    ioctl[SIOCSIWESSID]: No such file or directory\n    Association request to the driver failed\n    Associated with 00:1b:53:11:dc:40\n\nin wpa_supplicant, as reported by Holger.\n\nInstead, we really need to have the BSS struct, and if we\ndon\u0027t, then we need to initiate a scan for it. But we may\nalready have the BSS struct here, so hang on to it if we\ndo and scan if we don\u0027t.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nTested-by: Holger Schurig \u003chs4233@mail.mn-solutions.de\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8862dc5f25153a3c565a097220ed3de14ed72dfd",
      "tree": "fa2afcc9c6ae9bf6388aaab65ddc8dca41f089cf",
      "parents": [
        "a4e7b730f1c8c9179def7033a024183c58cf2538"
      ],
      "author": {
        "name": "Holger Schurig",
        "email": "hs4233@mail.mn-solutions.de",
        "time": "Fri Sep 11 10:13:55 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Sep 14 14:36:04 2009 -0400"
      },
      "message": "cfg80211: minimal error handling for wext-compat freq scanning\n\nSigned-off-by: Holger Schurig \u003chs4233@mail.mn-solutions.de\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a4e7b730f1c8c9179def7033a024183c58cf2538",
      "tree": "b81bee6f9c4a69b5b9c81a2c03fe8284a6662daf",
      "parents": [
        "d37b7da39dbac8197e41a5f9c8162730f6b36d8b"
      ],
      "author": {
        "name": "Holger Schurig",
        "email": "h.schurig@mn-solutions.de",
        "time": "Fri Sep 11 10:13:53 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Sep 14 14:36:04 2009 -0400"
      },
      "message": "cfg80211: use cfg80211_wext_freq() for freq conversion\n\nWEXT\u0027s \"struct iw_freq\" can also be used to handle a channel. This patch now\nuses cfg80211_wext_freq() instead of hand-converting the frequency. That\nallows user-space to specify channels as well, like with SIOCSIWFREQ.\n\nSigned-off-by: Holger Schurig \u003chs4233@mail.mn-solutions.de\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "b2e3abdc708f8c0eff194af25362fdb239abe241",
      "tree": "a17ba8b9bab9078d73b7c452d3fa345d54a4908d",
      "parents": [
        "8c8f9ba7051b017e44124666b41c1dc70333a77c"
      ],
      "author": {
        "name": "Holger Schurig",
        "email": "hs4233@mail.mn-solutions.de",
        "time": "Wed Sep 09 13:09:54 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Sep 09 11:25:27 2009 -0400"
      },
      "message": "cfg80211: allow scanning on specified frequencies when using wext-compatibility\n\nHandles the case when SIOCSIWSCAN specified iw_scan_req.num_channels and\niw_scan_req.channels[].\n\nSigned-off-by: Holger Schurig \u003chs4233@mail.mn-solutions.de\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "b275f28535fc774325bb8ad5f664e6c44a8fbc9b",
      "tree": "e48d0e73c55f4662acd6e0b2545879ef3b1e8be1",
      "parents": [
        "d9c35a506ed7770301f705a9070e05f0c5fae4bd"
      ],
      "author": {
        "name": "Luis R. Rodriguez",
        "email": "lrodriguez@atheros.com",
        "time": "Tue Sep 01 08:53:49 2009 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Sep 08 16:31:06 2009 -0400"
      },
      "message": "wireless: update cfg80211 kconfig entry\n\ncfg80211 is now *the* wireless configuration API. Lets also\ngive a little explanation as to what it is and refer people to\nthe wireless wiki for more information.\n\nCc: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "fcc6cb0c13555e78c2d47257b6d1b5e59b0c419a",
      "tree": "b0fbc8129792ff3a0aa01bd437cfd1d957b8c076",
      "parents": [
        "abd8ea22c23c917f56fefcda8a4468fbc2247d7f"
      ],
      "author": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Tue Sep 01 18:12:11 2009 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Sep 02 15:29:04 2009 -0400"
      },
      "message": "cfg80211: fix looping soft lockup in find_ie()\n\nThe find_ie() function uses a size_t for the len parameter, and\ndirectly uses len as a loop variable.  If any received packets\nare malformed, it is possible for the decrease of len to overflow,\nand since the result is unsigned, the loop will not terminate.\nChange it to a signed int so the loop conditional works for\nnegative values.\n\nThis fixes the following soft lockup:\n\n[38573.102007] BUG: soft lockup - CPU#0 stuck for 61s! [phy0:2230]\n[38573.102007] Modules linked in: aes_i586 aes_generic fuse af_packet ipt_REJECT xt_tcpudp nf_conntrack_ipv4 nf_defrag_ipv4 xt_state iptable_filter ip_tables x_tables acpi_cpufreq binfmt_misc dm_mirror dm_region_hash dm_log dm_multipath dm_mod kvm_intel kvm uinput i915 arc4 ecb drm snd_hda_codec_idt ath5k snd_hda_intel hid_apple mac80211 usbhid appletouch snd_hda_codec snd_pcm ath cfg80211 snd_timer i2c_algo_bit ohci1394 video snd processor ieee1394 rfkill ehci_hcd sg sky2 backlight snd_page_alloc uhci_hcd joydev output ac thermal button battery sr_mod applesmc cdrom input_polldev evdev unix [last unloaded: scsi_wait_scan]\n[38573.102007] irq event stamp: 2547724535\n[38573.102007] hardirqs last  enabled at (2547724534): [\u003cc1002ffc\u003e] restore_all_notrace+0x0/0x18\n[38573.102007] hardirqs last disabled at (2547724535): [\u003cc10038f4\u003e] apic_timer_interrupt+0x28/0x34\n[38573.102007] softirqs last  enabled at (92950144): [\u003cc103ab48\u003e] __do_softirq+0x108/0x210\n[38573.102007] softirqs last disabled at (92950274): [\u003cc1348e74\u003e] _spin_lock_bh+0x14/0x80\n[38573.102007]\n[38573.102007] Pid: 2230, comm: phy0 Tainted: G        W  (2.6.31-rc7-wl #8) MacBook1,1\n[38573.102007] EIP: 0060:[\u003cf8ea2d50\u003e] EFLAGS: 00010292 CPU: 0\n[38573.102007] EIP is at cmp_ies+0x30/0x180 [cfg80211]\n[38573.102007] EAX: 00000082 EBX: 00000000 ECX: ffffffc1 EDX: d8efd014\n[38573.102007] ESI: ffffff7c EDI: 0000004d EBP: eee2dc50 ESP: eee2dc3c\n[38573.102007]  DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068\n[38573.102007] CR0: 8005003b CR2: d8efd014 CR3: 01694000 CR4: 000026d0\n[38573.102007] DR0: 00000000 DR1: 00000000 DR2: 00000000 DR3: 00000000\n[38573.102007] DR6: ffff0ff0 DR7: 00000400\n[38573.102007] Call Trace:\n[38573.102007]  [\u003cf8ea2f8d\u003e] cmp_bss+0xed/0x100 [cfg80211]\n[38573.102007]  [\u003cf8ea33e4\u003e] cfg80211_bss_update+0x84/0x410 [cfg80211]\n[38573.102007]  [\u003cf8ea3884\u003e] cfg80211_inform_bss_frame+0x114/0x180 [cfg80211]\n[38573.102007]  [\u003cf97255ff\u003e] ieee80211_bss_info_update+0x4f/0x180 [mac80211]\n[38573.102007]  [\u003cf972b118\u003e] ieee80211_rx_bss_info+0x88/0xf0 [mac80211]\n[38573.102007]  [\u003cf9739297\u003e] ? ieee802_11_parse_elems+0x27/0x30 [mac80211]\n[38573.102007]  [\u003cf972b224\u003e] ieee80211_rx_mgmt_probe_resp+0xa4/0x1c0 [mac80211]\n[38573.102007]  [\u003cf972bc59\u003e] ieee80211_sta_rx_queued_mgmt+0x919/0xc50 [mac80211]\n[38573.102007]  [\u003cc1009707\u003e] ? sched_clock+0x27/0xa0\n[38573.102007]  [\u003cc1009707\u003e] ? sched_clock+0x27/0xa0\n[38573.102007]  [\u003cc105ffd0\u003e] ? mark_held_locks+0x60/0x80\n[38573.102007]  [\u003cc1348be5\u003e] ? _spin_unlock_irqrestore+0x55/0x70\n[38573.102007]  [\u003cc134baa5\u003e] ? sub_preempt_count+0x85/0xc0\n[38573.102007]  [\u003cc1348bce\u003e] ? _spin_unlock_irqrestore+0x3e/0x70\n[38573.102007]  [\u003cc12c1c0f\u003e] ? skb_dequeue+0x4f/0x70\n[38573.102007]  [\u003cf972c021\u003e] ieee80211_sta_work+0x91/0xb80 [mac80211]\n[38573.102007]  [\u003cc1009707\u003e] ? sched_clock+0x27/0xa0\n[38573.102007]  [\u003cc134baa5\u003e] ? sub_preempt_count+0x85/0xc0\n[38573.102007]  [\u003cc10479af\u003e] worker_thread+0x18f/0x320\n[38573.102007]  [\u003cc104794e\u003e] ? worker_thread+0x12e/0x320\n[38573.102007]  [\u003cc1348be5\u003e] ? _spin_unlock_irqrestore+0x55/0x70\n[38573.102007]  [\u003cf972bf90\u003e] ? ieee80211_sta_work+0x0/0xb80 [mac80211]\n[38573.102007]  [\u003cc104cbb0\u003e] ? autoremove_wake_function+0x0/0x50\n[38573.102007]  [\u003cc1047820\u003e] ? worker_thread+0x0/0x320\n[38573.102007]  [\u003cc104c854\u003e] kthread+0x84/0x90\n[38573.102007]  [\u003cc104c7d0\u003e] ? kthread+0x0/0x90\n[38573.102007]  [\u003cc1003ab7\u003e] kernel_thread_helper+0x7/0x10\n\nCc: stable@kernel.org\nSigned-off-by: Bob Copeland \u003cme@bobcopeland.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "253850c10d1f9af46f4870616ed29f38ed39fd15",
      "tree": "0e0525524059c2832e954a80ea6bf8cc11a4309b",
      "parents": [
        "44175272ba5f08e842877ef230ff4ed21cf9ec39"
      ],
      "author": {
        "name": "Luis R. Rodriguez",
        "email": "lrodriguez@atheros.com",
        "time": "Tue Sep 01 08:22:43 2009 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Sep 02 15:29:03 2009 -0400"
      },
      "message": "wireless: update reg debug kconfig entry\n\nRefer to the wireless wiki for more information.\n\nSigned-off-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "0448b5fc032ea76096eb3cfbe3196b3c01b08b86",
      "tree": "836e9171ce8592afb7322e955e5767ee2222eb10",
      "parents": [
        "229a7ef7c2861f9ecb7e025f4bd4ea1167fbb0a7"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Sat Aug 22 21:15:49 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 28 14:40:41 2009 -0400"
      },
      "message": "nl80211: jump to out_err upon unsupported iftype\n\nJump to out_err when the iftype is not supported.\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "3d54d25515838543e56889aa7e48f40d00719368",
      "tree": "ac8e7ab50b5fa9e9be64885f86c99a0b6c71892c",
      "parents": [
        "f7969969f416e593bcc7dc24abf3f9fd6c27136d"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Aug 21 14:51:05 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 28 14:40:31 2009 -0400"
      },
      "message": "cfg80211: clean up properly on interface type change\n\nWhen the interface type changes while connected, and the\ndriver does not require the interface to be down for a\ntype change, it is currently possible to get very strange\nresults unless the driver takes special care, which it\nshouldn\u0027t have to.\n\nTo fix this, take care to disconnect/leave IBSS when\nchanging the interface type -- even if the driver may fail\nthe call. Also process all events that may be pending to\navoid running into a situation where an event is reported\nbut only processed after the type has already changed,\nwhich would lead to missing events and warnings.\n\nA side effect of this is that you will have disconnected\nor left the IBSS even if the mode change ultimately fails,\nbut since the intention was to change it and thus leave or\ndisconnect, this is not a problem.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f7969969f416e593bcc7dc24abf3f9fd6c27136d",
      "tree": "4f4e2ef49d2afae82442ba273d7490938232f113",
      "parents": [
        "3d832611d794b3d312d26a4b251ac5285206f90d"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Aug 21 12:23:49 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 28 14:40:30 2009 -0400"
      },
      "message": "cfg80211: make spurious warnings less likely, configurable\n\nBob reported that he got warnings in IBSS mode about\nthe ssid_len being zero on a joined event, but only\nwhen kmemcheck was enabled. This appears to be due\nto a race condition between drivers and userspace,\nwhen the driver reports joined but the user in the\nmeantime decided to leave the IBSS again, the warning\nwould trigger. This was made more likely by kmemcheck\ndelaying the code that does the check and sends the\nevent.\n\nSo first, make the warning trigger closer to the\ndriver, which means it\u0027s not locked, but since only\nthe warning depends on it that\u0027s ok.\n\nAnd secondly, users will not want to have spurious\nwarnings at all, so make those that are known to be\nracy in such a way configurable.\n\nReported-by: Bob Copeland \u003cme@bobcopeland.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "01a0ac417ce9b4f1216a266f2fd454cffefc5aee",
      "tree": "3bc13cf46eebc77a44e65b16132d26f71b131f50",
      "parents": [
        "40ba60ddfeff8ef42fb33c0bdacfbb5f83e96b32"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Aug 20 21:36:16 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 28 14:40:25 2009 -0400"
      },
      "message": "cfg80211: check lost scans later, fix bug\n\nWhen we lose a scan, cfg80211 tries to clean up after\nthe driver. However, it currently does this too early,\nit does this in GOING_DOWN already instead of DOWN, so\nit may happen with mac80211. Besides fixing this, also\nmake it more robust by leaking the scan request so if\nthe driver later actually finishes the scan, it won\u0027t\ncrash. Also check in ___cfg80211_scan_done whether a\nscan request is still pending and exit if not.\n\nReported-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nTested-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "16a832e785820aa199641c77b2d6f4a443d2ec46",
      "tree": "dbd843a2f054d0b826802d5f596f0581b3ea33d7",
      "parents": [
        "30fab9e0aecf15ca79bb194bb603203f5e1fde66"
      ],
      "author": {
        "name": "Zhu Yi",
        "email": "yi.zhu@intel.com",
        "time": "Wed Aug 19 16:08:22 2009 +0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:07 2009 -0400"
      },
      "message": "cfg80211: allow cfg80211_connect_result with bssid \u003d\u003d NULL\n\nIn case of connection failure, the bssid info is not a must have.\n\nSigned-off-by: Zhu Yi \u003cyi.zhu@intel.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "415ad1efae1d5fe00d739e612d262eabda90f5e8",
      "tree": "285f400386932f691849b3c0114c322b64214a88",
      "parents": [
        "eeef41854deae30ea304544f18684df70ae3f87b"
      ],
      "author": {
        "name": "David Kilroy",
        "email": "kilroyd@googlemail.com",
        "time": "Wed Aug 19 00:43:31 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:06 2009 -0400"
      },
      "message": "cfg80211: fix leaks of wdev-\u003econn-\u003eie\n\nThis only occurs in the following error situations:\n - driver calls connect_result with failure\n - error scheduling authentication on connect\n - error initiating scan (to get BSSID and channel) on\n   connect\n - userspace calls disconnect while in the SCANNING or\n   SCAN_AGAIN states\n\nSigned-off-by: David Kilroy \u003ckilroyd@googlemail.com\u003e\nReviewed-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ad002395fd230528281083f4be71855ed7e35b04",
      "tree": "c2bccce17ad69dcfb454fe3a38ba68f0f210b5b5",
      "parents": [
        "21f8a73f829797eb7ebc12202b4c68e10e751ddb"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Aug 18 19:51:57 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:05 2009 -0400"
      },
      "message": "cfg80211: fix dangling scan request checking\n\nMy patch \"cfg80211: fix deadlock\" broke the code it\nwas supposed to fix, the scan request checking. But\nit\u0027s not trivial to put it back the way it was, since\nthe original patch had a deadlock.\n\nNow do it in a completely new way: queue the check\noff to a work struct, where we can freely lock. But\nthat has some more complications, like needing to\nwait for it to be done before the wiphy/rdev can be\ndestroyed, so some code is required to handle that.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ea416a793d2b611f22b42ba094fd2e5bd30fff43",
      "tree": "bfa379d79861a1b2b11f26810873dc7a4dc8f847",
      "parents": [
        "86b2892a22a433e56e39e33bf353adc6cc4eabb2"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Aug 17 12:22:14 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:35:57 2009 -0400"
      },
      "message": "cfg80211: report userspace SME connected event properly\n\nInstead of hacking the event reporting into the\n__cfg80211_connect_result() function which is also\ninvoked by others, set up things correctly and then\ninvoke that function, so that it can do more sanity\nchecking.\n\nAlso, it is currently not possible to get a ROAMED\nevent from the userspace SME anyway since we send\nout a DISCONNECTED event when it disassociates and\nthen a new CONNECTED event on the next association.\n\nThanks to Zhu Yi for pointing out that the code is\nsomewhat convoluted and doesn\u0027t warn when it should.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "0ff6ce7b36199f67f709c750e9a2a66659a4babe",
      "tree": "3b023b960e010b7ce84d35d8e9b516f5cb285f77",
      "parents": [
        "96909e97716de1d86e6e24d6aabce09980372771"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Aug 17 12:25:37 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:35:56 2009 -0400"
      },
      "message": "cfg80211: fix deadlock\n\nWhen removing an interface with nl80211, cfg80211 will\ndeadlock in the netdev notifier because we\u0027re already\nholding rdev-\u003emtx and try to acquire it again to verify\nthe scan has been done.\n\nThis bug was introduced by my patch\n\"cfg80211: check for and abort dangling scan requests\".\n\nTo fix this, move the dangling scan request check into\nwiphy_unregister(). This will not be able to catch all\ncases right away, but if the scan problem happens with\na manual ifdown or so it will be possible to remedy it\nby removing the module/device.\n\nAdditionally, add comments about the deadlock scenario.\n\nReported-by: Christian Lamparter \u003cchunkeey@web.de\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nTested-by: Christian Lamparter \u003cchunkeey@web.de\u003e\nTested-by: Kalle Valo \u003ckalle.valo@iki.fi\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a8b875e7dc80ff442698d8cf4f45ccce400a6a66",
      "tree": "f318ad20e441b902612e7d300eb8996d864eda8a",
      "parents": [
        "7021f62a46d4866fecd7b31cbc359d742876bb61"
      ],
      "author": {
        "name": "Jussi Kivilinna",
        "email": "jussi.kivilinna@mbnet.fi",
        "time": "Thu Aug 13 20:39:31 2009 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:33:09 2009 -0400"
      },
      "message": "cfg80211: export cfg80211_wext_siwfreq\n\ncfg80211_wext_siwfreq() should be exported with EXPORT_SYMBOL_GPL.\n\nSigned-off-by: Jussi Kivilinna \u003cjussi.kivilinna@mbnet.fi\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "16cb9d42b68b339852e8914f2538ca9a2aec616c",
      "tree": "aef8822ae4d5dc7574af3c52501b8d6449c2ccc0",
      "parents": [
        "36e6fea84905512ea776707e82b5b435220efc17"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Aug 12 23:33:20 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:14:08 2009 -0400"
      },
      "message": "cfg80211: allow driver to override PS default\n\nSometimes drivers might have a good reason to override\nthe PS default, like iwlwifi right now where it affects\nRX performance significantly at this point. This will\nallow them to override the default, if desired, in a\nway that users can still change it according to their\ntrade-off choices, not the driver\u0027s, like would happen\nif the driver just disabled PS completely then.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "36e6fea84905512ea776707e82b5b435220efc17",
      "tree": "db588e7dbbfcf0fa47f4954344a03961e960c898",
      "parents": [
        "70bdb6b275d789ddf05c3a858e6b57715539394b"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Aug 12 22:21:21 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:14:07 2009 -0400"
      },
      "message": "cfg80211: check for and abort dangling scan requests\n\nIf you trigger a scan request on an interface and then\ntake it down, or rmmod the module or unplug the device\nthe driver might \"forget\" to cancel the scan request.\nThat is a bug in the driver, but the current behaviour\nis that we just hang endlessly waiting for the netdev\nrefcount to become 0 which it never will. To improve\nrobustness, check for this situation in cfg80211, warn\nabout it and clean up behind the driver. I don\u0027t just\nclean up silently because it\u0027s likely that the driver\nalso has some internal state it has now leaked.\n\nAdditionally, this fixes a locking bug, clearing the\nscan_req pointer should be done under the rdev lock.\n\nFinally, we also need to _wait_ for the scan work and\nnot just abort it since it might be pending and wanting\nto do a cleanup.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "1fe90b033e04d7402b3deb392420fe2ff57986a5",
      "tree": "28f7281830b2908a294d2e621aa4696f4e6fad6d",
      "parents": [
        "73d0a13c8583cd9a84c1333cf9b45d1d894e52b3"
      ],
      "author": {
        "name": "Thadeu Lima de Souza Cascardo",
        "email": "cascardo@holoscopio.com",
        "time": "Tue Aug 11 11:18:42 2009 -0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:14:02 2009 -0400"
      },
      "message": "trivial: remove duplicate \"different\" from comment\n\nSigned-off-by: Thadeu Lima de Souza Cascardo \u003ccascardo@holoscopio.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "3c5772a5279de9eadfff7adb5ddea08106495fff",
      "tree": "297772521c18283ccfa19aacb090f396fa2b399e",
      "parents": [
        "a9e3091bf08ddea35f172549a8a21d5bd6ee6129"
      ],
      "author": {
        "name": "Javier Cardona",
        "email": "javier@cozybit.com",
        "time": "Mon Aug 10 12:15:48 2009 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:14:00 2009 -0400"
      },
      "message": "mac80211: Use 3-address format for mesh broadcast frames.\n\nThe 11s task group recently changed the frame mesh multicast/broadcast frame\nformat to use 3-address.  This was done to avoid interactions with widely\ndeployed lazy-WDS access points.\n\nThis patch changes the format of group addressed frames, both mesh-originated\nand proxied, to use the data format defined in draft D2.08 and forward.  The\naddress fields used for group addressed frames is:\n\nIn 802.11 header\n ToDS:0  FromDS:1\n addr1: DA  (broadcast/multicast address)\n addr2: TA\n addr3: Mesh SA\n\nIn address extension header:\n addr4: SA  (only present if frame was proxied)\n\nNote that this change breaks backward compatibility with earlier mesh stack\nversions.\n\nSigned-off-by: Andrey Yurovsky \u003candrey@cozybit.com\u003e\nSigned-off-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "aee83eaff859694642b323553f93b9eb59141144",
      "tree": "cba03d4b09fa82b8da3958080f3e7b7e1e4cb43a",
      "parents": [
        "af6a3fc7e728eb4cd14653c8cfc1ee81432cfd5d"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sun Aug 09 11:51:29 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:13:54 2009 -0400"
      },
      "message": "cfg80211: add missing device list locking\n\nWhen calling into the wext code from the NETDEV_UP\nnotifier, we need to hold the devlist_mtx mutex as\nthe wext code ends up calling into channel checks.\n\nReported-by: Kalle Valo \u003ckalle.valo@iki.fi\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nTested-by: Kalle Valo \u003ckalle.valo@iki.fi\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "d5b96a6f39a8aaa7534069b3db71048df44f023b",
      "tree": "f02b5a32440794d33b6a18ea78a491ede05cb061",
      "parents": [
        "1afcfd54fdf913017c07fa1ee497141a7958991d"
      ],
      "author": {
        "name": "Pat Erley",
        "email": "pat-lkml@erley.org",
        "time": "Sat Aug 08 17:53:19 2009 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:13:53 2009 -0400"
      },
      "message": "mac80211: remove max_bandwidth\n\nThis removes the max_bandwidth attribute.  It is only ever\nwritten to, and is duplicated by max_bandwidth_khz in the\nregulatory code.\n\nSigned-off-by: Pat Erley \u003cpat-lkml@erley.org\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4b181144e6c1c25aaba9b9fc7cc70c95495ecb92",
      "tree": "93f85f1c99f097ec3c60f45b7b917c1b0dfbf7f9",
      "parents": [
        "e312c24cf8229f9b6e76dbfd5d99eefe21f4ac0a"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sat Aug 08 11:03:58 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:13:51 2009 -0400"
      },
      "message": "cfg80211: fix locking for SIWFREQ\n\n\"cfg80211: validate channel settings across interfaces\"\ncontained a locking bug -- in the managed-mode SIWFREQ\ncall it would end up running into a lock recursion.\n\nThis fixes it by not checking that particular interface\nfor a channel that it needs to stay on, which is as it\nshould be as that\u0027s the interface we\u0027re setting the\nchannel for.\n\nReported-by: Reinette Chatre \u003creinette.chatre@intel.com\u003e\nReported-by: Kalle Valo \u003ckalle.valo@iki.fi\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nTested-by: Kalle Valo \u003ckalle.valo@iki.fi\u003e\nTested-by: Reinette Chatre \u003creinette.chatre@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5ba63533bbf653631faab60f6988506160ec6ba4",
      "tree": "8d9ef2670cd3b2f50fe3581820fba5aca365634d",
      "parents": [
        "ad5351db89681515681c5d5659ddf4c69e3cc6f5"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Aug 07 17:54:07 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:13:44 2009 -0400"
      },
      "message": "cfg80211: fix alignment problem in scan request\n\nThe memory layout for scan requests was rather wrong,\nwe put the scan SSIDs before the channels which could\nlead to the channel pointers being unaligned in memory.\nIt turns out that using a pointer to the channel array\nisn\u0027t necessary anyway since we can embed a zero-length\narray into the struct.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f5ea9120be2e5d5c846243416cfdce01d02f5836",
      "tree": "cade27e47a90dde79a523598b96a2ebb50770d2f",
      "parents": [
        "f401a6f7ede753e56b84025e7d2db0d5ef560ce6"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Aug 07 16:17:38 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:13:43 2009 -0400"
      },
      "message": "nl80211: add generation number to all dumps\n\nIn order for userspace to be able to figure out whether\nit obtained a consistent snapshot of data or not when\nusing netlink dumps, we need to have a generation number\nin each dump message that indicates whether the list has\nchanged or not -- its value is arbitrary.\n\nThis patch adds such a number to all dumps, this needs\nsome mac80211 involvement to keep track of a generation\nnumber to start with when adding/removing mesh paths or\nstations.\n\nThe wiphy and netdev lists can be fully handled within\ncfg80211, of course, but generation numbers need to be\nstored there as well.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f401a6f7ede753e56b84025e7d2db0d5ef560ce6",
      "tree": "12b077096234ba0f990c637665d11e0afa608b17",
      "parents": [
        "59bbb6f7574bc693ed8313b98eac641116c95b94"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Aug 07 14:51:05 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:13:43 2009 -0400"
      },
      "message": "cfg80211: use reassociation when possible\n\nWith the move of everything related to the SME from\nmac80211 to cfg80211, we lost the ability to send\nreassociation frames. This adds them back, but only\nfor wireless extensions. With the userspace SME, it\nshall control assoc vs. reassoc (it already can do\nso with the nl80211 interface).\n\nI haven\u0027t touched the connect() implementation, so\nit is not possible to reassociate with the nl80211\nconnect primitive. I think that should be done with\nthe NL80211_CMD_ROAM command, but we\u0027ll have to see\nhow that can be handled in the future, especially\nwith fullmac chips.\n\nThis patch addresses only the immediate regression\nwe had in mac80211, which previously sent reassoc.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "59bbb6f7574bc693ed8313b98eac641116c95b94",
      "tree": "da24ed15c5e375782e79b3dab7022d2100a7987a",
      "parents": [
        "f26b32ed4bd5780855a79bb17fb1a431fa867dad"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Aug 07 17:22:35 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:13:42 2009 -0400"
      },
      "message": "cfg80211: validate channel settings across interfaces\n\nCurrently, there\u0027s a problem that affects regulatory\nenforcement and connection stability, in that it is\npossible to switch the channel while connected to a\nnetwork or joined to an IBSS.\n\nThe problem comes from the fact that we only validate\nthe channel against the current interface\u0027s type, not\nagainst any other interface. Thus, you have any type\nof interface up, additionally bring up a monitor mode\ninterface and switch the channel on the monitor. This\nwill obviously also switch the channel on the other\ninterface.\n\nThe problem now is that if you do that while sending\nbeacons for IBSS mode, you can switch to a disabled\nchannel or a channel that doesn\u0027t allow beaconing.\nCombined with a managed mode interface connected to\nan AP instead of an IBSS interface, you can easily\nbreak the connection that way.\n\nTo fix this, this patch validates any channel change\nwith all available interfaces, and disallows such\nchanges on secondary interfaces if another interface\nis connected to an AP or joined to an IBSS.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "bcba8eae12fce23686b84a56d19f5fc78bf182ae",
      "tree": "f576449002a6f82d914c2af43563717a47651b59",
      "parents": [
        "b6f0b639089fb160b10984ac56e07e7043dabad7"
      ],
      "author": {
        "name": "Samuel Ortiz",
        "email": "sameo@linux.intel.com",
        "time": "Thu Aug 06 21:04:41 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:12:47 2009 -0400"
      },
      "message": "cfg80211: Set WEP ciphers\n\nWith iwconfig there is no way to properly set the ciphers when trying to\nconnect to a WEP SSID. Although mac80211 based drivers dont need it, several\nfullmac drivers do.\nThis patch basically sets the WEP ciphers whenever they\u0027re not set at all.\n\nSigned-off-by: Samuel Ortiz \u003csameo@linux.intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "b6f0b639089fb160b10984ac56e07e7043dabad7",
      "tree": "a0f1b09c77be822d41df7d26772e1e3b57ad63fe",
      "parents": [
        "e458b8a22d33eef62765c9f89889efeb4041f073"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Aug 06 20:41:34 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:12:47 2009 -0400"
      },
      "message": "cfg80211: fix SME association after disassociation\n\nWhen an AP disassociates us, we currently go into a weird\nstate because the SME doesn\u0027t handle authenticated but not\nassociated well unless it\u0027s within its own state machine,\nit can\u0027t recover from that. However, it shouldn\u0027t need to,\nsince we don\u0027t do any decisions in it really -- so when we\nget disconnected, simply deauthenticate too.\n\nReported-by: Pavel Roskin \u003cproski@gnu.org\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e458b8a22d33eef62765c9f89889efeb4041f073",
      "tree": "e738ffebfecb0e461ca033528dd39a8b86839770",
      "parents": [
        "e21546a2a3953a7d4b9d5c9b1cf12184ffceab96"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Aug 06 20:41:33 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:12:46 2009 -0400"
      },
      "message": "cfg80211: fix nl80211 disconnected events\n\nWhen reporting a disconnection to userspace, we try\nto report whether it was from the AP or by our own\nchoice. However, we misreported a broadcast deauth\nor disassoc as being by own choice, which is wrong.\nFix this by checking the sender address instead of\nthe destination address.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "b935df01ed4f0848f29b1e39c4f95d87b0206dea",
      "tree": "575a56fa443f646dbbeb1fe2895d47a696a212e6",
      "parents": [
        "4af198fb7a99b07980b1bd52df550ba3f24688df"
      ],
      "author": {
        "name": "Pavel Roskin",
        "email": "proski@gnu.org",
        "time": "Thu Aug 06 04:52:42 2009 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:12:45 2009 -0400"
      },
      "message": "cfg80211: fix disassociation warning due to misuse of wdev-\u003ecurrent_bss\n\nWARN_ON was triggered at mlme.c:213 when dissociating from an AP.\n\nwdev-\u003ecurrent_bss-\u003epub.bssid should be used in place of\nwdev-\u003ecurrent_bss for BSSID comparison.\n\nSigned-off-by: Pavel Roskin \u003cproski@gnu.org\u003e\nReviewed-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a42dd7efd934888833c01199dbd21b242100ee92",
      "tree": "e16e5a19a0b0ad38261794a16f21b13c7ea1ad7a",
      "parents": [
        "bedaf80866f5d438b47d05e02fb1852065fe5d8e"
      ],
      "author": {
        "name": "Zhu Yi",
        "email": "yi.zhu@intel.com",
        "time": "Wed Aug 05 15:07:13 2009 +0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:12:41 2009 -0400"
      },
      "message": "wireless: display wext SSID when connected by cfg80211\n\ncfg80211 displays correct link info when connected by wext. But if\nthe connection is setup by cfg80211, wext cannot display the SSID.\nThis patch fixed this issue.\n\nCc: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Zhu Yi \u003cyi.zhu@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "aa11d958d1a6572eda08214d7c6a735804fe48a5",
      "tree": "d025b05270ad1e010660d17eeadc6ac3c1abbd7d",
      "parents": [
        "07f6642ee9418e962e54cbc07471cfe2e559c568",
        "9799218ae36910af50f002a5db1802d576fffb43"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 12 17:44:53 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 12 17:44:53 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tarch/microblaze/include/asm/socket.h\n"
    },
    {
      "commit": "8dadadb7e977a91b46ed3549f9d2f22a629e5043",
      "tree": "0197012596c7c6f148e8b268b78f69a0e7f45250",
      "parents": [
        "847c1e130092240c225a7be08607a7bf4e296fbd"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Aug 04 09:32:23 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Aug 04 16:44:26 2009 -0400"
      },
      "message": "cfg80211: clear SSID on disconnect/no connection\n\nThe SME state machine in cfg80211 uses the SSID stored\nin struct wireless_dev internally, but fails to clear\nit in multiple places (when giving up on a connection\nattempt and when disconnecting). This doesn\u0027t matter to\nthe SME state machine, but does matter for IBSS. Thus,\nin those cases, clear the SSID to avoid messing up the\nIBSS state machine.\n\nReported-by: Joerg Albert \u003cjal2@gmx.de\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "75e6c3b72b3ab01c47629f3fbd0fed4e6550bf3a",
      "tree": "aff326fc05c30a81a7b91e621e58268726b54b08",
      "parents": [
        "97cad51e191919b43aabdc85b83241b66c3fcf2c"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Jul 31 11:18:13 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Aug 04 16:44:20 2009 -0400"
      },
      "message": "cfg80211: lower dynamic PS timeout to 100ms\n\nThe default of 500ms is pretty high, and leads\nto the device being awake at least 50% of the\ntime under such light traffic conditions as a\nsimple 1 second interval ping. Reduce to just\n100ms -- it should have a similar effect while\nproviding a better sleep time.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nReviewed-by: Kalle Valo \u003ckalle.valo@iki.fi\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8b19e6ca3bac7e04e93fb73f561d670e77c5fae6",
      "tree": "50a1487febe99b670aab253c4eebee2b8b3c8268",
      "parents": [
        "abc7381bcca6ce9dc101f112a13e14957bfbda7e"
      ],
      "author": {
        "name": "Luis R. Rodriguez",
        "email": "lrodriguez@atheros.com",
        "time": "Thu Jul 30 17:38:09 2009 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Aug 04 16:44:19 2009 -0400"
      },
      "message": "cfg80211: enable country IE support to all cfg80211 drivers\n\nSince the bss is always set now once we are connected, if the\nbss has its own information element we refer to it and pass that\ninstead of relying on mac80211\u0027s parsing.\n\nNow all cfg80211 drivers get country IE support, automatically and\nwe reduce the call overhead that we had on mac80211 which called this\nupon every beacon and instead now call this only upon a successfull\nconnection by a STA on cfg80211.\n\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "abc7381bcca6ce9dc101f112a13e14957bfbda7e",
      "tree": "b56d22241fbba51614e773617ef65f2b20661795",
      "parents": [
        "4b44c8bc4d077f1a7a9e5e946a1400c3cbcadee7"
      ],
      "author": {
        "name": "Luis R. Rodriguez",
        "email": "lrodriguez@atheros.com",
        "time": "Thu Jul 30 17:38:08 2009 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Aug 04 16:44:18 2009 -0400"
      },
      "message": "cfg80211: decouple regulatory variables from cfg80211_mutex\n\nWe change regulatory code to be protected by its own regulatory\nmutex and alleviate cfg80211_mutex to only be used to protect\ncfg80211_rdev_list, the registered device list.\n\nBy doing this we will be able to work on regulatory core components\nwithout having to have hog up the cfg80211_mutex. An example here is\nwe no longer need to use the cfg80211_mutex during driver specific\nwiphy_apply_custom_regulatory(). We also no longer need it for the\nthe country IE regulatory hint; by doing so we end up curing this\nnew lockdep warning:\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n[ INFO: possible circular locking dependency detected ]\n2.6.31-rc4-wl #12\n-------------------------------------------------------\nphy1/1709 is trying to acquire lock:\n (cfg80211_mutex){+.+.+.}, at: [\u003cffffffffa00af852\u003e] regulatory_hint_11d+0x32/0x3f0 [cfg80211]\n\nbut task is already holding lock:\n (\u0026ifmgd-\u003emtx){+.+.+.}, at: [\u003cffffffffa0144228\u003e] ieee80211_sta_work+0x108/0x10f0 [mac80211]\n\nwhich lock already depends on the new lock.\n\nthe existing dependency chain (in reverse order) is:\n\n-\u003e #3 (\u0026ifmgd-\u003emtx){+.+.+.}:\n       [\u003cffffffff810857b6\u003e] __lock_acquire+0xd76/0x12b0\n       [\u003cffffffff81085dd3\u003e] lock_acquire+0xe3/0x120\n       [\u003cffffffff814eeae4\u003e] mutex_lock_nested+0x44/0x350\n       [\u003cffffffffa0141bb8\u003e] ieee80211_mgd_auth+0x108/0x1f0 [mac80211]\n       [\u003cffffffffa0148563\u003e] ieee80211_auth+0x13/0x20 [mac80211]\n       [\u003cffffffffa00bc3a1\u003e] __cfg80211_mlme_auth+0x1b1/0x2a0 [cfg80211]\n       [\u003cffffffffa00bc516\u003e] cfg80211_mlme_auth+0x86/0xc0 [cfg80211]\n       [\u003cffffffffa00b368d\u003e] nl80211_authenticate+0x21d/0x230 [cfg80211]\n       [\u003cffffffff81416ba6\u003e] genl_rcv_msg+0x1b6/0x1f0\n       [\u003cffffffff81415c39\u003e] netlink_rcv_skb+0x89/0xb0\n       [\u003cffffffff814169d9\u003e] genl_rcv+0x29/0x40\n       [\u003cffffffff8141591d\u003e] netlink_unicast+0x29d/0x2b0\n       [\u003cffffffff81416514\u003e] netlink_sendmsg+0x214/0x300\n       [\u003cffffffff813e4407\u003e] sock_sendmsg+0x107/0x130\n       [\u003cffffffff813e45b9\u003e] sys_sendmsg+0x189/0x320\n       [\u003cffffffff81011f82\u003e] system_call_fastpath+0x16/0x1b\n       [\u003cffffffffffffffff\u003e] 0xffffffffffffffff\n\n-\u003e #2 (\u0026wdev-\u003emtx){+.+.+.}:\n       [\u003cffffffff810857b6\u003e] __lock_acquire+0xd76/0x12b0\n       [\u003cffffffff81085dd3\u003e] lock_acquire+0xe3/0x120\n       [\u003cffffffff814eeae4\u003e] mutex_lock_nested+0x44/0x350\n       [\u003cffffffffa00ab304\u003e] cfg80211_netdev_notifier_call+0x1a4/0x390 [cfg80211]\n       [\u003cffffffff814f3dff\u003e] notifier_call_chain+0x3f/0x80\n       [\u003cffffffff81075a91\u003e] raw_notifier_call_chain+0x11/0x20\n       [\u003cffffffff813f665a\u003e] dev_open+0x10a/0x120\n       [\u003cffffffff813f59bd\u003e] dev_change_flags+0x9d/0x1e0\n       [\u003cffffffff8144eb6e\u003e] devinet_ioctl+0x6fe/0x760\n       [\u003cffffffff81450204\u003e] inet_ioctl+0x94/0xc0\n       [\u003cffffffff813e25fa\u003e] sock_ioctl+0x6a/0x290\n       [\u003cffffffff8111e911\u003e] vfs_ioctl+0x31/0xa0\n       [\u003cffffffff8111ea9a\u003e] do_vfs_ioctl+0x8a/0x5c0\n       [\u003cffffffff8111f069\u003e] sys_ioctl+0x99/0xa0\n       [\u003cffffffff81011f82\u003e] system_call_fastpath+0x16/0x1b\n       [\u003cffffffffffffffff\u003e] 0xffffffffffffffff\n\n-\u003e #1 (\u0026rdev-\u003emtx){+.+.+.}:\n       [\u003cffffffff810857b6\u003e] __lock_acquire+0xd76/0x12b0\n       [\u003cffffffff81085dd3\u003e] lock_acquire+0xe3/0x120\n       [\u003cffffffff814eeae4\u003e] mutex_lock_nested+0x44/0x350\n       [\u003cffffffffa00ac4d0\u003e] cfg80211_get_dev_from_ifindex+0x60/0x90 [cfg80211]\n       [\u003cffffffffa00b21ff\u003e] get_rdev_dev_by_info_ifindex+0x6f/0xa0 [cfg80211]\n       [\u003cffffffffa00b51eb\u003e] nl80211_set_interface+0x3b/0x260 [cfg80211]\n       [\u003cffffffff81416ba6\u003e] genl_rcv_msg+0x1b6/0x1f0\n       [\u003cffffffff81415c39\u003e] netlink_rcv_skb+0x89/0xb0\n       [\u003cffffffff814169d9\u003e] genl_rcv+0x29/0x40\n       [\u003cffffffff8141591d\u003e] netlink_unicast+0x29d/0x2b0\n       [\u003cffffffff81416514\u003e] netlink_sendmsg+0x214/0x300\n       [\u003cffffffff813e4407\u003e] sock_sendmsg+0x107/0x130\n       [\u003cffffffff813e45b9\u003e] sys_sendmsg+0x189/0x320\n       [\u003cffffffff81011f82\u003e] system_call_fastpath+0x16/0x1b\n       [\u003cffffffffffffffff\u003e] 0xffffffffffffffff\n\nother info that might help us debug this:\n\n3 locks held by phy1/1709:\n #0:  ((wiphy_name(local-\u003ehw.wiphy))){+.+.+.}, at: [\u003cffffffff8106b45d\u003e] worker_thread+0x19d/0x340\n #1:  (\u0026ifmgd-\u003ework){+.+.+.}, at: [\u003cffffffff8106b45d\u003e] worker_thread+0x19d/0x340\n #2:  (\u0026ifmgd-\u003emtx){+.+.+.}, at: [\u003cffffffffa0144228\u003e] ieee80211_sta_work+0x108/0x10f0 [mac80211]\n\nReported-by: Reinette Chatre \u003creinette.chatre@intel.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4b44c8bc4d077f1a7a9e5e946a1400c3cbcadee7",
      "tree": "ba2640e5a74314d213f9564197b1b68cc994fc4b",
      "parents": [
        "9828b0170eef541c3fa583caa0134dadbb1d3ea6"
      ],
      "author": {
        "name": "Luis R. Rodriguez",
        "email": "lrodriguez@atheros.com",
        "time": "Thu Jul 30 17:38:07 2009 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Aug 04 16:44:18 2009 -0400"
      },
      "message": "cfg80211: do not iterate over rdev list on country IE hint\n\nSimplify the country IE hint code by just bailing out if\na previous country IE has been issued. We currently just trust\nthe first AP we connect to on any card. The idea was to perform\nconflict resolution within this routine but since we can no longer\niterate over the registered device list here we leave conflict\nresolution to be dealt with at a later time on the workqueue.\n\nThis code has no functional changes other than saving us an\ninteration over the registered device list when a second card\nis connected, or you unplug and connect the same one, and a\ncountry IE is received. This would have been done upon every\nbeacon received.\n\nSigned-off-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "9828b0170eef541c3fa583caa0134dadbb1d3ea6",
      "tree": "57be41f7595a145630c86dfb81a7e6aea4f8b242",
      "parents": [
        "056508dcb6890586745aa937e779f00fde05531b"
      ],
      "author": {
        "name": "Luis R. Rodriguez",
        "email": "lrodriguez@atheros.com",
        "time": "Thu Jul 30 17:38:06 2009 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Aug 04 16:44:18 2009 -0400"
      },
      "message": "cfg80211: use goto out on country IE reg hint failure\n\nThis has no functional changes.\n\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e40cbdac0629402a4cb0c3bca0cc19ab7a00e00d",
      "tree": "1bd8e7379d68af119ec91d07a1b85549cbe6b5f3",
      "parents": [
        "e46ab7f0886143846d8da2ca06c2b0e245f34dc6"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Jul 30 14:04:01 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Aug 04 16:44:15 2009 -0400"
      },
      "message": "cfg80211: fix NETDEV_UNREGISTER notifier\n\nIt\u0027s possible to get the NETDEV_UNREGISTER callback multiple\ntimes (see net/core/dev.c:netdev_wait_allrefs) and this will\ncompletely mess up our cleanup code. To avoid that, clean up\nonly when the interface is still on the wiphy interface list\nfrom which it\u0027s removed on the first NETDEV_UNREGISTER call.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "df7fc0f9735085bb617fff774bfd71465edb448c",
      "tree": "2b47f3823a8aee6c13e86aa3dedc06bda9ebae38",
      "parents": [
        "97af743207466ff8b477e14bfb7af0ba2c93375b"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Jul 29 11:23:49 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Aug 04 16:43:24 2009 -0400"
      },
      "message": "cfg80211: keep track of current_bss for userspace SME\n\nWhen a userspace SME is active, we\u0027re currently not\nkeeping track of the BSS properly for reporting the\ncurrent link and for internal use. Additionally, it\nlooks like there is a possible BSS leak in that the\nBSS never gets removed from auth_bsses[]. To fix it,\npass the BSS struct to __cfg80211_connect_result in\nthis case.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "dd21dcdc65a182222666199ec4cea188a11cb5d2",
      "tree": "22362b1ecf848576291916d3f66b22a153c6415e",
      "parents": [
        "e351cfbf4e6ccd8bf32555748a49dba5bc93fcb0"
      ],
      "author": {
        "name": "Luis R. Rodriguez",
        "email": "lrodriguez@atheros.com",
        "time": "Mon Jul 27 16:10:22 2009 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Aug 04 16:43:20 2009 -0400"
      },
      "message": "wext: remove extra return on wireless_nlevent_init()\n\nSigned-off-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "371842448c05b42d11a4be1c8e4e81d62ecc7534",
      "tree": "37c6f66d8a34999801cd09abffd7d7b66c0925dd",
      "parents": [
        "cd3468bad96c00b5a512f551674f36776129520e"
      ],
      "author": {
        "name": "Luis R. Rodriguez",
        "email": "lrodriguez@atheros.com",
        "time": "Thu Jul 30 17:43:48 2009 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Aug 03 16:31:21 2009 -0400"
      },
      "message": "cfg80211: fix regression on beacon world roaming feature\n\nA regression was added through patch a4ed90d6:\n\n\"cfg80211: respect API on orig_flags on channel for beacon hint\"\n\nWe did indeed respect _orig flags but the intention was not clearly\nstated in the commit log. This patch fixes firmware issues picked\nup by iwlwifi when we lift passive scan of beaconing restrictions\non channels its EEPROM has been configured to always enable.\n\nBy doing so though we also disallowed beacon hints on devices\nregistering their wiphy with custom world regulatory domains\nenabled, this happens to be currently ath5k, ath9k and ar9170.\nThe passive scan and beacon restrictions on those devices would\nnever be lifted even if we did find a beacon and the hardware did\nsupport such enhancements when world roaming.\n\nSince Johannes indicates iwlwifi firmware cannot be changed to\nallow beacon hinting we set up a flag now to specifically allow\ndrivers to disable beacon hints for devices which cannot use them.\n\nWe enable the flag on iwlwifi to disable beacon hints and by default\nenable it for all other drivers. It should be noted beacon hints lift\npassive scan flags and beacon restrictions when we receive a beacon from\nan AP on any 5 GHz non-DFS channels, and channels 12-14 on the 2.4 GHz\nband. We don\u0027t bother with channels 1-11 as those channels are allowed\nworld wide.\n\nThis should fix world roaming for ath5k, ath9k and ar9170, thereby\nimproving scan time when we receive the first beacon from any AP,\nand also enabling beaconing operation (AP/IBSS/Mesh) on cards which\nwould otherwise not be allowed to do so. Drivers not using custom\nregulatory stuff (wiphy_apply_custom_regulatory()) were not affected\nby this as the orig_flags for the channels would have been cleared\nupon wiphy registration.\n\nI tested this with a world roaming ath5k card.\n\nCc: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nSigned-off-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nReviewed-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "cd3468bad96c00b5a512f551674f36776129520e",
      "tree": "b9b705149112b1403d5a23f09ae24a7eac515827",
      "parents": [
        "eb4ad826419ab5b1260bc1625249114767d36bea"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Jul 29 22:07:44 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Aug 03 16:31:21 2009 -0400"
      },
      "message": "cfg80211: add two missing NULL pointer checks\n\nThese pointers can be NULL, the is_mesh() case isn\u0027t\never hit in the current kernel, but cmp_ies() can be\nhit under certain conditions.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nCc: stable@kernel.org [2.6.29, 2.6.30]\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a9a11622c5c742c115fad371c0397ae86dd3bb67",
      "tree": "747d04a77d4411886befb5701322fa06da90a0fb",
      "parents": [
        "1f9298f96082692bdfe73af6fc2167f627f21647"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Jul 27 12:01:53 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jul 29 15:46:20 2009 -0400"
      },
      "message": "cfg80211: self-contained wext handling where possible\n\nFinally! This is what you\u0027ve all been waiting for!\n\nThis patch makes cfg80211 take care of wext emulation\n_completely_ by itself, drivers that don\u0027t need things\ncfg80211 doesn\u0027t do yet don\u0027t even need to be aware of\nwireless extensions.\nThis means we can also clean up mac80211\u0027s and iwm\u0027s\nKconfig and make it possible to build them w/o wext\nnow!\n\n\t\tRIP wext.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "1f9298f96082692bdfe73af6fc2167f627f21647",
      "tree": "ac99b1e27f93e0f4296112af23f78ab7e3a36144",
      "parents": [
        "562e482265ac4d660d9f0114419591d62f44361d"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Jul 27 12:01:52 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jul 29 15:46:18 2009 -0400"
      },
      "message": "cfg80211: combine IWESSID handlers\n\nSince we now have handlers IWESSID for all modes, we can\ncombine them into one.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "562e482265ac4d660d9f0114419591d62f44361d",
      "tree": "fd57e0b515aef085a4eb1fc0d351811c82210db8",
      "parents": [
        "0e82ffe3b90bcad72cfe80e4379946b8fb0691ca"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Jul 27 12:01:51 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jul 29 15:46:16 2009 -0400"
      },
      "message": "cfg80211: combine IWAP handlers\n\nSince we now have IWAP handlers for all modes, we can\ncombine them into one.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "0e82ffe3b90bcad72cfe80e4379946b8fb0691ca",
      "tree": "c6b73524d4db86ddcaa866d7ea81a9600b610413",
      "parents": [
        "a7bc376c858e0e724b8cb2db09b6874562d377ca"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Jul 27 12:01:50 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jul 29 15:46:14 2009 -0400"
      },
      "message": "cfg80211: combine iwfreq implementations\n\nUntil now we implemented iwfreq for managed mode, we\nneeded to keep the implementations separate, but now\nthat we have all versions implemented we can combine\nthem and export just one handler.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f9d6b402603a63b5e5b56bd7a79fa72a818be55b",
      "tree": "f1568e0d82005fb40186d5436627841be053ac87",
      "parents": [
        "fec247c0d5bfbaa0861774ce31d515bbd48f7fce"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Jul 27 10:22:28 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jul 29 15:46:11 2009 -0400"
      },
      "message": "cfg80211: fix disassoc while not associated\n\nWhen trying to disassociate while not associated,\nthe kernel would crash rather than refusing the\noperation, fix this;\n\nReported-by: Maxim Levitsky \u003cmaximlevitsky@gmail.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "c0b2bbd833a5a26b5a9425cb9a7eb66bbe736dd1",
      "tree": "61c4b2279ef24c0d6f389da851fff79c83100eff",
      "parents": [
        "cbdec9758736c30ecbb03651b0c2915c442a5895"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sat Jul 25 16:54:36 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jul 29 15:46:06 2009 -0400"
      },
      "message": "nl80211: add missing parameter clearing\n\nJouni and Maxim reported an oops when using wpa_supplicant -Dnl80211,\nwhich seems to be due to random data being contained in the crypto\nsettings for the assoc() command. This seems to be due to the missing\nmemset here, so add it -- it\u0027s certainly missing but I\u0027m not 100%\ncertain that it will fix the problem.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "bc43b28c10855aa56f6d0bd64ec6a6d8edbcf11b",
      "tree": "c1e496861b9aa209c8539e0c79a18dda134c7103",
      "parents": [
        "6686d17e161dcd0dc6801bcde9e397020bf9edf7"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sat Jul 25 10:54:13 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jul 29 15:45:56 2009 -0400"
      },
      "message": "cfg80211: fix circular lock dependency (1)\n\nLuis reported this lockdep complaint, that he had also\nreported earlier but when trying to analyse I had been\nlocking at the wrong code, and never saw the problem:\n\n(slightly abridged)\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n[ INFO: possible circular locking dependency detected ]\n2.6.31-rc4-wl #6\n-------------------------------------------------------\nwpa_supplicant/3799 is trying to acquire lock:\n (cfg80211_mutex){+.+.+.}, at: [\u003cffffffffa009246a\u003e] cfg80211_get_dev_from_ifindex+0x1a/0x90 [cfg80211]\n\nbut task is already holding lock:\n (rtnl_mutex){+.+.+.}, at: [\u003cffffffff81400ff2\u003e] rtnl_lock+0x12/0x20\n\nwhich lock already depends on the new lock.\n\nthe existing dependency chain (in reverse order) is:\n\n-\u003e #1 (rtnl_mutex){+.+.+.}:\n       [\u003cffffffff810857b6\u003e] __lock_acquire+0xd76/0x12b0\n       [\u003cffffffff81085dd3\u003e] lock_acquire+0xe3/0x120\n       [\u003cffffffff814ee7a4\u003e] mutex_lock_nested+0x44/0x350\n       [\u003cffffffff81400ff2\u003e] rtnl_lock+0x12/0x20\n       [\u003cffffffffa009f6a5\u003e] nl80211_send_reg_change_event+0x1f5/0x2a0 [cfg80211]\n       [\u003cffffffffa009529e\u003e] set_regdom+0x28e/0x4c0 [cfg80211]\n\n-\u003e #0 (cfg80211_mutex){+.+.+.}:\n       [\u003cffffffff8108587b\u003e] __lock_acquire+0xe3b/0x12b0\n       [\u003cffffffff81085dd3\u003e] lock_acquire+0xe3/0x120\n       [\u003cffffffff814ee7a4\u003e] mutex_lock_nested+0x44/0x350\n       [\u003cffffffffa009246a\u003e] cfg80211_get_dev_from_ifindex+0x1a/0x90 [cfg80211]\n       [\u003cffffffffa009813f\u003e] get_rdev_dev_by_info_ifindex+0x6f/0xa0 [cfg80211]\n       [\u003cffffffffa009b12b\u003e] nl80211_set_interface+0x3b/0x260 [cfg80211]\n\nWhen looking at the correct code, the problem is quite\nobvious. I\u0027m not entirely sure which code paths lead\nhere, so until I can analyse it better let\u0027s just use\nRCU to avoid the problem.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "09f97e0fc4ae81f151bd76b97e28d2af429c1427",
      "tree": "71ed205db6791f574591eca0e672611f31e00391",
      "parents": [
        "977923b00c79185c11b4b47664f5ffa4c3820438"
      ],
      "author": {
        "name": "Helmut Schaa",
        "email": "helmut.schaa@googlemail.com",
        "time": "Thu Jul 23 12:14:29 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jul 27 15:24:17 2009 -0400"
      },
      "message": "cfg80211: increase scan result expire time\n\nUsing background scanning in mac80211 the time a scan needs to\nfinish can exceed 10 seconds. Hence, increase the scan results\nexpire time to 15 seconds which should be sufficient.\n\nSigned-off-by: Helmut Schaa \u003chelmut.schaa@googlemail.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "463d018323851a608eef52a9427b0585005c647f",
      "tree": "b5ad2ee6115e6b780c264022cbc20b36d22fe80c",
      "parents": [
        "5061b0c2b9066de426fbc63f1278d2210e789412"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jul 14 00:33:35 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jul 27 15:24:07 2009 -0400"
      },
      "message": "cfg80211: make aware of net namespaces\n\nIn order to make cfg80211/nl80211 aware of network namespaces,\nwe have to do the following things:\n\n * del_virtual_intf method takes an interface index rather\n   than a netdev pointer - simply change this\n\n * nl80211 uses init_net a lot, it changes to use the sender\u0027s\n   network namespace\n\n * scan requests use the interface index, hold a netdev pointer\n   and reference instead\n\n * we want a wiphy and its associated virtual interfaces to be\n   in one netns together, so\n    - we need to be able to change ns for a given interface, so\n      export dev_change_net_namespace()\n    - for each virtual interface set the NETIF_F_NETNS_LOCAL\n      flag, and clear that flag only when the wiphy changes ns,\n      to disallow breaking this invariant\n\n * when a network namespace goes away, we need to reparent the\n   wiphy to init_net\n\n * cfg80211 users that support creating virtual interfaces must\n   create them in the wiphy\u0027s namespace, currently this affects\n   only mac80211\n\nThe end result is that you can now switch an entire wiphy into\na different network namespace with the new command\n\tiw phy#\u003cidx\u003e set netns \u003cpid\u003e\nand all virtual interfaces will follow (or the operation fails).\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "1e056665e878ce4f91dbfd594f4ebba49ea689c0",
      "tree": "596939e206e806cec40bd04f3d3d1c6dcc1822e1",
      "parents": [
        "971ad01169398170976951d3a9479a29d231c734"
      ],
      "author": {
        "name": "Zhu Yi",
        "email": "yi.zhu@intel.com",
        "time": "Mon Jul 20 16:12:57 2009 +0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:29 2009 -0400"
      },
      "message": "cfg80211: avoid setting default_key if add_key fails\n\nIn cfg80211_upload_connect_keys(), we call add_key, set_default_key\nand set_default_mgmt_key (if applicable) one by one. If one of these\noperations fails, we should stop calling the following functions.\nBecause if the key is not added successfully, we should not set it as\ndefault key anyway.\n\nSigned-off-by: Zhu Yi \u003cyi.zhu@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "3409ff7711bcf70390d5ba8ebde5d913b5266a45",
      "tree": "ce0c6d5c2eb2c9aad2e40ef090dfdb1e0a302615",
      "parents": [
        "1f00fca5c83c1bc5b4ca7e07f2a030bc39c130f2"
      ],
      "author": {
        "name": "Zhu Yi",
        "email": "yi.zhu@intel.com",
        "time": "Mon Jul 20 11:47:44 2009 +0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:28 2009 -0400"
      },
      "message": "cfg80211: fix typo of IWEVASSOCRESPIE\n\nIt should be IWEVASSOCREQIE instead.\n\nSigned-off-by: Zhu Yi \u003cyi.zhu@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "1f00fca5c83c1bc5b4ca7e07f2a030bc39c130f2",
      "tree": "4614b44a228c5a32a1ae4f455e94d5101e0ef9fc",
      "parents": [
        "e6a3f551bc236010c4d4d99e626e150e98a4c3e6"
      ],
      "author": {
        "name": "Zhu Yi",
        "email": "yi.zhu@intel.com",
        "time": "Mon Jul 20 11:47:43 2009 +0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:27 2009 -0400"
      },
      "message": "cfg80211: set_default_key only for WEP\n\nWe invoke the cfg80211 set_default_key callback only for WEP key\nconfiguring.\n\nSigned-off-by: Zhu Yi \u003cyi.zhu@intel.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "25e83c490be421019997146bdec8645f5bcabcd1",
      "tree": "61215246924f8aebcc0fd0a6fd7fc651dcc487bb",
      "parents": [
        "d4b1a6876f99ae1886cd254f649506af6692ac9f"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Jul 16 11:39:04 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:21 2009 -0400"
      },
      "message": "cfg80211: don\u0027t optimise wext calls too much\n\nIn the wext code I tried to not reconnect all the time\nwhen the user wasn\u0027t really sure what they were doing,\nlike setting the BSSID back to the same value it was.\nHowever, this optimisation should only be done while\nassociated so that setting the BSSID back to the same\nvalue that it was actually triggers a new association\nif not currently associated. To achieve, that, put the\nrelevant code into the !IDLE case instead.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nTested-by: Kalle Valo \u003ckalle.valo@iki.fi\u003e\nTested-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "d4b1a6876f99ae1886cd254f649506af6692ac9f",
      "tree": "4fa5d9e4404defa325b6813a78668fc5437c3d4a",
      "parents": [
        "6e5db0a8454b44bf88fa74cf437a507ec08f436d"
      ],
      "author": {
        "name": "Zhu Yi",
        "email": "yi.zhu@intel.com",
        "time": "Thu Jul 16 17:34:14 2009 +0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:21 2009 -0400"
      },
      "message": "cfg80211: remove WARN_ON in __cfg80211_sme_scan_done\n\ncfg80211_sme_scan_done() can be called (by fullmac cards) with\nwdev-\u003econn \u003d\u003d NULL when CFG80211_SME_CONNECTING. We quit silently\ninstead of WARN_ON in this case.\n\nSigned-off-by: Zhu Yi \u003cyi.zhu@intel.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ae9e4b0d1a43fd66da43918491834f9e5c1b6cca",
      "tree": "805654d3402c7e306f8cc9b306eb316562cebc2b",
      "parents": [
        "64839170be296e6348fbaf83fd103711978669b9"
      ],
      "author": {
        "name": "Luis R. Rodriguez",
        "email": "lrodriguez@atheros.com",
        "time": "Tue Jul 14 20:23:15 2009 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:19 2009 -0400"
      },
      "message": "cfg80211: treat ieee80211_regdom hints as user hints\n\nWe were treating ieee80211_regdom module parameter hints\nas core hints, this means we were not letting the user help\ncompliance further when using the module parameter. It also\nmeant that users with a device with a custom regulatory\ndomain set (wiphy-\u003ecustom_regulatory) using this module\nparameter were being stuck to the original default core\nstatic regualtory domain. We fix this by using the static\ncfg80211_regdomain alpha2 as the core hint and treating the\nmodule parameter separately.\n\nAll iwlwifi and ath5k/ath9k/ar9170 devices which world roam\nset the wiphy-\u003ecustom_regulatory. This change allows users\nusing this module parameter to have it trated as a a proper\nuser hint and not have it ignored.\n\nSigned-off-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "6682588a08b8be34649348051bc0204f7ab401a2",
      "tree": "2f4f31afc7ba25e8fe82b6783ec9e8ce59acb257",
      "parents": [
        "0e2b6286805c419d28a4c1e19e3a121af7449b20"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Jul 13 13:24:44 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:13 2009 -0400"
      },
      "message": "cfg80211: fix unregistration\n\nThe work that we cancel there requires the cfg80211_mutex,\nso we can\u0027t cancel it under the mutex, which is fine, we\ncan just move it to after the locked section.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "323d566eae1ace41bc674863b58fcc474501a2db",
      "tree": "ecdaa6b134ed95896033b818120e5dcf628bd3ca",
      "parents": [
        "4b9631a4734e25e37c83e72c3e0ffcbb08de5791"
      ],
      "author": {
        "name": "Gábor Stefanik",
        "email": "netrolller.3d@gmail.com",
        "time": "Sun Jul 12 02:03:48 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:12 2009 -0400"
      },
      "message": "cfg80211: fix disabling WPA via wext (SIOCSIWAUTH)\n\ncfg80211_set_wpa_version completely missed the use case when disabling\nWPA, considering IW_AUTH_WPA_VERSION_DISABLED an invalid argument. This\ncaused weird error messages in wpa_supplicant.\n\nSigned-off-by: Gábor Stefanik \u003cnetrolller.3d@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "596a07c18b35c9df2fb212856241ae0dfe3162b9",
      "tree": "0629a2e3cd6aec37a7ac7eab63bcf7ef5121da7e",
      "parents": [
        "930c06f27120fa8cf0bfb6fa000a701cfaf01ed6"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sat Jul 11 00:17:32 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:12 2009 -0400"
      },
      "message": "cfg80211: fix more bugs in mlme handling\n\nThe \"what-was-I-thinking-if-anything\" patch. Clearly,\nif cfg80211_send_disassoc() does wdev_lock() and then\ncalls __cfg80211_send_disassoc(), the latter shouldn\u0027t\nlock again. And the sme_state test is ... no further\ncomments.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "48ab905d1a81b7df33a33def04a890e4e0c51460",
      "tree": "928fb9eeb2edd8ff89138016f7ca4ffddb833821",
      "parents": [
        "4697fe4f78df14d37cffa7e8d27cbb02a351c139"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Jul 10 18:42:31 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:11 2009 -0400"
      },
      "message": "nl80211: report BSS status\n\nWhen connected to a BSS, or joined to an IBSS, we\u0027ll want\nto know in userspace without using wireless extensions, so\nreport the BSS status in the BSS list. Userspace can query\nthe BSS list, display all the information and retrieve the\nstation information as well.\n\nFor example (from hwsim):\n\n$ iw dev wlan1 scan dump\nBSS 02:00:00:00:00:00 (on wlan1) -- associated\n\tfreq: 2462\n\tbeacon interval: 100\n\tcapability: ESS ShortSlotTime (0x0401)\n\tsignal: -50.00 dBm\n\tSSID: j\n\tSupported rates: 1.0* 2.0* 5.5* 11.0* 6.0 9.0 12.0 18.0\n\tDS Paramater set: channel 11\n\tERP: \u003cno flags\u003e\n\tExtended supported rates: 24.0 36.0 48.0 54.0\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4697fe4f78df14d37cffa7e8d27cbb02a351c139",
      "tree": "4b43087351f81727011bd04a31f946f5b46b4029",
      "parents": [
        "908d4369a394e816767d566d9c3d15a5af8c1c55"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Jul 10 18:35:49 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:11 2009 -0400"
      },
      "message": "cfg80211: fix wext setting SSID\n\nPavel reported that you can\u0027t set the SSID from \"foo\" to\n\"bar\". I tried reproducing, but used different values,\nwith different lengths, and thus never saw the obvious\nproblem.\n\nReported-by: Pavel Roskin \u003cproski@gnu.org\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "908d4369a394e816767d566d9c3d15a5af8c1c55",
      "tree": "a1aa369a55a6f998109448cdb6dbbcf77ff9b5f0",
      "parents": [
        "4b14c96dfbf068acb85c3fa2446b3949c0230deb"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Jul 10 17:53:34 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:11 2009 -0400"
      },
      "message": "cfg80211: don\u0027t look at wdev-\u003essid for giwessid\n\nThis variable is only used internally, _while_ connected.\nIf we use it, the sequence\n\n# iwconfig wlan1 essid foo\n\u003cconnects\u003e\n# iwconfig wlan1 essid \"\"\n\u003cdisconnects\u003e\n# iwconfig\n\nwill still display \"foo\" as the SSID afterwards, which\nis obviously quite bogus. Fix this by only displaying\nthe wext SSID, if present.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "c56c5714f12808e3f702817e72a78dd12f1704eb",
      "tree": "0dc886563fa77128535d4c8db90779ae01f2a15a",
      "parents": [
        "ca3dbc20d47ae43c201c215259d078e227bfcf01"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Jul 10 16:54:07 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:11 2009 -0400"
      },
      "message": "cfg80211: fix wext stats\n\nInstead of using the wext BSSID which may be NULL if\nyou haven\u0027t explicitly set one, we should instead use\nthe current_bss pointer -- if that\u0027s NULL we aren\u0027t\nconnected anyway. Fixes missing signal quality output\nreported to me internally at Intel.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ec3f149017ef3fd21343b1dcec3589eec6ba5dd5",
      "tree": "9add60777190717b721cbca877e37f20bb9deb12",
      "parents": [
        "b291ba11181d46dfbd2d7a5c00a5f3335228191e"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Jul 10 02:45:38 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:10 2009 -0400"
      },
      "message": "cfg80211: fix a locking bug\n\nThe cfg80211_sme_disassoc() function is already holding\na lock here that cfg80211_mlme_deauth() would take, so\nit needs to use __cfg80211_mlme_deauth() instead.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "80e5b06a1b0d9a6aa88dc5c9e93ba49510c52b45",
      "tree": "08adf2317a7c57d7ee12b60375a40a4865d39a5f",
      "parents": [
        "f874011bb01e7fb19904db7f739bb343a0a53fd5"
      ],
      "author": {
        "name": "Zhu Yi",
        "email": "yi.zhu@intel.com",
        "time": "Thu Jul 09 16:59:49 2009 +0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:09 2009 -0400"
      },
      "message": "cfg80211: fix NULL dereference in IBSS SIOCGIWAP\n\nThis patch avoids memcpy from wdev-\u003ewext.ibss.bssid if it is NULL.\nThis could happen if we SIOCGIWAP before SIOCSIWAP.\n\nSigned-off-by: Zhu Yi \u003cyi.zhu@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "fffd0934b9390f34bec45762192b7edd3b12b4b5",
      "tree": "d9779803763261f5795fe39a402d79c4220a3a22",
      "parents": [
        "b9454e83cac42fcdc90bfbfba479132bd6629455"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Jul 08 14:22:54 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:09 2009 -0400"
      },
      "message": "cfg80211: rework key operation\n\nThis reworks the key operation in cfg80211, and now only\nallows, from userspace, configuring keys (via nl80211)\nafter the connection has been established (in managed\nmode), the IBSS been joined (in IBSS mode), at any time\n(in AP[_VLAN] modes) or never for all the other modes.\n\nIn order to do shared key authentication correctly, it\nis now possible to give a WEP key to the AUTH command.\nTo configure static WEP keys, these are given to the\nCONNECT or IBSS_JOIN command directly, for a userspace\nSME it is assumed it will configure it properly after\nthe connection has been established.\n\nSince mac80211 used to check the default key in IBSS\nmode to see whether or not the network is protected,\nit needs an update in that area, as well as an update\nto make use of the WEP key passed to auth() for shared\nkey authentication.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "b9454e83cac42fcdc90bfbfba479132bd6629455",
      "tree": "4f63180e1406f8b799ee6b2fca2efe4a656c2905",
      "parents": [
        "10c836d7896e9d7b683a76f3cac3c289d8da72ef"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Jul 08 13:29:08 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:09 2009 -0400"
      },
      "message": "nl80211: introduce new key attributes\n\nWe will soon want to nest key attributes into\nsome new attribute for configuring static WEP\nkeys at connect() and ibss_join() time, so we\nneed nested attributes for that. However, key\nattributes right now are \u0027global\u0027. This patch\nthus introduces new nested attributes for the\nkey settings and functions for parsing them.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4bde0f7d1dca0a7d886997eb8dee3fb47a6484e4",
      "tree": "81d9b826c357200fe054ff31e6199235524789d6",
      "parents": [
        "a71d62dbf3f0523b7a456333196cb26cf783fe92"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jul 07 23:46:51 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:06 2009 -0400"
      },
      "message": "cfg80211: fix two buglets\n\nThis fixes two small bugs:\n 1) the connect variable is already initialised, and the\n    assignment to auth_type overwrites the previous setting\n    with a wrong value\n 2) when all authentication attempts fail, we need to report\n    that we couldn\u0027t connect\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a71d62dbf3f0523b7a456333196cb26cf783fe92",
      "tree": "5464eb108c6e9a2849cb81c81473713ce8c84d12",
      "parents": [
        "e0f114e82e3781087a0ad0e92c94ff0d55012c1a"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jul 07 23:41:27 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:06 2009 -0400"
      },
      "message": "cfg80211: fix race in giwrate\n\ncfg80211_wext_giwrate doesn\u0027t lock the wdev, so it\ncannot access current_bss race-free. Also, there\u0027s\nlittle point in trying to ask the driver for an AP\nthat it never told us about, so avoid that case.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "74d154189d597b91da4322996dbf4f5c3d1544ab",
      "tree": "6f09861b5e2f875d2d8ea2127b16add9103221c6",
      "parents": [
        "5a6338db37885af06760d40cad589316e48431e9",
        "ffafa60d496f80c250f2ae0340ae94434c0b0b4d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 23 19:03:51 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 23 19:03:51 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/wireless/iwmc3200wifi/netdev.c\n\tnet/wireless/scan.c\n"
    },
    {
      "commit": "9e81eccf199d910e5ea8db377a43478e4eccd033",
      "tree": "c425a97da799df89255b13314e4dd96ec40419db",
      "parents": [
        "e56f0975360369347725c49654ecfe3792710429"
      ],
      "author": {
        "name": "Christian Lamparter",
        "email": "chunkeey@web.de",
        "time": "Sun Jul 19 05:05:37 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jul 21 12:07:44 2009 -0400"
      },
      "message": "cfg80211: double free in __cfg80211_scan_done\n\nThis patch fixes a double free corruption in __cfg80211_scan_done:\n\n \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n BUG kmalloc-512: Object already free\n ------------------------------------------------\n\n INFO: Allocated in load_elf_binary+0x18b/0x19af age\u003d6\n INFO: Freed in load_elf_binary+0x104e/0x19af age\u003d5\n INFO: Slab 0xffffea0001bae4c0 objects\u003d14 used\u003d7\n INFO: Object 0xffff88007e8a9918 @offset\u003d6424 fp\u003d0xffff88007e8a9488\n\n Bytes b4 0xffff88007e8a9908:  00 00 00 00 00 00 00 00 5a 5a\n [...]\n Pid: 28705, comm: rmmod Tainted: P         C 2.6.31-rc2-wl #1\n Call Trace:\n  [\u003cffffffff810da9f4\u003e] print_trailer+0x14e/0x16e\n  [\u003cffffffff810daa56\u003e] object_err+0x42/0x61\n  [\u003cffffffff810dbcd9\u003e] __slab_free+0x2af/0x396\n  [\u003cffffffffa0ec9694\u003e] ? wiphy_unregister+0x92/0x142 [cfg80211]\n  [\u003cffffffff810dd5e3\u003e] kfree+0x13c/0x17a\n  [\u003cffffffffa0ec9694\u003e] ? wiphy_unregister+0x92/0x142 [cfg80211]\n  [\u003cffffffffa0ec9694\u003e] wiphy_unregister+0x92/0x142 [cfg80211]\n  [\u003cffffffffa0eed163\u003e] ieee80211_unregister_hw+0xc8/0xff [mac80211]\n  [\u003cffffffffa0f3fbc8\u003e] p54_unregister_common+0x31/0x66 [p54common]\n  [...]\n FIX kmalloc-512: Object at 0xffff88007e8a9918 not freed\n\nThe code path which leads to the *funny* double free:\n\n       request \u003d rdev-\u003escan_req;\n       dev \u003d dev_get_by_index(\u0026init_net, request-\u003eifidx);\n\t/*\n\t * the driver was unloaded recently and\n\t * therefore dev_get_by_index will return NULL!\n\t */\n        if (!dev)\n                goto out;\n\t[...]\n\trdev-\u003escan_req \u003d NULL; /* not executed... */\n\t[...]\n out:\n        kfree(request);\n\nSigned-off-by: Christian Lamparter \u003cchunkeey@web.de\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "6c95e2a2f0f0bf4c8880d5b74b2f7f359d352d03",
      "tree": "9758902b92cbde1890339f4747678b0511ee7ac4",
      "parents": [
        "3da7429ce92abd79b14e2275a28be144ce2c3013"
      ],
      "author": {
        "name": "Niko Jokinen",
        "email": "ext-niko.k.jokinen@nokia.com",
        "time": "Wed Jul 15 11:00:53 2009 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jul 21 12:07:42 2009 -0400"
      },
      "message": "nl80211: Memory leak fixed\n\nPotential memory leak via msg pointer in nl80211_get_key() function.\n\nSigned-off-by: Niko Jokinen \u003cext-niko.k.jokinen@nokia.com\u003e\nSigned-off-by: Luciano Coelho \u003cluciano.coelho@nokia.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "1dacc76d0014a034b8aca14237c127d7c19d7726",
      "tree": "d3ba044578fab9076ef4a73694fa7d23d4a50969",
      "parents": [
        "4f45b2cd4e78b5e49d7d41548345b879d3fdfeae"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Jul 01 11:26:02 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 15 08:53:39 2009 -0700"
      },
      "message": "net/compat/wext: send different messages to compat tasks\n\nWireless extensions have the unfortunate problem that events\nare multicast netlink messages, and are not independent of\npointer size. Thus, currently 32-bit tasks on 64-bit platforms\ncannot properly receive events and fail with all kinds of\nstrange problems, for instance wpa_supplicant never notices\ndisassociations, due to the way the 64-bit event looks (to a\n32-bit process), the fact that the address is all zeroes is\nlost, it thinks instead it is 00:00:00:00:01:00.\n\nThe same problem existed with the ioctls, until David Miller\nfixed those some time ago in an heroic effort.\n\nA different problem caused by this is that we cannot send the\nASSOCREQIE/ASSOCRESPIE events because sending them causes a\n32-bit wpa_supplicant on a 64-bit system to overwrite its\ninternal information, which is worse than it not getting the\ninformation at all -- so we currently resort to sending a\ncustom string event that it then parses. This, however, has a\nsevere size limitation we are frequently hitting with modern\naccess points; this limitation would can be lifted after this\npatch by sending the correct binary, not custom, event.\n\nA similar problem apparently happens for some other netlink\nusers on x86_64 with 32-bit tasks due to the alignment for\n64-bit quantities.\n\nIn order to fix these problems, I have implemented a way to\nsend compat messages to tasks. When sending an event, we send\nthe non-compat event data together with a compat event data in\nskb_shinfo(main_skb)-\u003efrag_list. Then, when the event is read\nfrom the socket, the netlink code makes sure to pass out only\nthe skb that is compatible with the task. This approach was\nsuggested by David Miller, my original approach required\nalways sending two skbs but that had various small problems.\n\nTo determine whether compat is needed or not, I have used the\nMSG_CMSG_COMPAT flag, and adjusted the call path for recv and\nrecvfrom to include it, even if those calls do not have a cmsg\nparameter.\n\nI have not solved one small part of the problem, and I don\u0027t\nthink it is necessary to: if a 32-bit application uses read()\nrather than any form of recvmsg() it will still get the wrong\n(64-bit) event. However, neither do applications actually do\nthis, nor would it be a regression.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4f45b2cd4e78b5e49d7d41548345b879d3fdfeae",
      "tree": "a93bd6d6b40e0271bb0e2e4ab775e2e68bc041e8",
      "parents": [
        "b333b3d22822cf9b295990866798e9239c9dee72"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Jun 24 01:34:49 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 15 08:53:37 2009 -0700"
      },
      "message": "wext: optimise, comment and fix event sending\n\nThe current function for sending events first allocates the\nevent stream buffer, and then an skb to copy the event stream\ninto. This can be done in one go. Also, the current function\nleaks kernel data to userspace in a 4 uninitialised bytes,\ninitialise those explicitly. Finally also add a few useful\ncomments, as opposed to the current comments.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b333b3d22822cf9b295990866798e9239c9dee72",
      "tree": "307298699e475eb93a3326384fff6f28b1e28b0f",
      "parents": [
        "97fd5bc7f2e442482a7a6cc4bc2a286cbb5f4754"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Jun 24 01:34:48 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 15 08:53:32 2009 -0700"
      },
      "message": "wireless extensions: make netns aware\n\nThis makes wireless extensions netns aware. The\ntasklet sending the events is converted to a work\nstruct so that we can rtnl_lock() in it.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "134e63756d5f3d0f7604dfcca847b09d1b14fd66",
      "tree": "d2b5eab085d90cde0a4c0136a118800ca72b76ad",
      "parents": [
        "11a28d373ed2539a110d56419457e2e7db221ac7"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Jul 10 09:51:34 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 12 14:03:27 2009 -0700"
      },
      "message": "genetlink: make netns aware\n\nThis makes generic netlink network namespace aware. No\ngeneric netlink families except for the controller family\nare made namespace aware, they need to be checked one by\none and then set the family-\u003enetnsok member to true.\n\nA new function genlmsg_multicast_netns() is introduced to\nallow sending a multicast message in a given namespace,\nfor example when it applies to an object that lives in\nthat namespace, a new function genlmsg_multicast_allns()\nto send a message to all network namespaces (for objects\nthat do not have an associated netns).\n\nThe function genlmsg_multicast() is changed to multicast\nthe message in just init_net, which is currently correct\nfor all generic netlink families since they only work in\ninit_net right now. Some will later want to work in all\nnet namespaces because they do not care about the netns\nat all -- those will have to be converted to use one of\nthe new functions genlmsg_multicast_allns() or\ngenlmsg_multicast_netns() whenever they are made netns\naware in some way.\n\nAfter this patch families can easily decide whether or\nnot they should be available in all net namespaces. Many\ngenl families us it for objects not related to networking\nand should therefore be available in all namespaces, but\nthat will have to be done on a per family basis.\n\nNote that this doesn\u0027t touch on the checkpoint/restart\nproblem where network namespaces could be used, genl\nfamilies and multicast groups are numbered globally and\nI see no easy way of changing that, especially since it\nmust be possible to multicast to all network namespaces\nfor those families that do not care about netns.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0b20633d966eb08506f8796544aef7a9ab5f3544",
      "tree": "bf8a3ee2ae12c71c8e43601d35b04bbea3aaad92",
      "parents": [
        "79c97e97aed7f760d2826c7daf2d42d8eefe9838"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jul 07 03:56:13 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 10 15:02:33 2009 -0400"
      },
      "message": "cfg80211: disallow configuring unsupported interfaces\n\nIn order to force drivers to advertise their interface\ntypes, don\u0027t just disallow creating new interfaces with\nunadvertised types but also disallow setting them UP.\nAdditionally, add some validation on the operations the\ndrivers support.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "79c97e97aed7f760d2826c7daf2d42d8eefe9838",
      "tree": "bf6d18d0de2c0168a292f05eb6f7296c15278b8b",
      "parents": [
        "667503ddcb96f3b10211f997fe55907fa7509841"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jul 07 03:56:12 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 10 15:02:33 2009 -0400"
      },
      "message": "cfg80211: clean up naming once and for all\n\nWe\u0027ve named the registered devices \u0027drv\u0027 sometimes,\nthinking of \"driver\", which is not what it is, it\u0027s\nthe internal representation of a wiphy, i.e. a\ndevice. Let\u0027s clean up the naming once and and use\n\u0027rdev\u0027 aka \u0027registered device\u0027 everywhere.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    }
  ],
  "next": "667503ddcb96f3b10211f997fe55907fa7509841"
}
