)]}'
{
  "log": [
    {
      "commit": "93c08c32914264f539baf7f04cce310a0dd30a7a",
      "tree": "c59d790b05399ff4ae247f80d00cc339550bf232",
      "parents": [
        "93c0584ca92a76bd458c7fd505b1747901315156"
      ],
      "author": {
        "name": "Juuso Oikarinen",
        "email": "juuso.oikarinen@nokia.com",
        "time": "Tue Aug 03 08:22:25 2010 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Aug 04 15:28:37 2010 -0400"
      },
      "message": "mac80211: Fix compilation warning when CONFIG_INET is not set\n\nThe warning is:\n  net/mac80211/main.c:688: warning: label ‘fail_ifa’ defined but not used\n\nSigned-off-by: Juuso Oikarinen \u003cjuuso.oikarinen@nokia.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "1601b1e56e1093d6deb8f475fafc30cc30143357",
      "tree": "523921224fe15ad2abc647edb830c438c688644e",
      "parents": [
        "02f5ba5bac8b374bc2126920c7204c63019f28ce"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Jul 30 13:30:47 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Aug 04 15:27:36 2010 -0400"
      },
      "message": "mac80211: fix scan locking wrt. hw scan\n\nReleasing the scan mutex while starting scans\ncan lead to unexpected things happening, so\nwe shouldn\u0027t do that. Fix that and hold the\nmutex across the scan triggering.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ae3568adf42d5d3bb3cfa505b94351c5d1ce4924",
      "tree": "112865a6e6b1e4ddf70362f3efb295c495ec85b9",
      "parents": [
        "7f3e01fee41a322747db2d7574516d9fbd3785c0",
        "b7753c8cd51dce67a0b152efb456a21ff1cc241b"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jul 29 14:47:07 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jul 29 14:47:07 2010 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem\n"
    },
    {
      "commit": "e5b900d228b76d445a4240d9aeb3cd8f79205a91",
      "tree": "dffa32e827e2d6e5388430ae5ec732f0ca023b11",
      "parents": [
        "d28232b461b8d54b09e59325dbac8b0913ce2049"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jul 29 16:08:55 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jul 29 12:55:00 2010 -0400"
      },
      "message": "mac80211: allow drivers to request DTIM period\n\nSome features require knowing the DTIM period\nbefore associating. This implements the ability\nto wait for a beacon in mac80211 before assoc\nto provide this value. It is optional since\nmost likely not all drivers will need this.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4552124543141debf40a94b67155e57aa6bb34d6",
      "tree": "c2080f8be1a08c92a40bb05464800c05d4806152",
      "parents": [
        "a0daa0e7592ada797d6835f11529097aabc27ad2"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Wed Jul 28 02:40:49 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jul 28 16:24:02 2010 -0400"
      },
      "message": "mac80211: inform drivers about the off-channel status on channel changes\n\nFor some drivers it can be useful to know whether the channel they\u0027re\nsupposed to switch to is going to be used for short off-channel work or\nscanning, or whether the hardware is expected to stay on it for a while\nlonger. This is important for various kinds of calibration work, which\ntakes longer to complete and should keep some persistent state, even if\nthe channel temporarily changes.\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a0daa0e7592ada797d6835f11529097aabc27ad2",
      "tree": "4ac6eee98f6ae61833237699070f44e54fa5f48a",
      "parents": [
        "308883380c615b8b3d2c0eadb8680a921177c0b3"
      ],
      "author": {
        "name": "Luis R. Rodriguez",
        "email": "lrodriguez@atheros.com",
        "time": "Tue Jul 27 16:33:08 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jul 28 16:24:02 2010 -0400"
      },
      "message": "Revert \"mac80211: fix sw scan bracketing\"\n\nThis reverts this commit. While in theory the change is\ncorrect the patch does not address current assumptions made\nby some drivers, one which is definitley affected is ath9k.\n\nPrior to this change the scan complete callback would be\ncalled after we returned to the home channel and configured\nthe hardware RX filters. After this change we call the scan\ncomplete callback prior to both the hw config and the config\nfilter. At least for ath9k this breaks quite a few assumptions\non the callback, leading to disconnects to the AP after every scan\nmaking the driver pretty useless on STA mode. The goal behind\nthis commit was to address the now understood spurious warnings\nfrom ath9k and mac80211_hwsim on scanning on two wiphys at the\nsame time but we have now supressed these and will address this\nissue in the next kernel release.\n\nWhen fixing this for good next we must first review the other\ndriver\u0027s dependence on this logic and perhaps consider removal\nof the scan complete callback all together.\n\nCc: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e4ab7eb0aecbe56ac280486c61cd3f0f6c42870b",
      "tree": "10a03d37bc640f1c572541806e2a6541b5ea019b",
      "parents": [
        "099284bdecf6e0af78662371ed3f45b71d796aad"
      ],
      "author": {
        "name": "Yuri Ershov",
        "email": "ext-yuri.ershov@nokia.com",
        "time": "Tue Jun 29 15:08:06 2010 +0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jul 28 16:24:01 2010 -0400"
      },
      "message": "mac80211: Put some code under MESH macro\n\nIn the function ieee80211_subif_start_xmit the logic related with\nmeshdrlen is under CONFIG_MAC80211_MESH macro, but in one place it isn\u0027t.\nThis is some update for this\n\nSigned-off-by: Yuri Ershov \u003cext-yuri.ershov@nokia.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "bb7e95c8fd859922c6cf3ebbb3a8546007df1748",
      "tree": "58b54c6306ba168b76f25cc6dc9a2d1d2eb830a7",
      "parents": [
        "b8bc0421ab7f83712a0a8ef7eb05fa73ec53c027",
        "5447080cfa3c77154498dfbf225367ac85b4c2b5"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 27 21:01:35 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 27 21:01:35 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/bnx2x_main.c\n\nMerge bnx2x bug fixes in by hand... :-/\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "32162a4dab0e6a4ca7f886a01173b5f9b80843be",
      "tree": "a8337e9b9788b787c13241ec9a9642527d5aad6a",
      "parents": [
        "1b2fb7dc71c1f8f97663c2da84fa1c8183588474"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "j@w1.fi",
        "time": "Mon Jul 26 15:52:03 2010 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jul 27 14:59:58 2010 -0400"
      },
      "message": "mac80211: Fix key freeing to handle unlinked keys\n\nKey locking simplification removed key-\u003esdata !\u003d NULL verification from\nieee80211_key_free(). While that is fine for most use cases, there is one\npath where this function can be called with an unlinked key (i.e.,\nkey-\u003esdata \u003d\u003d NULL \u0026\u0026 key-\u003elocal \u003d\u003d NULL). This results in a NULL pointer\ndereference with the current implementation. This is known to happen at\nleast with FT protocol when wpa_supplicant tries to configure the key\nbefore association.\n\nAvoid the issue by passing in the local pointer to\nieee80211_key_free(). In addition, do not clear the key from hw_accel\nor debugfs if it has not yet been added. At least the hw_accel one could\ntrigger another NULL pointer dereference.\n\nSigned-off-by: Jouni Malinen \u003cj@w1.fi\u003e\nReviewed-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "800f65bba8d2030b3fef62850e203f9f176625a8",
      "tree": "6507c4fe7a0826c253b4afb29375ab306a0fd9c8",
      "parents": [
        "06b3cda0c12986f5bba578b918b188d731c4e191",
        "b3190df628617c7a4f188a9465aeabe1f5761933"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jul 27 11:59:19 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jul 27 11:59:19 2010 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/holtmann/bluetooth-next-2.6\n\nConflicts:\n\tdrivers/net/wireless/iwlwifi/iwl-commands.h\n"
    },
    {
      "commit": "a9ad99a612763803b995ce551ca43b20beb1f888",
      "tree": "daff243cc83116bdcffc5f675d0f33c0f777cc69",
      "parents": [
        "c736eefadb71a01a5e61e0de700f28f6952b4444",
        "f792af250de54309e4bc9f238db3623ead0a4507"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 26 13:26:09 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 26 13:26:09 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n"
    },
    {
      "commit": "d97349797fa76753c747ed8b888414fe78795439",
      "tree": "3130e31755c0a76e991f7ca8700ebe2a16e00aa2",
      "parents": [
        "487f0e010cf5b6ba504150dfb20c21fd93e3b9e6"
      ],
      "author": {
        "name": "Sujith",
        "email": "Sujith.Manoharan@atheros.com",
        "time": "Fri Jul 23 10:47:11 2010 +0530"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jul 26 15:32:42 2010 -0400"
      },
      "message": "mac80211: Don\u0027t set per-BSS QoS for monitor interfaces\n\nIn AP mode, there is no need to notify the driver about QoS\nchanges for the monitor interface that is created. The warning\nin ieee80211_bss_info_change_notify() would be hit otherwise.\n\nSigned-off-by: Sujith \u003cSujith.Manoharan@atheros.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ec25acc46a62db98baaa9b221f33b66af09a1964",
      "tree": "78e577f444850b70415120bf9a68a642ee8960fa",
      "parents": [
        "bd75eb854300c7e09eaf067572498abdeb9d3424"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jul 22 17:11:28 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jul 26 15:32:42 2010 -0400"
      },
      "message": "mac80211: fix sta assignment\n\nI just had the following:\nWARNING: at drivers/net/wireless/iwlwifi/iwl-agn-tx.c:574 iwlagn_tx_skb+0x1576/0x15f0 [iwlagn]()\nCall Trace:\n \u003cIRQ\u003e  [\u003cffffffff8105c5df\u003e] warn_slowpath_common+0x7f/0xc0\n [\u003cffffffff8105c63a\u003e] warn_slowpath_null+0x1a/0x20\n [\u003cffffffffa0290b46\u003e] iwlagn_tx_skb+0x1576/0x15f0 [iwlagn]\n [\u003cffffffffa027076c\u003e] iwl_mac_tx+0x5c/0x260 [iwlagn]\n [\u003cffffffffa01bdf5b\u003e] __ieee80211_tx+0x10b/0x1a0 [mac80211]\n [\u003cffffffffa01bfb86\u003e] ieee80211_tx_pending+0x186/0x2d0 [mac80211]\n [\u003cffffffff81062ea5\u003e] tasklet_action+0x125/0x130\n [\u003cffffffff810634a6\u003e] __do_softirq+0x106/0x270\n [\u003cffffffff8100c09c\u003e] call_softirq+0x1c/0x30\niwlagn 0000:02:00.0: Attempting to modify non-existing station 107\n\nNote that 107 \u003d\u003d 0x6b which is slab poison.\n\nThe reason is that mac80211 passed a freed station\npointer to mac80211, because as it happened iwlwifi\nreset itself while mac80211 was disconnecting from\nthe network.\n\nIt turns out that we do take care to look up the\nstation pointer in ieee80211_tx_pending_skb, but\nthen don\u0027t use it, which obviously is a bug. Fix\nthis by removing the ieee80211_tx_h_sta handler\nand assigning the station pointer directly.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "66c524210ab9217528b01b63c43903545e03a58c",
      "tree": "3d3f519fc5f0230618fca12012b851bfd76947fb",
      "parents": [
        "f9f9b6e3e3128e2b4d01a6e5ed0bb73cbb9a0a37"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jul 22 13:58:51 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jul 26 15:32:41 2010 -0400"
      },
      "message": "mac80211: remove bogus rcu_read_lock()\n\nAnother remnant of the previous key locking scheme\nneeds to be removed -- this causes a warning\notherwise as ieee80211_set_default_mgmt_key will\nacquire a mutex.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "7e988014cd6dec991f095305256f57168b5610e8",
      "tree": "f51c57070b9998636a0a4c5e277a1a57a7c1f07a",
      "parents": [
        "68e8f2fae03cde0ba841325e2660b55fe49bf4b9"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Thu Jul 22 13:14:19 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jul 26 15:32:41 2010 -0400"
      },
      "message": "mac80211: freeing the wrong variable\n\nThe intent was to free \"msp-\u003eratelist\" here.  \"msp-\u003esample_table\" is\nalways NULL at this point.\n\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ea65145da88e9fa04cb15c7a2a550ad1d3fde02a",
      "tree": "41f105d7e8e1d5b997fe706cc1355ea053b41b84",
      "parents": [
        "00fc90c886220efe8b634d3f2a04713fcebbe2c0"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jul 22 15:43:13 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jul 26 15:09:04 2010 -0400"
      },
      "message": "minstrel: don\u0027t complain about feedback for unrequested rates\n\n\"It\u0027s not problematic if minstrel gets feedback for rates that it\ndoesn\u0027t have in its list, it should just ignore it. - Felix\"\n\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\nCc: Felix Fietkau \u003cnbd@openwrt.org\u003e\n"
    },
    {
      "commit": "00fc90c886220efe8b634d3f2a04713fcebbe2c0",
      "tree": "66e36e0b338564b60be182333c6bdba6b13f0d77",
      "parents": [
        "a6e492b9b5d323ca391312b981a5017e450132c0"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jul 22 15:36:02 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jul 26 15:09:04 2010 -0400"
      },
      "message": "minstrel_ht: remove unnecessary NULL check in minstrel_ht_update_caps\n\nIf sta is NULL, we will have problems long before we get here...\n\nReported-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\nCc: Felix Fietkau \u003cnbd@openwrt.org\u003e\n"
    },
    {
      "commit": "2a88e7e559f2358f4e1422d0b0c0278a74136581",
      "tree": "b4e9e56dbde79fe7185cba511a1ffd85f5d2018e",
      "parents": [
        "344e0f623cec5eba273db06fe57db080988d6b26",
        "7a17a33c0da37f8d24222c967550d19dabf13617"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 23 14:03:38 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 23 14:03:38 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6\n\nConflicts:\n\tdrivers/net/wireless/iwlwifi/iwl-commands.h\n"
    },
    {
      "commit": "7a17a33c0da37f8d24222c967550d19dabf13617",
      "tree": "14e736fd4add85528d24c62b0b9268dde0d87eab",
      "parents": [
        "bc05d19f4b884b1dbbce48912710ae3f972c89d2"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Wed Jul 21 11:30:27 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jul 21 15:13:42 2010 -0400"
      },
      "message": "mac80211: proper IBSS locking\n\nIBSS has never had locking, instead relying on some\nmemory barriers etc. That\u0027s hard to get right, and\nI think we had it wrong too until the previous patch.\nSince this is not performance sensitive, it doesn\u0027t\nmake sense to have the maintenance overhead of that,\nso add proper locking.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "bc05d19f4b884b1dbbce48912710ae3f972c89d2",
      "tree": "56f08ca551c38d9ef18f699874f1b1bb3bb8e4f3",
      "parents": [
        "9dca9c490146e787472bc05b264e043311a4c67b"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Wed Jul 21 10:52:40 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jul 21 15:13:42 2010 -0400"
      },
      "message": "mac80211: fix IBSS lockdep complaint\n\nBob reported a lockdep complaint originating in\nthe mac80211 IBSS code due to the common work\nstruct patch. The reason is that the IBSS and\nstation mode code have different locking orders\nfor the cfg80211 wdev lock and the work struct\n(where \"locking\" implies running/canceling).\n\nFix this by simply not canceling the work in\nthe IBSS code, it is not necessary since when\nthe REQ_RUN bit is cleared, the work will run\nwithout effect if it runs. When the interface\nis set down, it is flushed anyway, so there\u0027s\nno concern about it running after memory has\nbeen invalidated either.\n\nThis fixes\nhttps://bugzilla.kernel.org/show_bug.cgi?id\u003d16419\n\nAdditionally, looking into this I noticed that\nthere\u0027s a small window while the IBSS is torn\ndown in which the work may be rescheduled and\nthe REQ_RUN bit be set again after leave() has\ncleared it when a scan finishes at exactly the\nsame time. Avoid that by setting the ssid_len\nto zero before clearing REQ_RUN which signals\nto the scan finish code that this interface is\nnot active.\n\nReported-by: Bob Copeland \u003cme@bobcopeland.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "9dca9c490146e787472bc05b264e043311a4c67b",
      "tree": "67545964ffea81aa88e17d1a2dffe9a43f9ca973",
      "parents": [
        "5a652052fedbd7869572c757dd2ffc2ed420c69d"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Wed Jul 21 10:09:25 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jul 21 15:13:42 2010 -0400"
      },
      "message": "mac80211: refuse shared key auth when WEP is unavailable\n\nWhen WEP is not available, we should reject shared\nkey authentication because it could never succeed.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "53e9b1de6840d9047f768878adcbd1d116f72aca",
      "tree": "1926848bff27967029d24d954530f57845f36f3c",
      "parents": [
        "4ced3f74dae18715920cb680098ec7ff4345d0a3"
      ],
      "author": {
        "name": "David Gnedt",
        "email": "david.gnedt@davizone.at",
        "time": "Mon Jul 19 20:44:02 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jul 20 16:02:58 2010 -0400"
      },
      "message": "mac80211: set carrier on for monitor interfaces on ieee80211_open\n\nIf a station interface is reused as monitor interface it is possible that\nthe carrier is still set to off. This breaks packet injection on that\nmonitor interface.\nForce the carrier on in monitor interface initialisation like it is also done\nfor other interface types (e.g. adhoc, mesh point, ap).\n\nSigned-off-by: David Gnedt \u003cdavid.gnedt@davizone.at\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4ced3f74dae18715920cb680098ec7ff4345d0a3",
      "tree": "4a1b35285921fb25e01363af48a8c7db7423098d",
      "parents": [
        "875ae5f68883c75aad826e715df8ec0619551a07"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Jul 19 16:39:04 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jul 20 16:02:58 2010 -0400"
      },
      "message": "mac80211: move QoS-enable to BSS info\n\nEver since\n\ncommit e1b3ec1a2a336c328c336cfa5485a5f0484cc90d\nAuthor: Stanislaw Gruszka \u003csgruszka@redhat.com\u003e\nDate:   Mon Mar 29 12:18:34 2010 +0200\n\n    mac80211: explicitly disable/enable QoS\n\nmac80211 is telling drivers, in particular\niwlwifi, whether QoS is enabled or not.\n\nHowever, this is only relevant for station mode,\nsince only then will any device send nullfunc\nframes and need to know whether they should be\nQoS frames or not. In other modes, there are\n(currently) no frames the device is supposed to\nsend.\n\nWhen you now consider virtual interfaces, it\nbecomes apparent that the current mechanism is\ninadequate since it enables/disables QoS on a\nglobal scale, where for nullfunc frames it has\nto be on a per-interface scale.\n\nDue to the above considerations, we can change\nthe way mac80211 advertises the QoS state to\ndrivers to only ever advertise it as \"off\" in\nstation mode, and make it a per-BSS setting.\n\nTested-by: Stanislaw Gruszka \u003csgruszka@redhat.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "875ae5f68883c75aad826e715df8ec0619551a07",
      "tree": "6fd0fb7822a5c58b210e256738756355363e5cd7",
      "parents": [
        "b807b8a16bee27eb93a3393c173ce209a992ef18"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Sat Jul 17 15:59:07 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jul 20 16:02:58 2010 -0400"
      },
      "message": "mac80211: fix aggregation action frame handling with AP VLANs\n\nWhen aggregation related action frames are enqueued for further work,\nand they originate from a STA that is part of an AP VLAN, they are\ncurrently enqueued for the AP interface. This breaks the sta_info_get()\nlookup in the actual work function, and because of that, aggregation\nsessions are not established for this STA.\n\nFix this by replacing the sta_info_get call with a call to\nsta_info_get_bss.\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "06ee1c261360545c97fd836fff9dbd10ebd9301b",
      "tree": "21a144e09d83db9afb374f4a331aea6c4dec15a8",
      "parents": [
        "9acd56d3f2a05191ee369cbdd8c37dd547aa19b8"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jul 19 11:52:59 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jul 20 15:55:12 2010 -0400"
      },
      "message": "wireless: use netif_rx_ni in ieee80211_send_layer2_update\n\nThese synthetic frames are all triggered from userland requests in\nprocess context.\n\nhttps://bugzilla.kernel.org/show_bug.cgi?id\u003d16412\n\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "088c87262bbc39a01ebcd70817d35616785908b1",
      "tree": "3ebb99b80645eaffa2ad04c9f11708f6694d24a1",
      "parents": [
        "48d5548fc5e5ad79ca98a287b67f403834929739"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jul 15 16:16:17 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 16 14:03:42 2010 -0400"
      },
      "message": "mac80211: improve error checking if WEP fails to init\n\nDo this by poisoning the values of wep_tx_tfm and wep_rx_tfm if either\ncrypto allocation fails.\n\nReported-by: Stanislaw Gruszka \u003csgruszka@redhat.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "15804e3e9de52f1baefad34233424488b5672853",
      "tree": "997ab099257837a0ff0e246dd715e2738381239a",
      "parents": [
        "9edd9520a2c664c6d72dca68adddd243d00006e8"
      ],
      "author": {
        "name": "Christian Lamparter",
        "email": "chunkeey@googlemail.com",
        "time": "Fri Jul 16 13:01:24 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 16 14:03:42 2010 -0400"
      },
      "message": "mac80211: skip HT parsing if HW does not support HT\n\nThis patch will also fix the odd freeze which occurred\nwhen minstrel_ht connects to an 802.11n network with\nlegacy hardware.\n\nSigned-off-by: Christian Lamparter \u003cchunkeey@googlemail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e300d955debdadf599c36e47eb0bc16f5976215c",
      "tree": "8fafcc789dc06e90665e6eee6388af228bbd2fd7",
      "parents": [
        "242647bcf8464860f173f3d4d4ab3490d3558518",
        "815868e7b5c207ba42d5b317ccc51f8112732268"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jul 13 15:57:29 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jul 13 15:57:29 2010 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem\n\nConflicts:\n\tdrivers/net/wireless/wl12xx/wl1271_cmd.h\n"
    },
    {
      "commit": "3473187d2459a078e00e5fac8aafc30af69c57fa",
      "tree": "93c3da6dbcbfd09ea81884bee790219d4cee0d56",
      "parents": [
        "73e194639d90594d06d0c10019c0ab4638869135"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jul 07 15:07:49 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jul 08 16:35:50 2010 -0400"
      },
      "message": "mac80211: remove wep dependency\n\nThe current mac80211 code assumes that WEP is always available.  If WEP\nfails to initialize, ieee80211_register_hw will always fail.\n\nIn some cases (e.g. FIPS certification), the cryptography used by WEP is\nunavailable.  However, in such cases there is no good reason why CCMP\nencryption (or even no link level encryption) cannot be used.  So, this\npatch removes mac80211\u0027s assumption that WEP (and TKIP) will always be\navailable for use.\n\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ecc3d5ae17e62ce1250abf16ff523c677bf19e2f",
      "tree": "6403f0bafda65b1ea520a70fd48e610535e89129",
      "parents": [
        "009271f9187d61c638bb4f3db9ab172c5065e542"
      ],
      "author": {
        "name": "Ming Lei",
        "email": "tom.leiming@gmail.com",
        "time": "Thu Jul 01 23:19:50 2010 +0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 02 13:44:40 2010 -0400"
      },
      "message": "minstrel_ht: fix check for downgrading of top2 rate\n\nThe check should be against current top2 rate, instead of\ncurrent top rate.\n\nSigned-off-by: Ming Lei \u003ctom.leiming@gmail.com\u003e\nAcked-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "009271f9187d61c638bb4f3db9ab172c5065e542",
      "tree": "66b86ad7c5434db525631b11d907147a397b5ae9",
      "parents": [
        "8e67ca7c9266a4f920d70d3a2cbf03a597d28ea7"
      ],
      "author": {
        "name": "Ming Lei",
        "email": "tom.leiming@gmail.com",
        "time": "Thu Jul 01 23:18:42 2010 +0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 02 13:44:39 2010 -0400"
      },
      "message": "minstrel_ht: fix updating rate with best probability\n\nThe throughput should be considered when updating rate\nwith best probability.\n\nSigned-off-by: Ming Lei \u003ctom.leiming@gmail.com\u003e\nAcked-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "05318bc905467237d4aa68a701f6e92a2b332218",
      "tree": "3b7577383bca50aeb442568aa16cf8f2167b8694",
      "parents": [
        "ea812ca1b06113597adcd8e70c0f84a413d97544",
        "88c1f4f6dffe66e2fed8e7e3276e091ee850bed0"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 01 17:34:14 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 01 17:34:14 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6\n\nConflicts:\n\tdrivers/net/wireless/libertas/host.h\n"
    },
    {
      "commit": "92b50c4b5b01d0ba4efcff9e85f7a76b620fe789",
      "tree": "259ab6b0f2bb918f0ec004a4a1080ccf5719d102",
      "parents": [
        "f860d526eb2939a1c37128900b5af2b6f3ff7f20"
      ],
      "author": {
        "name": "Helmut Schaa",
        "email": "helmut.schaa@googlemail.com",
        "time": "Wed Jun 30 08:48:42 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 30 15:00:53 2010 -0400"
      },
      "message": "mac82011: Allow selection of minstrel_ht as default rc algorithm\n\nAllow selection of minstrel_ht as default rate control algorithm. At\nthe moment minstrel_ht can only be requested by the driver code but\nnot selected as default in make menuconfig. Fix this by using\nminstrel_ht when minstrel was selected as default and minstrel_ht\nis available.\n\nThis change won\u0027t affect legacy devices as minstrel_ht falls back to\nminstrel in that case.\n\nSigned-off-by: Helmut Schaa \u003chelmut.schaa@googlemail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "c466d4efb86bb5aa327d6e43f62781a9faabfdae",
      "tree": "16b2727b93adcc34b5b638975f00b4501b3062b2",
      "parents": [
        "ff3074a4dd6c0963e6a7eaac48175a62f589c143"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jun 29 14:51:23 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jun 29 14:51:23 2010 -0400"
      },
      "message": "mac80211: add basic tracing to drv_get_survey\n\nReported-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ff3074a4dd6c0963e6a7eaac48175a62f589c143",
      "tree": "44058b9aaf1e3c9dc15531847f5c748821eeccfb",
      "parents": [
        "38bdb650f902d275d6b2f9c2d8247fd960525583"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jun 29 13:55:04 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jun 29 13:55:04 2010 -0400"
      },
      "message": "mac80211: remove unnecessary check in ieee80211_dump_survey\n\nThis check is duplicated in drv_get_survey.\n\nReported-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "38bdb650f902d275d6b2f9c2d8247fd960525583",
      "tree": "e764243fd86df22e33bff2228d70c6e5ccd8008b",
      "parents": [
        "78c4653a2274479547e259e1f416d2b3d04c42a8"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Fri Jun 25 01:44:33 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 28 15:16:20 2010 -0400"
      },
      "message": "mac80211: fix the for_each_sta_info macro\n\nBecause of an ambiguity in the for_each_sta_info macro, it can\ncurrently only be used if the third parameter is set to \u0027sta\u0027.\nFix this by renaming the parameter to \u0027_sta\u0027.\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5ed3bc7288487bd4f891f420a07319e0b538b4fe",
      "tree": "28c68a74e7aaeef531444b1fac1287a2fbf59d4a",
      "parents": [
        "5548a8a1138c96e3e6f803c9f2c1f9389c2f0ee6"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jun 24 14:38:30 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 28 15:14:51 2010 -0400"
      },
      "message": "mac80211: use netif_receive_skb in ieee80211_tx_status callpath\n\nThis avoids the extra queueing from calling netif_rx.\n\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5548a8a1138c96e3e6f803c9f2c1f9389c2f0ee6",
      "tree": "50e41fdf1df846843713694d8dd51ad431c4620b",
      "parents": [
        "679db794679baae96ce0a2257daaeaedef4e8352"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jun 24 14:25:56 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 28 15:14:51 2010 -0400"
      },
      "message": "mac80211: use netif_receive_skb in ieee80211_rx callpath\n\nThis avoids the extra queueing from calling netif_rx.\n\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "fa61cf70a6ae1089e459e4b59b2e8d8e90d8535e",
      "tree": "1bd81709faaa15fb207de7db4df1ceed96374208",
      "parents": [
        "a185045c8da1ec6627236b4ade0d949b15da43b3"
      ],
      "author": {
        "name": "Juuso Oikarinen",
        "email": "juuso.oikarinen@nokia.com",
        "time": "Wed Jun 23 12:12:37 2010 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jun 24 15:42:33 2010 -0400"
      },
      "message": "cfg80211/mac80211: Update set_tx_power to use mBm instead of dBm units\n\nIn preparation for a TX power setting interface in the nl80211, change the\n.set_tx_power function to use mBm units instead of dBm for greater accuracy and\nsmaller power levels.\n\nAlso, already in advance move the tx_power_setting enumeration to nl80211.\n\nThis change affects the .tx_set_power function prototype. As a result, the\ncorresponding changes are needed to modules using it. These are mac80211,\niwmc3200wifi and rndis_wlan.\n\nCc: Samuel Ortiz \u003csamuel.ortiz@intel.com\u003e\nCc: Jussi Kivilinna \u003cjussi.kivilinna@mbnet.fi\u003e\nSigned-off-by: Juuso Oikarinen \u003cjuuso.oikarinen@nokia.com\u003e\nAcked-by: Samuel Ortiz \u003csamuel.ortiz@intel.com\u003e\nAcked-by: Jussi Kivilinna \u003cjussi.kivilinna@mbnet.fi\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "c937019761a758f2749b1f3a032b7a91fb044753",
      "tree": "8305297e2d93794fa3a70e28dcb99990c9050ecb",
      "parents": [
        "de66bfd85c817146825eaafb39d5872463c09e8c"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 21 17:14:07 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jun 24 15:42:30 2010 -0400"
      },
      "message": "mac80211: avoid scheduling while atomic in mesh_rx_plink_frame\n\nWhile mesh_rx_plink_frame holds sta-\u003elock...\n\nmesh_rx_plink_frame -\u003e\n\tmesh_plink_inc_estab_count -\u003e\n\t\tieee80211_bss_info_change_notify\n\n...but ieee80211_bss_info_change_notify is allowed to sleep.  A driver\ntaking advantage of that allowance can cause a scheduling while\natomic bug.  Similar paths exist for mesh_plink_dec_estab_count,\nso work around those as well.\n\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d16099\n\nAlso, correct a minor kerneldoc comment error (mismatched function names).\n\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "de66bfd85c817146825eaafb39d5872463c09e8c",
      "tree": "3b8847f4fcf2b3954c62f6bb5f4f732c3f6e4f66",
      "parents": [
        "670b7f11ff1f8492f51716474cf582f55a2247ba"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jun 24 13:03:14 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jun 24 15:42:18 2010 -0400"
      },
      "message": "minstrel_ht: move minstrel_mcs_groups declaration to header file\n\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\nAcked-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\n"
    },
    {
      "commit": "d5ece2150a8a1715fea3272e057c45d98edb78ea",
      "tree": "4ac89debcf68bed833b2913f61c1d4d75c1a7587",
      "parents": [
        "292b4df62a5a05a077269535d24eaabc8831c79d"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jun 24 11:18:38 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jun 24 15:41:26 2010 -0400"
      },
      "message": "minstrel_ht: make *idx unsigned in minstrel_downgrade_rate\n\nnet/mac80211/rc80211_minstrel_ht.c:440:46: warning: incorrect type in argument 2 (different signedness)\nnet/mac80211/rc80211_minstrel_ht.c:440:46:    expected int *idx\nnet/mac80211/rc80211_minstrel_ht.c:440:46:    got unsigned int *\u003cnoident\u003e\nnet/mac80211/rc80211_minstrel_ht.c:446:46: warning: incorrect type in argument 2 (different signedness)\nnet/mac80211/rc80211_minstrel_ht.c:446:46:    expected int *idx\nnet/mac80211/rc80211_minstrel_ht.c:446:46:    got unsigned int *\u003cnoident\u003e\n\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\nAcked-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\n"
    },
    {
      "commit": "292b4df62a5a05a077269535d24eaabc8831c79d",
      "tree": "ce1a110413099b13806d3db737f7f0423c3d9eec",
      "parents": [
        "a3275e24aa97fe303c66e4ab06a67b12730a8c2f"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jun 24 11:13:56 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jun 24 11:13:56 2010 -0400"
      },
      "message": "mac80211: don\u0027t shadow mgmt variable in ieee80211_rx_h_action\n\nnet/mac80211/rx.c:2059:39: warning: symbol \u0027mgmt\u0027 shadows an earlier one\nnet/mac80211/rx.c:1916:31: originally declared here\n\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f90754c15f47063671aea55268a9dd6a37b51492",
      "tree": "197c239a813e426d8a675449927e381352ad4875",
      "parents": [
        "fb63bc41772259701a827e9a6117219a7393554f"
      ],
      "author": {
        "name": "Juuso Oikarinen",
        "email": "juuso.oikarinen@nokia.com",
        "time": "Mon Jun 21 08:59:39 2010 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 21 15:39:59 2010 -0400"
      },
      "message": "mac80211: Add interface for driver to temporarily disable dynamic ps\n\nThis mechanism introduced in this patch applies (at least) for hardware\ndesigns using a single shared antenna for both WLAN and BT. In these designs,\nthe antenna must be toggled between WLAN and BT.\n\nIn those hardware, managing WLAN co-existence with Bluetooth requires WLAN\nfull power save whenever there is Bluetooth activity in order for WLAN to be\nable to periodically relinquish the antenna to be used for BT. This is because\nBT can only access the shared antenna when WLAN is idle or asleep.\n\nSome hardware, for instance the wl1271, are able to indicate to the host\nwhenever there is BT traffic. In essence, the hardware will send an indication\nto the host whenever there is, for example, SCO traffic or A2DP traffic, and\nwill send another indication when the traffic is over.\n\nThe hardware gets information of Bluetooth traffic via hardware co-existence\ncontrol lines - these lines are used to negotiate the shared antenna\nownership. The hardware will give the antenna to BT whenever WLAN is sleeping.\n\nThis patch adds the interface to mac80211 to facilitate temporarily disabling\nof dynamic power save as per request of the WLAN driver. This interface will\nimmediately force WLAN to full powersave, hence allowing BT coexistence as\ndescribed above.\n\nIn these kind of shared antenna desings, when WLAN powersave is fully disabled,\nBluetooth will not work simultaneously with WLAN at all. This patch does not\naddress that problem. This interface will not change PSM state, so if PSM is\ndisabled it will remain so. Solving this problem requires knowledge about BT\nstate, and is best done in user-space.\n\nSigned-off-by: Juuso Oikarinen \u003cjuuso.oikarinen@nokia.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "fb63bc41772259701a827e9a6117219a7393554f",
      "tree": "0aced30ad8dd358b6bdee06d8008d98c7c69c4bb",
      "parents": [
        "bb64d95e539fe09230d42b4634ac712ca5cb700b"
      ],
      "author": {
        "name": "Gertjan van Wingerde",
        "email": "gwingerde@gmail.com",
        "time": "Sun Jun 20 20:28:07 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 21 15:39:59 2010 -0400"
      },
      "message": "mac80211: Fix compile warning in scan.c.\n\nFix the following compile warning:\n\nCC [M]  net/mac80211/scan.o\nnet/mac80211/scan.c: In function \u0027ieee80211_request_internal_scan\u0027:\nnet/mac80211/scan.c:749:23: warning: comparison between \u0027enum nl80211_band\u0027 and \u0027enum ieee80211_band\u0027\n\ncaused by the local variable band not being of the proper \u0027ieee80211_band\u0027 type.\n\nSigned-off-by: Gertjan van Wingerde \u003cgwingerde@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "543708be320d7df692d24b349ca01a947b340764",
      "tree": "7ca928290eb276ea25afbc6b12d8d8f63dfea167",
      "parents": [
        "8223d2f540c96f46f762fbd93f59a08bb80601c1"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Jun 18 12:32:20 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jun 18 15:11:14 2010 -0400"
      },
      "message": "mac80211: fix sw scan bracketing\n\nCurrently, detection in hwsim and ath9k can\ndetect that two sw scans are in flight at the\nsame time, which isn\u0027t really true. It is\ncaused by a race condition, because the scan\ncomplete callback is called too late, after\nthe lock has been dropped, so that a new scan\ncan be started before it is called.\n\nIt is also called too early semantically, as\nit is currently called _after_ the return to\nthe operating channel -- it should be before\nso that drivers know this is the operating\nchannel again.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "bb9c03d8a6893517737b16fdbeb54be3c73b3023",
      "tree": "35fa0d1defaaf94641963a49126d7bb475ffa4c6",
      "parents": [
        "4de57826810fd2cfeb2ab5c7d003ff9116b8f7ee",
        "abf52f86aa0a49a7377350cafa8f218c4cd227e7"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 17 14:19:06 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 17 14:19:06 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6\n"
    },
    {
      "commit": "abf52f86aa0a49a7377350cafa8f218c4cd227e7",
      "tree": "dd9549023a99d37fb1bbcbaad9c10ae102a1882e",
      "parents": [
        "6a0076e02a884e86c762a7b63cb50c2e30067491",
        "021570e55b7152843376b9d9f60624e3e05ac054"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jun 17 16:21:14 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jun 17 16:21:14 2010 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n\nConflicts:\n\tnet/mac80211/mlme.c\n"
    },
    {
      "commit": "d8d326dc7ae6bec2a999d674c5babb6bf490587a",
      "tree": "0169a23e34712e4a34db9c3dd658c14a59ded5d9",
      "parents": [
        "fed396a585d8e1870b326f2e8e1888a72957abb8",
        "021570e55b7152843376b9d9f60624e3e05ac054"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 16 13:41:55 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 16 13:41:55 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n"
    },
    {
      "commit": "021570e55b7152843376b9d9f60624e3e05ac054",
      "tree": "03031adc6e025b582467c8d0ec6df6dec21e286d",
      "parents": [
        "d6a574ff6bfb842bdb98065da053881ff527be46"
      ],
      "author": {
        "name": "Christoph Fritz",
        "email": "chf.fritz@googlemail.com",
        "time": "Wed Jun 16 16:37:34 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 16 15:49:16 2010 -0400"
      },
      "message": "mac80211: fix warn, enum may be used uninitialized\n\nregression introduced by b8d92c9c141ee3dc9b3537b1f0ffb4a54ea8d9b2\n\nIn function ‘ieee80211_work_rx_queued_mgmt’:\nwarning: ‘rma’ may be used uninitialized in this function\n\nthis re-adds default value WORK_ACT_NONE back to rma\n\nSigned-off-by: Christoph Fritz \u003cchf.fritz@googlemail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "9190252c952a33efa1ceff4ef35188f8a27b81cb",
      "tree": "f6c7473c919e7a3f0ff7c1b6543da44f8c338d02",
      "parents": [
        "05e48e8e437148298f4673e1efe81f9ead5f41d7"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "jouni.malinen@atheros.com",
        "time": "Fri Jun 11 10:27:33 2010 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jun 15 16:00:49 2010 -0400"
      },
      "message": "mac80211: Use a separate CCMP PN receive counter for management frames\n\nWhen management frame protection (IEEE 802.11w) is used, we must use a\nseparate counter for tracking received CCMP packet number for the\nmanagement frames. The previously used NUM_RX_DATA_QUEUESth queue was\nshared with data frames when QoS was not used and that can cause\nproblems in detecting replays incorrectly for robust management frames.\nAdd a new counter just for robust management frames to avoid this issue.\n\nSigned-off-by: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "05e48e8e437148298f4673e1efe81f9ead5f41d7",
      "tree": "17511ed4294b800c1dceaa2b30b016c0e4c782b2",
      "parents": [
        "ff61638105db6f5832ef8700436ba6aa6d3a2fda"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "jouni.malinen@atheros.com",
        "time": "Mon Jun 14 11:55:56 2010 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jun 15 16:00:48 2010 -0400"
      },
      "message": "mac80211: Protect Deauthentication frame when using MFP\n\nWhen management frame protection (IEEE 802.11w) is used,\nDeauthentication frame needs to be protected when the pairwise key is\nconfigured. mac80211 was removing the station entry (and its keys)\nbefore actually sending out the Deauthentication frame. Fix this by\nreordering the code to send the frame before the station entry gets\nremoved. This matches an earlier change that handled the Disassociation\nframe processing, but missed Deauthentication frames.\n\nSigned-off-by: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ff61638105db6f5832ef8700436ba6aa6d3a2fda",
      "tree": "ff55ef6186cd46d87ca4e54efbbe82f5ecc68f1e",
      "parents": [
        "685429623f88d84f98bd5daffc3c427c408740d4"
      ],
      "author": {
        "name": "Juuso Oikarinen",
        "email": "juuso.oikarinen@nokia.com",
        "time": "Wed Jun 09 09:51:52 2010 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jun 15 16:00:48 2010 -0400"
      },
      "message": "mac80211: Fix ps-qos network latency handling\n\nThe ps-qos latency handling is broken. It uses predetermined latency values\nto select specific dynamic PS timeouts. With common AP configurations, these\nvalues overlap with beacon interval and are therefore essentially useless\n(for network latencies less than the beacon interval, PSM is disabled.)\n\nThis patch remedies the problem by replacing the predetermined network latency\nvalues with one high value (1900ms) which is used to go trigger full psm. For\nbackwards compatibility, the value 2000ms is still mapped to a dynamic ps\ntimeout of 100ms.\n\nCurrently also the mac80211 internal value for storing user space configured\ndynamic PSM values is incorrectly in the driver visible ieee80211_conf struct.\nMove it to the ieee80211_local struct.\n\nSigned-off-by: Juuso Oikarinen \u003cjuuso.oikarinen@nokia.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "685429623f88d84f98bd5daffc3c427c408740d4",
      "tree": "d50f119094dd3fb7668f837dbe50857d11bb4fa3",
      "parents": [
        "5ea096c0c85e80335889539899af9a4717976e0b"
      ],
      "author": {
        "name": "Juuso Oikarinen",
        "email": "juuso.oikarinen@nokia.com",
        "time": "Wed Jun 09 13:43:26 2010 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:42:31 2010 -0400"
      },
      "message": "mac80211: Fix circular locking dependency in ARP filter handling\n\nThere is a circular locking dependency when configuring the\nhardware ARP filters on association, occurring when flushing the mac80211\nworkqueue. This is what happens:\n\n[   92.026800] \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[   92.030507] [ INFO: possible circular locking dependency detected ]\n[   92.030507] 2.6.34-04781-g2b2c009 #85\n[   92.030507] -------------------------------------------------------\n[   92.030507] modprobe/5225 is trying to acquire lock:\n[   92.030507]  ((wiphy_name(local-\u003ehw.wiphy))){+.+.+.}, at: [\u003cffffffff8105b5c0\u003e] flush_workq\nueue+0x0/0xb0\n[   92.030507]\n[   92.030507] but task is already holding lock:\n[   92.030507]  (rtnl_mutex){+.+.+.}, at: [\u003cffffffff812b9ce2\u003e] rtnl_lock+0x12/0x20\n[   92.030507]\n[   92.030507] which lock already depends on the new lock.\n[   92.030507]\n[   92.030507]\n[   92.030507] the existing dependency chain (in reverse order) is:\n[   92.030507]\n[   92.030507] -\u003e #2 (rtnl_mutex){+.+.+.}:\n[   92.030507]        [\u003cffffffff810761fb\u003e] lock_acquire+0xdb/0x110\n[   92.030507]        [\u003cffffffff81341754\u003e] mutex_lock_nested+0x44/0x300\n[   92.030507]        [\u003cffffffff812b9ce2\u003e] rtnl_lock+0x12/0x20\n[   92.030507]        [\u003cffffffffa022d47c\u003e] ieee80211_assoc_done+0x6c/0xe0 [mac80211]\n[   92.030507]        [\u003cffffffffa022f2ad\u003e] ieee80211_work_work+0x31d/0x1280 [mac80211]\n\n[   92.030507] -\u003e #1 ((\u0026local-\u003ework_work)){+.+.+.}:\n[   92.030507]        [\u003cffffffff810761fb\u003e] lock_acquire+0xdb/0x110\n[   92.030507]        [\u003cffffffff8105a51a\u003e] worker_thread+0x22a/0x370\n[   92.030507]        [\u003cffffffff8105ecc6\u003e] kthread+0x96/0xb0\n[   92.030507]        [\u003cffffffff81003a94\u003e] kernel_thread_helper+0x4/0x10\n[   92.030507]\n[   92.030507] -\u003e #0 ((wiphy_name(local-\u003ehw.wiphy))){+.+.+.}:\n[   92.030507]        [\u003cffffffff81075fdc\u003e] __lock_acquire+0x1c0c/0x1d50\n[   92.030507]        [\u003cffffffff810761fb\u003e] lock_acquire+0xdb/0x110\n[   92.030507]        [\u003cffffffff8105b60e\u003e] flush_workqueue+0x4e/0xb0\n[   92.030507]        [\u003cffffffffa023ff7b\u003e] ieee80211_stop_device+0x2b/0xb0 [mac80211]\n[   92.030507]        [\u003cffffffffa0231635\u003e] ieee80211_stop+0x3e5/0x680 [mac80211]\n\nThe locking in this case is quite complex. Fix the problem by rewriting the\nway the hardware ARP filter list is handled - i.e. make a copy of the address\nlist to the bss_conf struct, and provide that list to the hardware driver\nwhen needed.\n\nThe current patch will enable filtering also in promiscuous mode. This may need\nto be changed in the future.\n\nReported-by: Reinette Chatre \u003creinette.chatre@intel.com\u003e\nSigned-off-by: Juuso Oikarinen \u003cjuuso.oikarinen@nokia.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5ea096c0c85e80335889539899af9a4717976e0b",
      "tree": "e04e357b3222083a2f3eef7216f8184239023c70",
      "parents": [
        "392cfdb10dab6c7dfa5fed18d8a44d7453d42196"
      ],
      "author": {
        "name": "Teemu Paasikivi",
        "email": "ext-teemu.3.paasikivi@nokia.com",
        "time": "Mon Jun 14 12:55:33 2010 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:39:34 2010 -0400"
      },
      "message": "mac80211: remove BSS from cfg80211 list when leaving IBSS\n\nRemove BSS from cfg80211 BSS list if we are only member in IBSS when\nleaving it.\n\nSigned-off-by: Teemu Paasikivi \u003cext-teemu.3.paasikivi@nokia.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "392cfdb10dab6c7dfa5fed18d8a44d7453d42196",
      "tree": "cc45881854f84453f34cf04e6846feff4cba5011",
      "parents": [
        "fbd2c8dcbc69616d2e15b8a269a86b3a05d45aea"
      ],
      "author": {
        "name": "Teemu Paasikivi",
        "email": "ext-teemu.3.paasikivi@nokia.com",
        "time": "Mon Jun 14 12:55:32 2010 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:39:34 2010 -0400"
      },
      "message": "mac80211: Set changed basic rates flag\n\nAdd changed basic rates flag to bss_changed while joinig ibss network.\n\nThis patch is split from the patch containing support for setting basic\nrates when creating ibss network. Original patch was posted by Johannes\nBerg on the linux-wireless posting list.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: Teemu Paasikivi \u003cext-teemu.3.paasikivi@nokia.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "fbd2c8dcbc69616d2e15b8a269a86b3a05d45aea",
      "tree": "4ae08bd02d5e0d317828300f3255824df732e4b3",
      "parents": [
        "7b9a4b001971c89f35d55180867753a612d17458"
      ],
      "author": {
        "name": "Teemu Paasikivi",
        "email": "ext-teemu.3.paasikivi@nokia.com",
        "time": "Mon Jun 14 12:55:31 2010 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:39:34 2010 -0400"
      },
      "message": "mac80211: Set basic rates while joining ibss network\n\nThis patch adds support to nl80211 and mac80211 to set basic rates when\njoining/creating ibss network.\n\nOriginal patch was posted by Johannes Berg on the linux-wireless posting list.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: Teemu Paasikivi \u003cext-teemu.3.paasikivi@nokia.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4efc76bdbf9bfd2b8624c4dd52b9d8ffed176b31",
      "tree": "49be6ee8edf101521f45c72773bc73a6351f11c8",
      "parents": [
        "8b58ff832df9222e1fb3c58ae7f745f95569b55e"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jun 10 10:56:20 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:39:29 2010 -0400"
      },
      "message": "mac80211: bracket driver tracing\n\nCurrently, driver tracing is sometimes invoked\nafter and sometimes before the actual driver\ncallback. This is fine as long as the driver\nhas no tracing itself, but as soon as it does\nit gets confusing.\n\nTo make traces containing such information\neasier to read, introduce a return tracer in\nmac80211 that essentially brackets any driver\ntracing, and invoke the real trace before the\ndriver\u0027s callback, only showing the return\nvalue, if any, afterwards.\n\nSince tracing records the process, there\u0027s no\nproblem with overlapping calls if that should\nhappen.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8b58ff832df9222e1fb3c58ae7f745f95569b55e",
      "tree": "0283d0ee403eb19a4b411fc3803763619c5d6dfc",
      "parents": [
        "73a72a81d27b71f9ace31668d2dd7f3ac1c8228e"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jun 10 10:21:51 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:39:28 2010 -0400"
      },
      "message": "mac80211: fix mgmt frame accounting\n\nThe recent change to processing action frames from\nthe management frame queue had already broken action\nframe accounting, and my rework didn\u0027t help either.\nSo add back accounting and simplify the code with a\nlabel rather than duplicating it, and also add\naccounting for management frames.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "73a72a81d27b71f9ace31668d2dd7f3ac1c8228e",
      "tree": "114b1a333c53a328d1a55551ea591fe8f3b5d2d7",
      "parents": [
        "85ad181ea78861f69b007599cec9e6ba33fcdf8a"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jun 10 10:21:50 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:39:28 2010 -0400"
      },
      "message": "mac80211: update aggregation documentation\n\nEven before the recent changes, the documentation\nfor TX aggregation was somewhat out of date. Update\nit and also add documentation for the RX side.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "85ad181ea78861f69b007599cec9e6ba33fcdf8a",
      "tree": "ea92b4f7aa6d09ee11ee865a11f6426e809468ba",
      "parents": [
        "cfcdbde35e2b621cf56bedc38a3a81e8c28addb9"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jun 10 10:21:49 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:39:28 2010 -0400"
      },
      "message": "mac80211: allow drivers to sleep in ampdu_action\n\nAllow drivers to sleep, and indicate this in\nthe documentation. ath9k has some locking I\ndon\u0027t understand, so keep it safe and disable\nBHs in it, all other drivers look fine with\nthe context change.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "cfcdbde35e2b621cf56bedc38a3a81e8c28addb9",
      "tree": "cd0664681dc4629f7ce9a3319868eebb005060ff",
      "parents": [
        "83a5cbf73a13d0c8be019b22afec4407e4285aed"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jun 10 10:21:48 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:39:28 2010 -0400"
      },
      "message": "mac80211: change TX aggregation locking\n\nTo prepare for allowing drivers to sleep in\nampdu_action, change the locking in the TX\naggregation code to use the mutex the RX part\nalready uses. The spinlock is still necessary\naround some code to avoid races with TX, but\nnow we can also synchronize_net() to avoid\ngetting an inconsistent sequence number.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "83a5cbf73a13d0c8be019b22afec4407e4285aed",
      "tree": "3ac77e38aa5dd7891b101f45e963df7b9a5b9d38",
      "parents": [
        "a93e364430de7f7a5f4eedd604ad1ab3d825dde5"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jun 10 10:21:47 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:39:28 2010 -0400"
      },
      "message": "mac80211: defer TX agg session teardown to work\n\nSince we want the code to be able to sleep\nin the future, it must not be called from\nthe timer directly. To achieve that, simply\ncall the function drivers would call, and\nalso use RCU in the timer to get the struct\nso we don\u0027t need to rely on the spinlock in\nthe future.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a93e364430de7f7a5f4eedd604ad1ab3d825dde5",
      "tree": "441f0f69dc5b08d79c5f5f4e7adae88ad18dbd86",
      "parents": [
        "f955ebb44798e0058c987a0817810d2542e87349"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jun 10 10:21:46 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:39:28 2010 -0400"
      },
      "message": "mac80211: change RX aggregation locking\n\nTo prepare for allowing drivers to sleep in\nampdu_action, change the locking in the RX\naggregation code to use a mutex, so that it\nwould already allow drivers to sleep. But\nexplicitly disable BHs around the callback\nfor now since the TX part cannot yet sleep,\nand drivers\u0027 locking might require it.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f955ebb44798e0058c987a0817810d2542e87349",
      "tree": "cc31892c229120ca206ea2d19fc0e6c13f0bad47",
      "parents": [
        "7c3b1dd8f483bf4bcb9776cd9cd3b37dd327d7ea"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jun 10 10:21:45 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:39:28 2010 -0400"
      },
      "message": "mac80211: fix RX aggregation timer\n\nI noticed that when there was _no_ traffic at\nall on a given aggregation session, it would\nnever time out. This won\u0027t happen unless you\nforced creating a session, but fix it anyway.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "7c3b1dd8f483bf4bcb9776cd9cd3b37dd327d7ea",
      "tree": "b5e42cc6f18b80c1036d0b9e5590d171fa84d074",
      "parents": [
        "67c282c00c9c06733aae229662d209957f6d23a7"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jun 10 10:21:44 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:39:28 2010 -0400"
      },
      "message": "mac80211: defer RX agg session teardown to work\n\nSince we want the code to be able to sleep\nin the future, it must not be called from\nthe timer directly. To prepare, move it out\ninto the aggregation work.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "67c282c00c9c06733aae229662d209957f6d23a7",
      "tree": "698270941e46c873e2c34fda0428ea457cd1926b",
      "parents": [
        "0ab337032a0dfcd5f2527d3306d3deeba5f95b59"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jun 10 10:21:43 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:39:27 2010 -0400"
      },
      "message": "mac80211: move BA session work\n\nMove the block-ack session works into common\ncode, since it will be needed for RX agg too\nin the next patches.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "0ab337032a0dfcd5f2527d3306d3deeba5f95b59",
      "tree": "88795edc149fd88574fece0c8f23774ee8a9155c",
      "parents": [
        "a6a67db2bc89d2b1ff07e0817f11235c20d2c329"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jun 10 10:21:42 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:39:27 2010 -0400"
      },
      "message": "mac80211: make TX aggregation start/stop request async\n\nWhen the driver or rate control requests starting\nor stopping an aggregation session, that currently\ncauses a direct callback into the driver, which\ncould potentially cause locking problems. Also,\nthe functions need to be callable from contexts\nthat cannot sleep, and thus will interfere with\nmaking the ampdu_action callback sleeping.\n\nTo address these issues, add a new work item for\neach station that will process any start or stop\nrequests out of line.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a6a67db2bc89d2b1ff07e0817f11235c20d2c329",
      "tree": "1096c42ede83af4dbae34387246f91c0d6649baf",
      "parents": [
        "5d22c89b9bea17a0e48e7534a9b237885e2c0809"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jun 10 10:21:41 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:39:27 2010 -0400"
      },
      "message": "mac80211: refcount aggregation queue stop\n\nmac80211 currently maintains the ampdu_lock to\navoid starting a queue due to one aggregation\nsession while another aggregation session needs\nthe queue stopped.\n\nWe can do better, however, and instead refcount\nthe queue stops for this particular purpose,\nthus removing the need for the lock. This will\nhelp making ampdu_action able to sleep.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5d22c89b9bea17a0e48e7534a9b237885e2c0809",
      "tree": "ed4f1de2efaa41368a2774adc0e07d903f65ed98",
      "parents": [
        "a622ab72b4dcfdf53e24b16e9530cb876979a00c"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jun 10 10:21:40 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:39:27 2010 -0400"
      },
      "message": "mac80211: remove non-irqsafe aggregation callbacks\n\nThe non-irqsafe aggregation start/stop done\ncallbacks are currently only used by ath9k_htc,\nand can cause callbacks into the driver again.\nThis might lead to locking issues, which will\nonly get worse as we modify locking. To avoid\ntrouble, remove the non-irqsafe versions and\nchange ath9k_htc to use those instead.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a622ab72b4dcfdf53e24b16e9530cb876979a00c",
      "tree": "170d2ccf3a594f3675b5fa58378319031054e806",
      "parents": [
        "a87f736d942c86255e3088c606f0e3eab6bbf784"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jun 10 10:21:39 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:39:27 2010 -0400"
      },
      "message": "mac80211: use RCU for TX aggregation\n\nCurrently we allocate some memory for each TX\naggregation session and additionally keep a\nstate bitmap indicating the state it is in.\nBy using RCU to protect the pointer, moving\nthe state into the structure and some locking\ntrickery we can avoid locking when the TX agg\nsession is fully operational.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a87f736d942c86255e3088c606f0e3eab6bbf784",
      "tree": "74d3d63dca9fc982fcb7c165247d6924c021b4ef",
      "parents": [
        "c1475ca99edcc7216ddc45838ab2c3281c14ba22"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jun 10 10:21:38 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:39:27 2010 -0400"
      },
      "message": "mac80211: use RCU for RX aggregation\n\nCurrently we allocate some memory for each RX\naggregation session and additionally keep a\nflag indicating whether or not it is valid.\nBy using RCU to protect the pointer and making\nsure that the memory is fully set up before it\nbecomes visible to the RX path, we can remove\nthe need for the bool that indicates validity,\nas well as for locking on the RX path since it\nis always synchronised against itself, and we\ncan guarantee that all other modifications are\ndone when the structure is not visible to the\nRX path.\n\nThe net result is that since we remove locking\nrequirements from the RX path, we can in the\nfuture use any kind of lock for the setup and\nteardown code paths.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "c1475ca99edcc7216ddc45838ab2c3281c14ba22",
      "tree": "3f1a5fd9c2fce428382cf49e3140c281a49e006b",
      "parents": [
        "344eec67c7b8557234e149d254bca2ae9614d61e"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jun 10 10:21:37 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:39:27 2010 -0400"
      },
      "message": "mac80211: move aggregation callback processing\n\nThis moves the aggregation callback processing\nto the per-sdata skb queue and a work function\nrather than the tasklet.\n\nUnfortunately, this means that it extends the\npkt_type hack to that skb queue. However, it\nwill enable making ampdu_action API changes\ngradually, my current plan is to get rid of\nthis again by forcing drivers to only return\nfrom ampdu_action() when everything is done,\nthus removing the callbacks completely.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "344eec67c7b8557234e149d254bca2ae9614d61e",
      "tree": "a7243e1f8c67adf535be457b4ccccb212259f41c",
      "parents": [
        "bed7ee6e44cb7633a4f9821688a6c7ae977615ed"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jun 10 10:21:36 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:39:27 2010 -0400"
      },
      "message": "mac80211: move blockack stop due to fragmentation\n\nThere\u0027s a corner case where we receive a fragmented\nframe during a blockack session, in which case we\nwill terminate that session. To simplify future work\nin this area that will culminate in allowing the\ndriver callbacks for aggregation to sleep, move the\nprocessing of this case out of the RX path into the\ninterface work.\n\nThis will simplify future work because the new place\nfor this code doesn\u0027t require that the function will\nalways be atomic, which the RX path needs.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "bed7ee6e44cb7633a4f9821688a6c7ae977615ed",
      "tree": "0c4997408d74abbde021b11b6b1046d815524e15",
      "parents": [
        "77a121c3a88eb00a4b5e753d083dbb7d49fefb0a"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jun 10 10:21:35 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:39:26 2010 -0400"
      },
      "message": "mac80211: always process blockack action from workqueue\n\nTo prepare for making the ampdu_action callback\nsleep, make mac80211 always process blockack\naction frames from the skb queue. This gets rid\nof the current special case for managed mode\ninterfaces as well.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "77a121c3a88eb00a4b5e753d083dbb7d49fefb0a",
      "tree": "d1c802c9133a149094b484cd4796faeb9d7201fb",
      "parents": [
        "36b3a628a4e85d002ee8813ebd2a5caef6d3c1a7"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jun 10 10:21:34 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:39:26 2010 -0400"
      },
      "message": "mac80211: pull mgmt frame rx into rx handler\n\nSome code is duplicated between ibss, mesh and\nmanaged mode regarding the queueing of management\nframes. Since all modes now use a common skb\nqueue and a common work function, we can pull\nthe queueing code into the rx handler directly\nand remove the duplicated length checks etc.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "36b3a628a4e85d002ee8813ebd2a5caef6d3c1a7",
      "tree": "927219d1cf6ef466ec574c8172365fa1b37d53be",
      "parents": [
        "1fa57d017366fb26b58af110a38b36a4f0214a62"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jun 10 10:21:33 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:39:26 2010 -0400"
      },
      "message": "mac80211: common work skb freeing\n\nAll the management processing functions free the\nskb after they are done, so this can be done in\nthe new common code instead.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "1fa57d017366fb26b58af110a38b36a4f0214a62",
      "tree": "9bf7e82b3e429908498a70aa5c75c2af06b261b6",
      "parents": [
        "64592c8fc0e99d445fc3fdedddeb6088e20086f1"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jun 10 10:21:32 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:38:17 2010 -0400"
      },
      "message": "mac80211: use common work function\n\nEven with the previous patch, IBSS, managed\nand mesh modes all attach their own work\nfunction to the shared work struct, which\nmeans some duplicated code. Change that to\nonly have a frame processing function and a\nfurther work function for each of them and\nshare some common code.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "64592c8fc0e99d445fc3fdedddeb6088e20086f1",
      "tree": "2493358821abc4050b25f8a0bd813b763b188d38",
      "parents": [
        "35f20c14a103ca2c7062999e934a513b83d84de6"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jun 10 10:21:31 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:38:17 2010 -0400"
      },
      "message": "mac80211: use common work struct\n\nIBSS, managed and mesh modes all have their\nown work struct, and in the future we want\nto also use it in other modes to process\nframes from the now common skb queue.\n\nThis also makes the skb queue and work safe\nto use from other interface types.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "35f20c14a103ca2c7062999e934a513b83d84de6",
      "tree": "780e5dd272b685d7b82fdd849b886553d203c430",
      "parents": [
        "2a419056c15478d2df3f3e9d4fa64e34eb1faa7d"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jun 10 10:21:30 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:38:17 2010 -0400"
      },
      "message": "mac80211: use common skb queue\n\nIBSS, managed and mesh modes all have an\nskb queue, and in the future we want to\nalso use it in other modes, so make them\nall use a common skb queue already.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "2a419056c15478d2df3f3e9d4fa64e34eb1faa7d",
      "tree": "680342d6b883c18eec9003f2b93abd8ffd1e6ae6",
      "parents": [
        "9d38d85de0270e3927bffab94973a9c78d1dc800"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jun 10 10:21:29 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:38:16 2010 -0400"
      },
      "message": "mac80211: simplify station/aggregation code\n\nA number of places use RCU locking for accessing\nthe station list, even though they do not need\nto. Use mutex locking instead to prepare for the\nlocking changes I want to make. The mlme code is\nalso using a WLAN_STA_DISASSOC flag that has the\nsame meaning as WLAN_STA_BLOCK_BA, so use that.\n\nWhile doing so, combine places where we loop\nover stations twice, and optimise away some of\nthe loops by checking if the hardware supports\naggregation at all first.\n\nAlso fix a more theoretical race condition: right\nnow we could resume, set up an aggregation session,\nand right after tear it down again due to the code\nthat is needed for hardware reconfiguration here.\nAlso mark add a comment to that code marking it as\na workaround.\n\nFinally, remove a pointless aggregation disabling\nloop when an interface is stopped, directly after\nthat we remove all stations from it which will also\ndisable all aggregation sessions that may still be\nactive, and does so in a race-free way unlike the\ncurrent loop that doesn\u0027t block new sessions.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "9d38d85de0270e3927bffab94973a9c78d1dc800",
      "tree": "31bc0111445ce78e2c373954d3b0fbce7cbb63ba",
      "parents": [
        "aa9746af8fa26d28d442a7415c701eb5dfeb7a2a"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Wed Jun 09 17:20:33 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:38:16 2010 -0400"
      },
      "message": "cfg80211/mac80211: allow action frame TX/RX in IBSS\n\nWhen in IBSS mode, currently action frame TX and RX\ncannot be used. Allow using it to talk to any peer,\nor for public action frames. Also, while at it,\nrestructure the code in mac80211 to make it easier\nto add this for other interface types in the future.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "62522d36d74a843e78d17f2dffc90468c6762803",
      "tree": "d9d21de6724425c1b0ba12991e0865556aeda6b4",
      "parents": [
        "a71fba97295db924c0b90266e9833e5059fead24",
        "e79aa8671033535c2e9ffc0a68010ae49ed5734c"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 11 13:32:31 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 11 13:32:31 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "14599f1e341ee219abdd15f4eee5872d6f2d29f1",
      "tree": "3875181429010e58416ab34e6c06ef42de52e756",
      "parents": [
        "d8d1f30b95a635dbd610dcc5eb641aca8f4768cf",
        "832c10fd733893f86c63bde1c65b005d5a2fe346"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 11 11:34:06 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 11 11:34:06 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6\n\nConflicts:\n\tdrivers/net/wireless/wl12xx/wl1271.h\n\tdrivers/net/wireless/wl12xx/wl1271_cmd.h\n"
    },
    {
      "commit": "327723edebbbd621ed35b0d63073685eb225563e",
      "tree": "5983bf544284c4bd11028e198c937f86be358dc4",
      "parents": [
        "035320d54758e21227987e3aae0d46e7a04f4ddc",
        "b054b747a694927879c94dd11af54d04346aed7d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 09 11:13:23 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 09 11:13:23 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n"
    },
    {
      "commit": "b054b747a694927879c94dd11af54d04346aed7d",
      "tree": "91651e415fde622e53551286dd57279a4661e7cf",
      "parents": [
        "6db6340c42d027b6364d49fa99d69019aca24de4"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Mon Jun 07 21:50:07 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jun 08 14:41:54 2010 -0400"
      },
      "message": "mac80211: fix deauth before assoc\n\nWhen we receive a deauthentication frame before\nhaving successfully associated, we neither print\na message nor abort assocation. The former makes\nit hard to debug, while the latter later causes\na warning in cfg80211 when, as will typically be\nthe case, association timed out.\n\nThis warning was reported by many, e.g. in\nhttps://bugzilla.kernel.org/show_bug.cgi?id\u003d15981,\nbut I couldn\u0027t initially pinpoint it. I verified\nthe fix by hacking hostapd to send a deauth frame\ninstead of an association response.\n\nCc: stable@kernel.org\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nTested-by: Miles Lane \u003cmiles.lane@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "90b726097ba0dcc1f9725182513e669a30e77db5",
      "tree": "34e18b515c3f3d39b3f604ee2034441b85f23c3a",
      "parents": [
        "3cfd43f484c8d4bcb38db83f7be19fbd4ac8440c"
      ],
      "author": {
        "name": "Juuso Oikarinen",
        "email": "juuso.oikarinen@nokia.com",
        "time": "Mon Jun 07 10:52:12 2010 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jun 08 09:31:21 2010 -0400"
      },
      "message": "mac80211: Add netif state checking to ieee80211_ifa_changed\n\nThere\u0027s a window for ieee80211_ifa_changed() to get called whilst the\nmanaged mode mutex has not been initialized when opening and stopping the\ninterface. Currently this causes a kernel BUG like the following:\n\n[  132.460013] kernel BUG at /home/wifi/iwlwifi-2.6/net/mac80211/main.c:380!\n[  132.460013] invalid opcode: 0000 [#1] SMP\n\nThe mutex is initialized during open(), hence once netif_running() is true,\nthe mutex should be valid. Fix by adding a netif_running() check to the\nfunction.\n\nReported-by: Reinette Chatre \u003creinette.chatre@intel.com\u003e\nSigned-off-by: Juuso Oikarinen \u003cjuuso.oikarinen@nokia.com\u003e\nTested-by: Reinette Chatre \u003creinette.chatre@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "9d88477c41904127ab9ae1f3b5b4a39bf6474043",
      "tree": "f50d5185ac89a9fd76d7cb087b952d5c55d5063b",
      "parents": [
        "11b7c60988e5fbabb4e150612931cc068559af16",
        "35dd0509b21e4b5bab36b9eb80c8dab0322f5007"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 07 15:13:46 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 07 15:13:46 2010 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n\nConflicts:\n\tdrivers/net/wireless/iwlwifi/iwl-core.h\n"
    },
    {
      "commit": "11b7c60988e5fbabb4e150612931cc068559af16",
      "tree": "533364fe997071c4cab3f1ff44dcd9e496c6f55e",
      "parents": [
        "dc1dfe47445d45b3076ea940dda8f46a4b96e386"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 07 15:02:17 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 07 15:09:16 2010 -0400"
      },
      "message": "mac80211: fix lock leak w/ ARP filtering and w/o CONFIG_INET\n\n\"mac80211: make ARP filtering depend on CONFIG_INET\" introduced this\npotential locking leak.\n\nReported-by: Juuso Oikarinen \u003cjuuso.oikarinen@nokia.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "35dd0509b21e4b5bab36b9eb80c8dab0322f5007",
      "tree": "ff718895d1e443d2aa831fea2d579c547a3082f3",
      "parents": [
        "e500ae5b535a5209fd397fcc542e3b3290fc2fc5"
      ],
      "author": {
        "name": "Holger Schurig",
        "email": "holgerschurig@gmail.com",
        "time": "Mon Jun 07 16:33:49 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 07 14:44:40 2010 -0400"
      },
      "message": "mac80211: fix function pointer check\n\nThis makes \"iw wlan0 dump survey\" work again with\nmac80211-based drivers that support it, e.g. ath5k.\n\nSigned-off-by: Holger Schurig \u003cholgerschurig@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "eedc765ca4b19a41cf0b921a492ac08d640060d1",
      "tree": "95c566c6238cc953e1e336115d2daafe8bcb388f",
      "parents": [
        "e59d44df46edaafb6b637e98d046775524b31104",
        "024a07bacf8287a6ddfa83e9d5b951c5e8b4070e"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jun 06 17:42:02 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jun 06 17:42:02 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/sfc/net_driver.h\n\tdrivers/net/sfc/siena.c\n"
    },
    {
      "commit": "8b9a4e6e442756f670ef507f09bbc6c11dc0fca6",
      "tree": "bed171512423a88dda5125f76568d481acaaabb4",
      "parents": [
        "56bf882230d2266a2e07b7f404dc96d157a65daa"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri May 28 15:22:58 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jun 04 15:50:51 2010 -0400"
      },
      "message": "mac80211: process station blockack action frames from work\n\nProcessing an association response could take a bit\nof time while we set up the hardware etc. During that\ntime, the AP might already send a blockack request.\nIf this happens very quickly on a fairly slow machine,\nwe can end up processing the blockack request before\nthe association processing has finished. Since the\nblockack processing cannot sleep right now, we also\ncannot make it wait in the driver.\n\nAs a result, sometimes on slow machines the iwlagn\ndriver gets totally confused, and no traffic can pass\nwhen the aggregation setup was done before the assoc\nsetup completed.\n\nI\u0027m working on a proper fix for this, which involves\nqueuing all blockack category action frames from a\nwork struct, and also allowing the ampdu_action driver\ncallback to sleep, which will generally clean up the\ncode and make things easier.\n\nHowever, this is a very involved and complex change.\nTo fix the problem at hand in a way that can also be\nbackported to stable, I\u0027ve come up with this patch.\nHere, I simply process all aggregation action frames\nfrom the managed interface skb queue, which means\ntheir processing will be serialized with processing\nthe association response, thereby fixing the problem.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nCc: stable@kernel.org\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "38a6cc7538d3c44b76f9dcea607a171adcc0208e",
      "tree": "6e32157add4ba09c4a35c5ec6a2f4b3bce765268",
      "parents": [
        "abd984e6117e72e17073fd0a81a477e43b4580f5"
      ],
      "author": {
        "name": "Sujith",
        "email": "Sujith.Manoharan@atheros.com",
        "time": "Wed May 19 11:32:30 2010 +0530"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jun 04 15:32:25 2010 -0400"
      },
      "message": "mac80211: Remove deprecated sta_notify commands\n\nSTA_NOTIFY_ADD and STA_NOTIFY_REMOVE have no users anymore,\nand station addition/removal are indicated to drivers\nusing sta_add() and sta_remove(), which can sleep.\n\nSigned-off-by: Sujith \u003cSujith.Manoharan@atheros.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "26b36cfefaf2be98b225e3c1a399edb0daf52ddd",
      "tree": "6344512c5477ebc5d8b2d5862b6e2dc2ce5b865b",
      "parents": [
        "2826bcd844e05dcbef9b9284bddb7fe88e8d314f"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jun 04 14:25:44 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jun 04 14:25:44 2010 -0400"
      },
      "message": "mac80211: make ARP filtering depend on CONFIG_INET\n\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4f4aeb7fd0f7e6ca008bb2147ba36cee13876595",
      "tree": "48f77ea91413ac36fc6ce72bf15249da6586b04e",
      "parents": [
        "a1868dc2878e61778b9d6d8c61d5368e51d68a29",
        "51a0d38de26226f2779912d92f155b93d539da9a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 03 12:30:58 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 03 12:30:58 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n"
    },
    {
      "commit": "2826bcd844e05dcbef9b9284bddb7fe88e8d314f",
      "tree": "a95085b75ba4299c77571e024e37e84da54f9db3",
      "parents": [
        "84642d6bdde9164b7905fba03c0691a806788e0c"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Wed Jun 02 02:57:34 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jun 03 14:14:41 2010 -0400"
      },
      "message": "mac80211: reduce debugfs code size\n\nThis patch reduces the binary size by around 25k (measured on MIPS,\nwith CONFIG_MAC80211_DEBUG_COUNTERS enabled).\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ad0e2b5a00dbec303e4682b403bb6703d11dcdb2",
      "tree": "b7aeb06a284af0cfb4aa1de840592478b373f554",
      "parents": [
        "efe4c457a1d4e56840c42bf2e409dc04e8ad4304"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Tue Jun 01 10:19:19 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jun 03 14:10:46 2010 -0400"
      },
      "message": "mac80211: simplify key locking\n\nSince I recently made station management able\nto sleep, I can now rework key management as\nwell; since it will no longer need a spinlock\nand can also use a mutex instead, a bunch of\ncode to allow drivers\u0027 set_key to sleep while\nkey management is protected by a spinlock can\nnow be removed.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "fcea60070fe8fa48df579f155ec7bc20a868f7dc",
      "tree": "67472138256d8db1a1489e22a0c6a85f194fbe8e",
      "parents": [
        "08daecaead42b85b69b33d7d8429a93dfbf75b58"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Mon May 31 11:40:23 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jun 03 14:10:45 2010 -0400"
      },
      "message": "mac80211: move plink state\n\nFor some odd reason, the plink_state enum is\ndeclared in the middle between aggregation\nrelated structures. Move it down to make the\nfile easier to read.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "08daecaead42b85b69b33d7d8429a93dfbf75b58",
      "tree": "920dce6666547bcf07ae6aad203e162a8ada9411",
      "parents": [
        "e0961f112cd88176acc6d1af6ca6352f85cdf993"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sun May 30 14:53:43 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jun 03 14:10:45 2010 -0400"
      },
      "message": "mac80211: drop control frames after processing\n\nAfter ieee80211_rx_h_ctrl() processing we only\nwant to process management (including action)\nframes, so there\u0027s no point in letting control\nframes continue.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e0961f112cd88176acc6d1af6ca6352f85cdf993",
      "tree": "084acde7dd4f3ca8b3a27dd8de03191ef8a97450",
      "parents": [
        "761ab470364b550c9b1a5e1e31be51d415aaf42b"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri May 28 14:48:52 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jun 03 14:10:45 2010 -0400"
      },
      "message": "mac80211: remove useless work starting\n\nEver since we use only cfg80211 for configuration,\nthere is no configuration that could be pending at\nthis point, cfg80211 will have the configuration\nthat is pending and apply it afterwards.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    }
  ],
  "next": "761ab470364b550c9b1a5e1e31be51d415aaf42b"
}
