)]}'
{
  "log": [
    {
      "commit": "b67afe7f43afd2f5cd98798993561920c1684c12",
      "tree": "e45a0e41c91a1d199fd865b011ed0d25f5497bb9",
      "parents": [
        "db28569adc692d9fb8a2d2d8e7ebab7fd5481f10",
        "28bec7b845e10b68e6ba1ade5de0fc566690fc61"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Feb 18 17:03:41 2011 -0500"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Feb 18 17:03:41 2011 -0500"
      },
      "message": "Merge ssh://master.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n\nConflicts:\n\tdrivers/bluetooth/ath3k.c\n\tdrivers/bluetooth/btusb.c\n"
    },
    {
      "commit": "8ba0537c620ad9f37b0e810ce0a9ff367a021f5e",
      "tree": "659622a8cd43642ca6438ec6a7a3e68e82d23efd",
      "parents": [
        "9bf8ab35f269d66e507de2b1ccc67a02d8284db5"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Wed Feb 16 08:46:58 2011 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Feb 18 16:54:52 2011 -0500"
      },
      "message": "mac80211: fix 2.4 GHz 40 MHz disabling\n\nThe module parameter ieee80211_disable_40mhz_24ghz\nwas meant to allow disabling 40 MHz operation in\nthe 2.4 GHz band by default. However, it is buggy\nas implemented because while it advertises to the\nAP that the device doesn\u0027t support 40 MHz, it will\nitself still use 40 MHz configurations.\n\nTo fix this, clear the 40 MHz bits from the sband\ncompletely instead of overriding where used.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a7b545f7fe753ca3dc1b51ca57f90cd59d974e44",
      "tree": "7eab351da83338f3edb161b4cfe8f9b30d48a7a2",
      "parents": [
        "c91d01556f52255a31575be0cb1981c92a2a5028"
      ],
      "author": {
        "name": "Eliad Peller",
        "email": "eliad@wizery.com",
        "time": "Tue Feb 08 18:43:19 2011 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Feb 09 15:35:13 2011 -0500"
      },
      "message": "mac80211: add missing locking in ieee80211_reconfig\n\nWhen suspending an associated system, and then resuming,\nthe station vif is being reconfigured without taking the\nsdata-\u003eu.mgd.mtx lock, which results in the following warning:\n\nWARNING: at net/mac80211/mlme.c:101 ieee80211_ap_probereq_get+0x58/0xb8 [mac80211]()\nModules linked in: wl12xx_sdio wl12xx firmware_class crc7 mac80211 cfg80211 [last unloaded: crc7]\nBacktrace:\n[\u003cc005432c\u003e] (dump_backtrace+0x0/0x118) from [\u003cc0376e28\u003e] (dump_stack+0x20/0x24)\n r7:00000000 r6:bf12d6ec r5:bf154aac r4:00000065\n[\u003cc0376e08\u003e] (dump_stack+0x0/0x24) from [\u003cc0079104\u003e] (warn_slowpath_common+0x5c/0x74)\n[\u003cc00790a8\u003e] (warn_slowpath_common+0x0/0x74) from [\u003cc0079148\u003e] (warn_slowpath_null+0x2c/0x34)\n r9:000024ff r8:cd006460 r7:00000001 r6:00000000 r5:00000000\nr4:cf1394a0\n[\u003cc007911c\u003e] (warn_slowpath_null+0x0/0x34) from [\u003cbf12d6ec\u003e] (ieee80211_ap_probereq_get+0x58/0xb8 [mac80211])\n[\u003cbf12d694\u003e] (ieee80211_ap_probereq_get+0x0/0xb8 [mac80211]) from [\u003cbf19cd04\u003e] (wl1271_cmd_build_ap_probe_req+0x30/0xf8 [wl12xx])\n r4:cd007440\n[\u003cbf19ccd4\u003e] (wl1271_cmd_build_ap_probe_req+0x0/0xf8 [wl12xx]) from [\u003cbf1995f4\u003e] (wl1271_op_bss_info_changed+0x4c4/0x808 [wl12xx])\n r5:cd007440 r4:000003b4\n[\u003cbf199130\u003e] (wl1271_op_bss_info_changed+0x0/0x808 [wl12xx]) from [\u003cbf122168\u003e] (ieee80211_bss_info_change_notify+0x1a4/0x1f8 [mac80211])\n[\u003cbf121fc4\u003e] (ieee80211_bss_info_change_notify+0x0/0x1f8 [mac80211]) from [\u003cbf141e80\u003e] (ieee80211_reconfig+0x4d0/0x668 [mac80211])\n r8:cf0eeea4 r7:cd00671c r6:00000000 r5:cd006460 r4:cf1394a0\n[\u003cbf1419b0\u003e] (ieee80211_reconfig+0x0/0x668 [mac80211]) from [\u003cbf137dd4\u003e] (ieee80211_resume+0x60/0x70 [mac80211])\n[\u003cbf137d74\u003e] (ieee80211_resume+0x0/0x70 [mac80211]) from [\u003cbf0eb930\u003e] (wiphy_resume+0x6c/0x7c [cfg80211])\n r5:cd006248 r4:cd006110\n[\u003cbf0eb8c4\u003e] (wiphy_resume+0x0/0x7c [cfg80211]) from [\u003cc0241024\u003e] (legacy_resume+0x38/0x70)\n r7:00000000 r6:00000000 r5:cd006248 r4:cd0062fc\n[\u003cc0240fec\u003e] (legacy_resume+0x0/0x70) from [\u003cc0241478\u003e] (device_resume+0x168/0x1a0)\n r8:c04ca8d8 r7:cd00627c r6:00000010 r5:cd006248 r4:cd0062fc\n[\u003cc0241310\u003e] (device_resume+0x0/0x1a0) from [\u003cc0241600\u003e] (dpm_resume_end+0xf8/0x3bc)\n r7:00000000 r6:00000005 r5:cd006248 r4:cd0062fc\n[\u003cc0241508\u003e] (dpm_resume_end+0x0/0x3bc) from [\u003cc00b2a24\u003e] (suspend_devices_and_enter+0x1b0/0x204)\n[\u003cc00b2874\u003e] (suspend_devices_and_enter+0x0/0x204) from [\u003cc00b2b68\u003e] (enter_state+0xf0/0x148)\n r7:c037e978 r6:00000003 r5:c043d807 r4:00000000\n[\u003cc00b2a78\u003e] (enter_state+0x0/0x148) from [\u003cc00b20a4\u003e] (state_store+0xa4/0xcc)\n r7:c037e978 r6:00000003 r5:00000003 r4:c043d807\n[\u003cc00b2000\u003e] (state_store+0x0/0xcc) from [\u003cc01fc90c\u003e] (kobj_attr_store+0x20/0x24)\n[\u003cc01fc8ec\u003e] (kobj_attr_store+0x0/0x24) from [\u003cc0157120\u003e] (sysfs_write_file+0x11c/0x150)\n[\u003cc0157004\u003e] (sysfs_write_file+0x0/0x150) from [\u003cc0100f84\u003e] (vfs_write+0xc0/0x14c)\n[\u003cc0100ec4\u003e] (vfs_write+0x0/0x14c) from [\u003cc01010e4\u003e] (sys_write+0x4c/0x78)\n r8:40126000 r7:00000004 r6:cf1a7c80 r5:00000000 r4:00000000\n[\u003cc0101098\u003e] (sys_write+0x0/0x78) from [\u003cc00500c0\u003e] (ret_fast_syscall+0x0/0x30)\n r8:c00502c8 r7:00000004 r6:403525e8 r5:40126000 r4:00000004\n\nSigned-off-by: Eliad Peller \u003celiad@wizery.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "67408c8c7b9daf28b50e33be3541334c07d15789",
      "tree": "ac11ea966add7f7187274fcf9e647c5227099108",
      "parents": [
        "e1e5406854378dfada3f33c7192b012083a5b8e0"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Tue Nov 30 08:59:23 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Dec 22 14:33:37 2010 -0500"
      },
      "message": "mac80211: selective throughput LED trigger active\n\nThe throughput LED trigger was always active when\nthe radio was enabled. In most cases that\u0027s likely\nthe desired behaviour, but iwlwifi requires it to\nbe only active when one of the virtual interfaces\nis actually \"connected\" in some way.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e1e5406854378dfada3f33c7192b012083a5b8e0",
      "tree": "e878058f28b8f6db50ef5d73d09aed66dd9ad9f2",
      "parents": [
        "fe67c913f1ec2a01aaa9176c80ef36eaf87d705d"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Tue Nov 30 08:58:45 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Dec 22 14:33:37 2010 -0500"
      },
      "message": "mac80211: add throughput based LED blink trigger\n\niwlwifi and other drivers like to blink their LED\nbased on throughput. Implement this generically in\nmac80211, based on a throughput table the driver\nspecifies. That way, drivers can set the blink\nfrequencies depending on their desired behaviour\nand max throughput.\n\nAll the drivers need to do is provide an LED class\ndevice, best with blink hardware offload.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "50a9432daeece6fc1309bef1dc0a7b8fde8204cb",
      "tree": "11b8bdf724dd9951391ea7f963e6539ca86ea4b6",
      "parents": [
        "4bce22b9b84032c77c7e038b07b24fcc706dfc10"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Tue Nov 16 11:50:28 2010 -0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Nov 17 16:19:33 2010 -0500"
      },
      "message": "mac80211: fix powersaving clients races\n\nThe code to handle powersaving stations has a race:\nwhen the powersave flag is lifted from a station,\nwe could transmit a packet that is being processed\nfor TX at the same time right away, even if there\nare other frames queued for it. This would cause\nframe reordering. To fix this, lift the flag only\nunder the appropriate lock that blocks TX.\n\nAdditionally, the code to allow drivers to block a\nstation while frames for it are on the HW queue is\nnever re-enabled the station, so traffic would get\nstuck indefinitely. Fix this by clearing the flag\nfor this appropriately.\n\nFinally, as an optimisation, don\u0027t do anything if\nthe driver unblocks an already unblocked station.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a619a4c0e1fd4e8c360c63d0df3fa0a401107d69",
      "tree": "c9eb89d30834140f252c77bdf578528b11716678",
      "parents": [
        "4e8c14e9587c38f4cce8049c766935629fdb8d46"
      ],
      "author": {
        "name": "Juuso Oikarinen",
        "email": "juuso.oikarinen@nokia.com",
        "time": "Thu Nov 11 08:50:18 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Nov 16 16:37:08 2010 -0500"
      },
      "message": "mac80211: Add function to get probe request template for current AP\n\nChipsets with hardware based connection monitoring need to autonomically\nsend directed probe-request frames to the AP (in the event of beacon loss,\nfor example.)\n\nFor the hardware to be able to do this, it requires a template for the frame\nto transmit to the AP, filled in with the BSSID and SSID of the AP, but also\nthe supported rate IE\u0027s.\n\nThis patch adds a function to mac80211, which allows the hardware driver to\nfetch this template after association, so it can be configured to the hardware.\n\nSigned-off-by: Juuso Oikarinen \u003cjuuso.oikarinen@nokia.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f23a478075659db8a4fd62fa6e264a8bb052cc5b",
      "tree": "ba1492a4a781770644359b88e8ca2d8d3a00adc2",
      "parents": [
        "ca4a0831917d6541b45f03542257fcb20dc9cf4a"
      ],
      "author": {
        "name": "Arik Nemtsov",
        "email": "arik@wizery.com",
        "time": "Mon Nov 08 11:51:06 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Nov 16 16:37:04 2010 -0500"
      },
      "message": "mac80211: support hardware TX fragmentation offload\n\nThe lower driver is notified when the fragmentation threshold changes\nand upon a reconfig of the interface.\n\nIf the driver supports hardware TX fragmentation, don\u0027t fragment\npackets in the stack.\n\nSigned-off-by: Arik Nemtsov \u003carik@wizery.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "53f73c09d64f1fa7d7e6e8b6bb7468d42eddc92d",
      "tree": "a9284928f65ad33b3cbef9625871bb0c0116f875",
      "parents": [
        "845d708e62f08a45ff716fdb270c52585cad31d0"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Tue Oct 05 19:37:40 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Oct 06 16:30:40 2010 -0400"
      },
      "message": "mac80211: avoid transmitting delBA to old AP\n\nWhen roaming while we have active BA session,\nwe can end up transmitting delBA frames to\nthe old AP while we\u0027re already on the new AP\u0027s\nchannel, which can cause warnings.\n\nSimply avoid sending those frames, but still\ntear down the internal session state, since\nthey are not really necessary anyway as we\nwill implicitly disassociate when sending the\nassociation to the new AP.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nAcked-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "025e6be220e448c02045e8499c7db8ce4bc8eea2",
      "tree": "0b28807104e80926d33eec8634dd94c5561e64ab",
      "parents": [
        "6774889314ba507483e63c014fcb81adfc127202"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Tue Oct 05 10:41:47 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 05 13:37:51 2010 -0400"
      },
      "message": "mac80211: fix deadlock with multiple interfaces\n\nThe locking around ieee80211_recalc_smps is\nbuggy -- it cannot acquire another interface\u0027s\nmutex while the iflist mutex is held because\nanother code path could be holding the iface\nmutex and trying to acquire the iflist mutex.\n\nBut the locking is also unnecessary, we only\ncheck \"ifmgd-\u003eassociated\" as a bool, and don\u0027t\nuse the pointer (in check_mgd_smps).\n\nReported-by: Ben Greear \u003cgreearb@candelatech.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "651b52254fc061f02d965524e71de4333a009a5a",
      "tree": "5eb085461cc417ca32fe7a8a13f52b231030be86",
      "parents": [
        "8dcb20038ade81f9a87c024e7f12ec74f0e95f33"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "j@w1.fi",
        "time": "Sat Aug 28 19:37:51 2010 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Sep 24 15:54:28 2010 -0400"
      },
      "message": "mac80211: Add DS Parameter Set into Probe Request on 2.4 GHz\n\nIEEE Std 802.11k-2008 added DS Parameter Set information element into\nProbe Request frames as an optional information on 2.4 GHz band (and\nmandatory, if radio measurements are enabled). This allows APs to\nfilter out Probe Request frames that may be received from neighboring\noverlapping channels and by doing so, reduce the number of unnecessary\nframes in the air. Make mac80211 add this IE into Probe Request frames\nwhenever the channel is known (i.e., whenever hwscan is not used).\n\nSigned-off-by: Jouni Malinen \u003cj@w1.fi\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8dcb20038ade81f9a87c024e7f12ec74f0e95f33",
      "tree": "fe970ab661be7ec61165bdcb5db2c4422a1822fd",
      "parents": [
        "29ad2facd47f8e37eab8b156e2c384fa181c8b4a"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "j@w1.fi",
        "time": "Sat Aug 28 19:36:10 2010 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Sep 24 15:54:27 2010 -0400"
      },
      "message": "mac80211: Filter ProbeReq SuppRates based on TX rate mask\n\nIf the TX rate set has been masked, the removed rates can also be\nremoved from the Supported Rates and Extended Supported Rates IEs in\nProbe Request frames.\n\nSigned-off-by: Jouni Malinen \u003cj@w1.fi\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "2ca27bcff7127da1aa7dd39cd2a6f7cb187e327f",
      "tree": "fae1b81c56763a53d432310b8fcbb81b9bb48d7e",
      "parents": [
        "074ac8df9f93f2a35a356d92fd7f16cd846f0a03"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Sep 16 14:58:23 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Sep 16 15:46:07 2010 -0400"
      },
      "message": "mac80211: add p2p device type support\n\nWhen a driver advertises p2p device support,\nmac80211 will handle it, but internally it will\nrewrite the interface type to STA/AP rather than\nP2P-STA/GO since otherwise a lot of paths need\nto be touched that are otherwise identical. A\np2p boolean tells drivers whether or not a given\ninterface will be used for p2p or not.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "46a5ebaf02d69e26ee0f47a0b8d2d9bc619240d4",
      "tree": "77bc5ceee61ce125c4b608d7b979bf8d033ffdcc",
      "parents": [
        "f5521b13880f4f4f612e1d20dd4f565122d16e04"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Wed Sep 15 13:28:15 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Sep 16 15:46:00 2010 -0400"
      },
      "message": "cfg80211/mac80211: use lockdep_assert_held\n\nInstead of using a WARN_ON(!mutex_is_locked())\nuse lockdep_assert_held() which compiles away\ncompletely when lockdep isn\u0027t enabled, and\nalso is a more accurate assertion since it\nchecks that the current thread is holding the\nmutex.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5b714c6a3753dad0798a70a049e15c7f6bc9446b",
      "tree": "39345981014b14e881cbfbef87a4a3a74469fada",
      "parents": [
        "c35d02705e9c2db90a89b29142046b4ffd5a76e5"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Aug 27 13:45:28 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 27 13:53:31 2010 -0400"
      },
      "message": "mac80211: fix offchannel queue stop\n\nSomebody noticed this problem, and I outlined\nto them how to fix it, but haven\u0027t heard back\nfrom them. So while I was adding the state\nfield I figured I could use it to fix it.\n\nThe problem, as I understand it, is that when\nwe go offchannel while the driver has a queue\nstopped, the driver will likely start draining\nthe queue and then enable it while offchannel.\nThis in turn will enable the interface queue,\nand that leads to transmitting data frames on\nthe wrong channel.\n\nFix this by keeping track of offchannel status\nper interface, and not enabling the interface\nqueues on interfaces that are offchannel when\nthe driver enables a queue.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "26a58456be40d8181b884eb5b4e61e3f73ba94e0",
      "tree": "d3284dcba4f286d1f666b1efca136c018791e692",
      "parents": [
        "b9dcf712d1fb98bf279fcd453a42a763b104961d"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Aug 27 12:35:55 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 27 13:53:30 2010 -0400"
      },
      "message": "mac80211: switch to ieee80211_sdata_running\n\nSince the introduction of ieee80211_sdata_running(),\nsome new code was introduced that uses netif_running()\ninstead. Switch all these instances over.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "2337db8db845ece2d4ab7673a343e285f1bfda85",
      "tree": "ec1a3c806b8638c08caf8acef1b9d411e1e612fd",
      "parents": [
        "a621fa4d6a7fdf9d34938d2e129a72624833eeeb"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Aug 27 13:36:49 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 27 13:27:08 2010 -0400"
      },
      "message": "mac80211: use subqueue helpers\n\nThere are subqueue helpers so that we don\u0027t\nneed to get the TX queue and then wake/stop\nit, use those helpers.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "2e161f78e5f63a7f9fd25a766bb7f816a01eb14a",
      "tree": "befd44feeb1f47da1f41e6fc310a223ad67030ff",
      "parents": [
        "ac4c977d16d843f12901595c91773dddb65768a9"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Aug 12 15:38:38 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Aug 24 16:27:56 2010 -0400"
      },
      "message": "cfg80211/mac80211: extensible frame processing\n\nAllow userspace to register for more than just\naction frames by giving the frame subtype, and\nmake it possible to use this in various modes\nas well.\n\nWith some tweaks and some added functionality\nthis will, in the future, also be usable in AP\nmode and be able to replace the cooked monitor\ninterface currently used in that case.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\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": "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": "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": "ac8dd506e40ee2c7fcc61654a44c32555a0a8d6c",
      "tree": "d0c673f9002d453af211a3fc25705ed3f8ab219d",
      "parents": [
        "bac6fafd4d6a0af26aeb37277a39607f7ce0be77"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed May 05 09:44:02 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri May 07 14:55:49 2010 -0400"
      },
      "message": "mac80211: fix BSS info reconfiguration\n\nWhen reconfiguring an interface due to a previous\nhardware restart, mac80211 will currently include\nthe new IBSS flag on non-IBSS interfaces which may\nconfuse drivers.\n\nInstead of doing the ~0 trick, simply spell out\nwhich things are going to be reconfigured.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "b5878a2dc5e7e7f031a52c3e15b571224cb6b540",
      "tree": "4d035602f4a4d6e021eaf261f3665d4a5439cfd8",
      "parents": [
        "403820edc4ba1f2fb2514c022f2662c498ce0d11"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Apr 07 16:48:40 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Apr 08 15:24:13 2010 -0400"
      },
      "message": "mac80211: enhance tracing\n\nEnhance tracing by adding tracing for a variety of\ncallbacks that the drivers call, and also for\ninternal calls (currently limited to queue status).\nThis can aid debugging what is going on in mac80211\nin interaction with drivers, since we can now see\nwhat drivers call and not just what mac80211 calls\nin the driver.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "0f2df9eac70423838a1f8d410fd3899ddd88317b",
      "tree": "0617f723320d83eca5cef9c964c001014e74213f",
      "parents": [
        "8c11e4ab09ffb975a89802dde0e9aa52a53b8aa5",
        "1144601118507f8b3b676a9a392584d216d3f2cc"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Apr 08 13:34:54 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Apr 08 13:34:54 2010 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 into merge\n\nConflicts:\n\tDocumentation/feature-removal-schedule.txt\n\tdrivers/net/wireless/ath/ath5k/phy.c\n\tdrivers/net/wireless/iwlwifi/iwl-4965.c\n\tdrivers/net/wireless/iwlwifi/iwl-agn.c\n\tdrivers/net/wireless/iwlwifi/iwl-core.c\n\tdrivers/net/wireless/iwlwifi/iwl-core.h\n\tdrivers/net/wireless/iwlwifi/iwl-tx.c\n"
    },
    {
      "commit": "618f356b95e37ca0c30b3b513898fda54abd52a6",
      "tree": "950d67d39fa3e6b70a5cbf593b85f53416fa051e",
      "parents": [
        "66b0470aeef10a3b0f9a6a1c60d908b5a06c62ae"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Apr 06 11:18:46 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Apr 07 14:38:04 2010 -0400"
      },
      "message": "mac80211: rename WLAN_STA_SUSPEND to WLAN_STA_BLOCK_BA\n\nI want to use it during station destruction as well\nso rename it to WLAN_STA_BLOCK_BA which is also the\nonly use of it now.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e1b3ec1a2a336c328c336cfa5485a5f0484cc90d",
      "tree": "9a71f61f773231fd439220bec60977f45e1ef65f",
      "parents": [
        "ecdf94b81237d272b1514b76f27a5d22782bcaa6"
      ],
      "author": {
        "name": "Stanislaw Gruszka",
        "email": "sgruszka@redhat.com",
        "time": "Mon Mar 29 12:18:34 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Mar 31 14:43:59 2010 -0400"
      },
      "message": "mac80211: explicitly disable/enable QoS\n\nAdd interface to disable/enable QoS (aka WMM or WME). Currently drivers\nenable it explicitly when -\u003econf_tx method is called, and newer disable.\nDisabling is needed for some APs, which do not support QoS, such\nwe should send QoS frames to them.\n\nSigned-off-by: Stanislaw Gruszka \u003csgruszka@redhat.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "7236fe29fd72d17074574ba312e7f1bb9d10abaa",
      "tree": "6afd1fed2871daca52f5a8b3070337ae1b6ada0d",
      "parents": [
        "05a9a1617026977422c7c5ed3aeac6f46fa2132c"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Mon Mar 22 13:42:43 2010 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Mar 30 15:37:28 2010 -0400"
      },
      "message": "mac80211: move netdev queue enabling to correct spot\n\n\"mac80211: fix skb buffering issue\" still left a race\nbetween enabling the hardware queues and the virtual\ninterface queues. In hindsight it\u0027s totally obvious\nthat enabling the netdev queues for a hardware queue\nwhen the hardware queue is enabled is wrong, because\nit could well possible that we can fill the hw queue\nwith packets we already have pending. Thus, we must\nonly enable the netdev queues once all the pending\npackets have been processed and sent off to the device.\n\nIn testing, I haven\u0027t been able to trigger this race\ncondition, but it\u0027s clearly there, possibly only when\naggregation is being enabled.\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": "c7a00dc73b7185ab2ebd1aa7ce710c7b4edc77a4",
      "tree": "9eadd919277988355b44c2a63e9d027fe81cfd2a",
      "parents": [
        "368d06f5b0eefcbf37d677d3b65381310a251f03"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Mar 17 11:28:18 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Mar 30 15:37:22 2010 -0400"
      },
      "message": "mac80211: correct typos in \"unavailable upon resume\" warning\n\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "74e2bd1fa3ae9695af566ad5a7a288898787b909",
      "tree": "25b0c76fb983cef091fe3a02fe27ab2891b0efb8",
      "parents": [
        "3f7c5c10e9dc6bf90179eb9f7c06151d508fb324"
      ],
      "author": {
        "name": "Wey-Yi Guy",
        "email": "wey-yi.w.guy@intel.com",
        "time": "Wed Feb 03 09:28:55 2010 -0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Feb 08 16:50:54 2010 -0500"
      },
      "message": "mac80211: tear down all agg queues when restart/reconfig hw\n\nWhen there is a need to restart/reconfig hw, tear down all the\naggregation queues and let the mac80211 and driver get in-sync to have\nthe opportunity to re-establish the aggregation queues again.\n\nNeed to wait until driver re-establish all the station information before tear\ndown the aggregation queues, driver(at least iwlwifi driver) will reject the\nstop aggregation queue request if station is not ready. But also need to make\nsure the aggregation queues are tear down before waking up the queues, so\nmac80211 will not sending frames with aggregation bit set.\n\nSigned-off-by: Wey-Yi Guy \u003cwey-yi.w.guy@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "34e895075e21be3e21e71d6317440d1ee7969ad0",
      "tree": "217fe70e32e54ef0134f477510472f3992655d79",
      "parents": [
        "070bb5477fb4029131aad4941d7aaf0093db0c38"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Feb 03 13:59:58 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Feb 08 16:50:53 2010 -0500"
      },
      "message": "mac80211: allow station add/remove to sleep\n\nMany drivers would like to sleep during station\naddition and removal, and currently have a high\ncomplexity there from not being able to.\n\nThis introduces two new callbacks sta_add() and\nsta_remove() that drivers can implement instead\nof using sta_notify() and that can sleep, and\nthe new sta_add() callback is also allowed to\nfail.\n\nThe reason we didn\u0027t do this previously is that\nthe IBSS code wants to insert stations from the\nRX path, which is a tasklet, so cannot sleep.\nThis patch will keep the station allocation in\nthat path, but moves adding the station to the\ndriver out of line. Since the addition can now\nfail, we can have IBSS peer structs the driver\nrejected -- in that case we still talk to the\nstation but never tell the driver about it in\nthe control.sta pointer. If there will ever be\na driver that has a low limit on the number of\nstations and that cannot talk to any stations\nthat are not known to it, we need to do come up\nwith a new strategy of handling larger IBSSs,\nmaybe quicker expiry or rejecting peers.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "145b6d1a56f224d15c61aa7ecfda9a1171b47b6a",
      "tree": "748dacf833dfe08f64536ad2b27abf412645f38b",
      "parents": [
        "43d3534344bbdcfa9c61a6b38490cd4cbb2f6bb6"
      ],
      "author": {
        "name": "Ming Lei",
        "email": "tom.leiming@gmail.com",
        "time": "Fri Jan 15 21:44:21 2010 +0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jan 15 17:02:08 2010 -0500"
      },
      "message": "mac80211: fix memory leak in ieee80211_send_probe_req\n\nThis patch fixes memory leak in ieee80211_send_probe_req, which\nis introduced in 7c12ce8b854df346388ea56d684784e3484012cf:\n\n\tmac80211: use Probe Request template when sending a direct scan\n\nThe patch is against the latest wireless-test tree.\n\nSigned-off-by: Ming Lei \u003ctom.leiming@gmail.com\u003e\nReviewed-by: Kalle Valo \u003ckalle.valo@nokia.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ab13315af97919fae0e014748105fdc2e30afb2d",
      "tree": "befa549272ecff20b2839bd6671e4cccbce448f9",
      "parents": [
        "2d46d7c121436f1dafe91b0a8d9b99e534cfa5f8"
      ],
      "author": {
        "name": "Kalle Valo",
        "email": "kalle.valo@nokia.com",
        "time": "Tue Jan 12 10:42:31 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jan 12 14:20:58 2010 -0500"
      },
      "message": "mac80211: add U-APSD client support\n\nAdd Unscheduled Automatic Power-Save Delivery (U-APSD) client support. The\nidea is that the data frames from the client trigger AP to send the buffered\nframes with ACs which have U-APSD enabled. This decreases latency and makes it\npossible to save even more power.\n\nDriver needs to use IEEE80211_HW_UAPSD to enable the feature. The current\nimplementation assumes that firmware takes care of the wakeup and\nhardware needing IEEE80211_HW_PS_NULLFUNC_STACK is not yet supported.\n\nTested with wl1251 on a Nokia N900 and Cisco Aironet 1231G AP and running\nvarious test traffic with ping.\n\nSigned-off-by: Kalle Valo \u003ckalle.valo@nokia.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "678f415fdc534c0a806fce992e4c62df0eff19d2",
      "tree": "b3313257eca6f22d0ffdb65949c5b22e9c19fbe6",
      "parents": [
        "5e124bd5e00fcf54df555b368c2dafe6886f1df2"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Sun Jan 10 14:07:53 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jan 12 14:20:56 2010 -0500"
      },
      "message": "mac80211: flush workqueue before calling driver -\u003estop() method\n\nSince commit \"mwl8k: handle station database update for AP\u0027s sta entry\nvia -\u003esta_notify()\", mwl8k every now and then gets a command timeout\nwhen ifconfig\u0027ing a STA interface down.  This turns out to be due to\nmwl8k_stop() being called while the work queue item that was scheduled\nby mwl8k_sta_notify() to remove the STA entry for the associated AP is\nstill queued, and the former disables interrupts so that when the\nlatter eventually runs, a command completion interrupt is never seen.\n\nFix this by changing ieee80211_stop_device() so that the workqueue is\nflushed before drv_stop() is called, instead of doing it the other way\naround as is done now.  (As -\u003estop() is allowed to sleep, there isn\u0027t\nany reason for drivers to queue work from within it.)\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "7c12ce8b854df346388ea56d684784e3484012cf",
      "tree": "28dd1f0e0b2e4388cdc5bf5cd68eb37844cda7f4",
      "parents": [
        "05e54ea6cce400ac34528d705179b45244f61074"
      ],
      "author": {
        "name": "Kalle Valo",
        "email": "kalle.valo@nokia.com",
        "time": "Tue Jan 05 20:16:44 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jan 12 13:51:25 2010 -0500"
      },
      "message": "mac80211: use Probe Request template when sending a direct scan\n\nAs mac80211 now has a separate function for creating Probe Request templates,\nbetter to use it when sending direct Probe Requests to an AP. Only the\nbssid needs to be updated in the template before sending it.\n\nSigned-off-by: Kalle Valo \u003ckalle.valo@nokia.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4f9b2a7dea2bf1dd81f280aa5e8a40ed910d2f0a",
      "tree": "52046049957a87103a383869155f43461963f089",
      "parents": [
        "f3f66b69c8ff08b46975d9e99c7ecb92a8b12eda",
        "7a4a77b7771164d61ce702a588067d1e1d66db7c"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jan 05 17:18:59 2010 -0500"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jan 05 17:18:59 2010 -0500"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n\nConflicts:\n\tnet/mac80211/iface.c\n"
    },
    {
      "commit": "29401f6630c02ce996561bf2667d84ecdfacb823",
      "tree": "7d890d1132403b711e34759fc99e192c43d3f660",
      "parents": [
        "61b91c1ea31d0d3ae5f848f7f7eab53dd691f8d0"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "jouni.malinen@atheros.com",
        "time": "Tue Dec 29 12:43:58 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jan 05 17:13:13 2010 -0500"
      },
      "message": "mac80211: No need to include WEXT headers here\n\nRemove the forgotten linux/wireless.h inclusion from mac80211.\n\nSigned-off-by: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "cf0277e714a0db302a8f80e1b85fd61c32cf00b3",
      "tree": "b81c34eabc2560b804cfd59497ca2902f0d47a80",
      "parents": [
        "301a8234ea81938f0f083ae4e274d9c9296f3c86"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jan 05 18:00:58 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jan 05 16:21:40 2010 -0500"
      },
      "message": "mac80211: fix skb buffering issue\n\nSince I removed the master netdev, we\u0027ve been\nkeeping internal queues only, and even before\nthat we never told the networking stack above\nthe virtual interfaces about congestion. This\nmeans that packets are queued in mac80211 and\nthe upper layers never know, possibly leading\nto memory exhaustion and other problems.\n\nThis patch makes all interfaces multiqueue and\nuses ndo_select_queue to put the packets into\nqueues per AC. Additionally, when the driver\nstops a queue, we now stop all corresponding\nqueues for the virtual interfaces as well.\n\nThe injection case will use VO by default for\nnon-data frames, and BE for data frames, but\ndowngrade any data frames according to ACM. It\nneeds to be fleshed out in the future to allow\nchosing the queue/AC in radiotap.\n\nReported-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nCc: stable@kernel.org [2.6.32]\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e5eb8bd9429ebd04cf906156d1fe40b52f88e82f",
      "tree": "4212042b42a265fdefbdb22d7e1d7a00af6b998f",
      "parents": [
        "51633632ef614ef045f25d76fc7f0133d7cc60c6"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jan 04 15:58:03 2010 -0500"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jan 04 15:58:03 2010 -0500"
      },
      "message": "mac80211: fix typo added by \"mac80211: fix propagation of failed...\"\n\n\u0027Typo: it\u0027s \"Hardware\", not \"Harware\". Hmm, sometimes it\u0027s hairware :-)\"\u0027\n\t-- Holger Schurig\n\nReported-by: Holger Schurig \u003cholgerschurig@googlemail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "891dc5e73783eeabd2a704a9425e2a199b39c9f9",
      "tree": "9b4478941c486d47a71bfce455b896c5dda7e811",
      "parents": [
        "e1781ed33a8809c58ad6c3b6d432d656446efa43",
        "55afc80b2ab100618c17af77915f75307b6bd5d1"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Dec 30 15:25:08 2009 -0500"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Dec 30 15:25:08 2009 -0500"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n\nConflicts:\n\tdrivers/net/wireless/libertas/scan.c\n"
    },
    {
      "commit": "1ed32e4fc8cfc9656cc1101e7f9617d485fcbe7b",
      "tree": "81697637a36eb4776df39c81a77a9e09ec951a1a",
      "parents": [
        "98b6218388e345064c3f2d3c161383a18274c638"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Dec 23 13:15:45 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Dec 28 16:55:07 2009 -0500"
      },
      "message": "mac80211: remove struct ieee80211_if_init_conf\n\nAll its members (vif, mac_addr, type) are now available\nin the vif struct directly, so we can pass that instead\nof the conf struct. I generated this patch (except the\nmac80211 and header file changes) with this semantic\npatch:\n\n@@\nidentifier conf, fn, hw;\ntype tp;\n@@\ntp fn(struct ieee80211_hw *hw,\n-struct ieee80211_if_init_conf *conf)\n+struct ieee80211_vif *vif)\n{\n\u003c...\n(\n-conf-\u003etype\n+vif-\u003etype\n|\n-conf-\u003emac_addr\n+vif-\u003eaddr\n|\n-conf-\u003evif\n+vif\n)\n...\u003e\n}\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8e664fb3fd2b04e3ac5fad7f046000ba54e0e275",
      "tree": "cf811ffed7d7643b72608a5eebd25baffd57fcb3",
      "parents": [
        "77c8144ad3ee7fae834e13cb7e83f5b7c8c5329e"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Dec 23 13:15:38 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Dec 28 16:54:58 2009 -0500"
      },
      "message": "mac80211: split up and insert custom IEs correctly\n\nCurrently, we insert all user-specified IEs before the HT\nIE for association, and after the HT IE for probe requests.\nFor association, that\u0027s correct only if the user-specified\nIEs are RSN only, incorrect in all other cases including\nWPA. Change this to split apart the user-specified IEs in\ntwo places for association: before the HT IE (e.g. RSN),\nafter the HT IE (generally empty right now I think?) and\nafter WMM (all other vendor-specific IEs). For probes,\nsplit the IEs in different places to be correct according\nto the spec.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "9607e6b66a0d25ca63b70d54a4283fa13d8f7c9d",
      "tree": "706cb2c2db2df69fa446eb3848b27107b67f2d25",
      "parents": [
        "d30506e0357e5448c7d38bb3739c451dbe4c174e"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Dec 23 13:15:31 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Dec 28 16:54:49 2009 -0500"
      },
      "message": "mac80211: add ieee80211_sdata_running\n\nInstead of always using netif_running(sdata-\u003edev)\nuse ieee80211_sdata_running(sdata) now which is\njust an inline containing netif_running() for now.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "24feda0084722189468a65e20019cdd8ef99702b",
      "tree": "815fdd018e7b1146546dc520208567cae75dd398",
      "parents": [
        "b98c06b6debfe84c90200143bb1102f312f50a33"
      ],
      "author": {
        "name": "Luis R. Rodriguez",
        "email": "lrodriguez@atheros.com",
        "time": "Thu Dec 24 15:38:22 2009 -0500"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Dec 28 16:20:05 2009 -0500"
      },
      "message": "mac80211: fix propagation of failed hardware reconfigurations\n\nmac80211 does not propagate failed hardware reconfiguration\nrequests. For suspend and resume this is important due to all\nthe possible issues that can come out of the suspend \u003c-\u003e resume\ncycle. Not propagating the error means cfg80211 will assume\nthe resume for the device went through fine and mac80211 will\ncontinue on trying to poke at the hardware, enable timers,\nqueue work, and so on for a device which is completley\nunfunctional.\n\nThe least we can do is to propagate device start issues and\nwarn when this occurs upon resume. A side effect of this patch\nis we also now propagate the start errors upon harware\nreconfigurations (non-suspend), but this should also be desirable\nanyway, there is not point in continuing to reconfigure a\ndevice if mac80211 was unable to start the device.\n\nFor further details refer to the thread:\n\nhttp://marc.info/?t\u003d126151038700001\u0026r\u003d1\u0026w\u003d2\n\nCc: stable@kernel.org\nSigned-off-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ea1e4b842049fcc4741096538114871a74859314",
      "tree": "c2336ab480ac0fd62e0dc41b391d99c97158dc9c",
      "parents": [
        "b6ce5c33001b1dc83e6a1a6f30c5dccccea651b6",
        "92c6f8d849178582fc527aaf1e51dd37a74767d3"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Dec 28 15:09:11 2009 -0500"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Dec 28 15:09:11 2009 -0500"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n"
    },
    {
      "commit": "f38fd12fa7b7b98e158a9b31d388da34eef25c22",
      "tree": "bf5f8407e3456e691e4ef873d343c3403974937a",
      "parents": [
        "8b73d13a21ae889e747cac180ff27c5a0a88e6a4"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Dec 01 18:29:42 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Dec 22 13:31:17 2009 -0500"
      },
      "message": "mac80211: allow disabling 40MHz on 2.4GHz\n\nIn some situations it is required that a system be\nconfigured with no support for 40 MHz channels in\nthe 2.4 GHz band. Rather than imposing any such\nrestrictions on everybody, allow configuration a\nsystem like that with a module parameter. It is\nwritable at runtime but only takes effect at the\ntime of the next association.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "0f78231bffb868a30e8533aace142213266bb811",
      "tree": "317f65dc6d89e9a89ad83f94fadd780dd1e0ca83",
      "parents": [
        "18974b5b0b5e758d416c550553b143e5c8038281"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Dec 01 13:37:02 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Dec 22 13:31:16 2009 -0500"
      },
      "message": "mac80211: enable spatial multiplexing powersave\n\nEnable spatial multiplexing in mac80211 by telling the\ndriver what to do and, where necessary, sending action\nframes to the AP to update the requested SMPS mode.\n\nAlso includes a trivial implementation for hwsim that\njust logs the requested mode.\n\nFor now, the userspace interface is in debugfs only,\nand let you toggle the requested mode at any time.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "12375ef933fa8271396ed0c1e318cb1bd2e2689d",
      "tree": "b05ccc4573cb8f0a1b89edeeae7e6c5805f75f67",
      "parents": [
        "47846c9b0c10808d9337d2e7d09361f3e0a0a71a"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Nov 25 20:30:31 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Dec 21 18:38:54 2009 -0500"
      },
      "message": "mac80211: trace interface name\n\nIt\u0027s not all that useful to have the vif/sdata pointer,\nwe\u0027d rather refer to the interfaces by their name.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "47846c9b0c10808d9337d2e7d09361f3e0a0a71a",
      "tree": "8e5d0dbf3309b7868fa73a888f9561ffea1580e3",
      "parents": [
        "abe60632f311d515b082b450504ee24006023951"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Nov 25 17:46:19 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Dec 21 18:38:52 2009 -0500"
      },
      "message": "mac80211: reduce reliance on netdev\n\nFor bluetooth 3, we will most likely not have\na netdev for a virtual interface (sdata), so\nprepare for that by reducing the reliance on\nhaving a netdev. This patch moves the name\nand address fields into the sdata struct and\nuses them from there all over. Some work is\nneeded to keep them sync\u0027ed, but that\u0027s not\na lot of work and in slow paths anyway.\n\nIn doing so, this also reduces the number of\npointer dereferences in many places, because\nof things like sdata-\u003edev-\u003edev_addr becoming\nsdata-\u003evif.addr.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "1814077fd12a9cdf478c10076e9c42094e9d9250",
      "tree": "802c2703cfc1bb4230b52d0f56277e6a3df98ab8",
      "parents": [
        "02f7f1793023bd8e5e277ad349f6f43f8c284fb0"
      ],
      "author": {
        "name": "Vasanthakumar Thiagarajan",
        "email": "vasanth@atheros.com",
        "time": "Fri Dec 04 17:41:34 2009 +0530"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Dec 07 16:51:24 2009 -0500"
      },
      "message": "mac80211: Fix bug in computing crc over dynamic IEs in beacon\n\nOn a 32-bit machine, BIT() macro does not give the required\nbit value if the bit is mroe than 31. In ieee802_11_parse_elems_crc(),\nBIT() is suppossed to get the bit value more than 31 (42 (id of ERP_INFO_IE),\n37 (CHANNEL_SWITCH_IE), (42), 32 (POWER_CONSTRAINT_IE), 45 (HT_CAP_IE),\n61 (HT_INFO_IE)). As we do not get the required bit value for the above\nIEs, crc over these IEs are never calculated, so any dynamic change in these\nIEs after the association is not really handled on 32-bit platforms.\nThis patch fixes this issue.\n\nCc: stable@kernel.org\nSigned-off-by: Vasanthakumar Thiagarajan \u003cvasanth@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "9b963e5d0e01461099a40117b05480f24b63381f",
      "tree": "4756d554e37bf4ab7202f2c564cbe629af98b576",
      "parents": [
        "3b8626ba01a8a745a3fdf22dd347edd708b0af13",
        "5fdd4baef6195a1f2960e901c8877e2105f832ca"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 29 00:57:15 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 29 00:57:15 2009 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/ieee802154/fakehard.c\n\tdrivers/net/e1000e/ich8lan.c\n\tdrivers/net/e1000e/phy.c\n\tdrivers/net/netxen/netxen_nic_init.c\n\tdrivers/net/wireless/ath/ath9k/main.c\n"
    },
    {
      "commit": "ceb99fe071eb688255798d89be337affffa2b103",
      "tree": "443cdf6d6fffab53db16006e44fd6506d814fd86",
      "parents": [
        "8ade00824607fcfa8842572012d4393b40a74a94"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Nov 19 14:29:39 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Nov 19 11:08:39 2009 -0500"
      },
      "message": "mac80211: fix resume\n\nWhen mac80211 resumes, it currently first sets suspended\nto false so the driver can start doing things and we can\nreceive frames.\n\nHowever, if we actually receive frames then it can end\nup starting some work which adds timers and then later\nruns into a BUG_ON in the timer code because it tries\nadd_timer() on a pending timer.\n\nFix this by keeping track of the resuming process by\nintroducing a new variable \u0027resuming\u0027 which gets set to\ntrue early on instead of setting \u0027suspended\u0027 to false,\nand allow queueing work but not receiving frames while\nresuming.\n\nReported-by: Maxim Levitsky \u003cmaximlevitsky@gmail.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "136cfa28615ccce0f9374811480e0b81c4191ea5",
      "tree": "9a07d6f316d19f85fd989b17e75d931f907c7d1a",
      "parents": [
        "fe7a5d5c1ad659bf0ec7dc171e122aeefa16ac25"
      ],
      "author": {
        "name": "Rui Paulo",
        "email": "rpaulo@gmail.com",
        "time": "Wed Nov 18 18:40:00 2009 +0000"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Nov 18 17:09:27 2009 -0500"
      },
      "message": "mac80211: use a structure to hold the mesh config information element\n\nSigned-off-by: Rui Paulo \u003crpaulo@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "62ae67be31c2346b6d74653a148ddbd1b9a94424",
      "tree": "91f59c821a4e3f91a529887d97989b1969720f65",
      "parents": [
        "875405a7793e9c35fab33819e7e5df7a98b6064c"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Nov 18 18:42:05 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Nov 18 17:09:27 2009 -0500"
      },
      "message": "mac80211: remove encrypt parameter from ieee80211_tx_skb\n\nSince the flags moved into skb-\u003ecb, there\u0027s no\nlonger a need to have the encrypt bool passed\ninto the function, anyone who requires it set\nto 0 (false) can just set the flag directly.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "90a5e16992fa6105f7ebf3f29f5cf5feb1bbf7dc",
      "tree": "be20480aca5f74c63371e7808e19ef7812a65204",
      "parents": [
        "41a2617064a8458178ccdf31ed2be2b4eade4a2a"
      ],
      "author": {
        "name": "Rui Paulo",
        "email": "rpaulo@gmail.com",
        "time": "Wed Nov 11 00:01:31 2009 +0000"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Nov 13 17:43:54 2009 -0500"
      },
      "message": "mac80211: implement RANN processing and forwarding\n\nProcess the RANN (Root Annoucement) Frame and try to find the HWMP\nroot station by sending a PREQ.\n\nSigned-off-by: Rui Paulo \u003crpaulo@gmail.com\u003e\nSigned-off-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nReviewed-by: Andrey Yurovsky \u003candrey@cozybit.com\u003e\nTested-by: Brian Cavagnolo \u003cbrian@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4d36ec58239eec44d77839ef6c25108efcbbb58c",
      "tree": "7074195389af214ba0081169afb4b64514f2419a",
      "parents": [
        "b59f04cbf8ab4dce63f0d2ed658624b0ad21c67d"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Oct 27 20:59:55 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Oct 30 16:49:19 2009 -0400"
      },
      "message": "mac80211: split hardware scan by band\n\nThere\u0027s currently a very odd bug in mac80211 -- a\nhardware scan that is done while the hardware is\nreally operating on 2.4 GHz will include CCK rates\nin the probe request frame, even on 5 GHz (if the\ndriver uses the mac80211 IEs). Vice versa, if the\nhardware is operating on 5 GHz the 2.4 GHz probe\nrequests will not include CCK rates even though\nthey should.\n\nFix this by splitting up cfg80211 scan requests by\nband -- recalculating the IEs every time -- and\nrequesting only per-band scans from the driver.\n\nApparently this bug hasn\u0027t been a problem yet, but\nit is imaginable that some older access points get\nconfused if confronted with such behaviour.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "0819663d164e090de315c5e619f4e23c27aaff88",
      "tree": "c138ec7cab02eb3f9a7a5cc2cae416817e030926",
      "parents": [
        "9e7ba2465fd453429aa5849c2aadb526cda19034"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Tue Oct 06 15:52:35 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Oct 07 16:33:51 2009 -0400"
      },
      "message": "mac80211: use kfree_skb() to free struct sk_buff pointers\n\nkfree_skb() should be used to free struct sk_buff pointers.\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nCc: stable@kernel.org\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "84f6a01ce05fa671f7745b6e041e698a2d1f1341",
      "tree": "9d27eb23cf2c310b572193cbef290b6b84eb0259",
      "parents": [
        "5eb6ba83aa326e2f2cf9109d20df5d6a497b36bb"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Aug 20 20:02:20 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 28 14:40:25 2009 -0400"
      },
      "message": "mac80211: fix configure_filter invocation after stop\n\nSince configure_filter can sleep now, any multicast\nconfiguration needed to be postponed to a work struct.\nThis, however, lead to a problem that we could queue\nthe work, stop the device and then afterwards invoke\nconfigure_filter which may lead to driver hangs and is\na bug. To fix this, we can just cancel the filter work\nsince it\u0027s unnecessary to do after stopping the hw.\n\nSince there are various places that call drv_stop, and\ntwo of them do very similar things, the code for them\ncan be put into a shared function at the same time.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nReported-by: Lennert Buytenhek \u003cbuytenh@wantstofly.org\u003e\nTested-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "3ac64beecd27400d12cc7afb4108eef26c499f6a",
      "tree": "da0220085f68e30fe61ba9b8833dc6311d6dc25e",
      "parents": [
        "ea416a793d2b611f22b42ba094fd2e5bd30fff43"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Aug 17 16:16:53 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:35:58 2009 -0400"
      },
      "message": "mac80211: allow configure_filter callback to sleep\n\nOver time, a whole bunch of drivers have come up\nwith their own scheme to delay the configure_filter\noperation to a workqueue. To be able to simplify\nthings, allow configure_filter to sleep, and add\na new prepare_multicast callback that drivers that\nneed the multicast address list implement. This new\ncallback must be atomic, but most drivers either\ndon\u0027t care or just calculate a hash which can be\ndone atomically and then uploaded to the hardware\nnon-atomically.\n\nA cursory look suggests that at76c50x-usb, ar9170,\nmwl8k (which is actually very broken now), rt2x00,\nwl1251, wl1271 and zd1211 should make use of this\nnew capability.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "42935ecaf4e784d0815afa9a7e5fe7e141157ca3",
      "tree": "dc0a0dcfff761e98d8a2a23a7edc8f9182c2774c",
      "parents": [
        "64344d78228f6346a0462ba2d5fc03494aef4e6b"
      ],
      "author": {
        "name": "Luis R. Rodriguez",
        "email": "lrodriguez@atheros.com",
        "time": "Wed Jul 29 20:08:07 2009 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Aug 04 16:44:14 2009 -0400"
      },
      "message": "mac80211: redefine usage of the mac80211 workqueue\n\nThe mac80211 workqueue exists to enable mac80211 and drivers\nto queue their own work on a single threaded workqueue. mac80211\ntakes care to flush the workqueue during suspend but we never\nreally had requirements on drivers for how they should use\nthe workqueue in consideration for suspend.\n\nWe extend mac80211 to document how the mac80211 workqueue should\nbe used, how it should not be used and finally move raw access to\nthe workqueue to mac80211 only. Drivers and mac80211 use helpers\nto queue work onto the mac80211 workqueue:\n\n  * ieee80211_queue_work()\n  * ieee80211_queue_delayed_work()\n\nThese helpers will now warn if mac80211 already completed its\nsuspend cycle and someone is trying to queue work. mac80211\nflushes the mac80211 workqueue prior to suspend a few times,\nbut we haven\u0027t taken the care to ensure drivers won\u0027t add more\nwork after suspend. To help with this we add a warning when\nsomeone tries to add work and mac80211 already completed the\nsuspend cycle.\n\nDrivers should ensure they cancel any work or delayed work\nin the mac80211 stop() callback.\n\nSigned-off-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a7bc376c858e0e724b8cb2db09b6874562d377ca",
      "tree": "0588a4d51146ea54ffc949bce9d2cc52d90943b1",
      "parents": [
        "f9d6b402603a63b5e5b56bd7a79fa72a818be55b"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Jul 27 10:33:31 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jul 29 15:46:13 2009 -0400"
      },
      "message": "mac80211: verify info-\u003econtrol.vif is not NULL\n\nWhen enqueuing packets on the internal packet queue, we\nneed to ensure that we have a valid vif pointer since\nthat is required since the net namespace work. Add some\nassertions to verify this, but also don\u0027t crash is for\nsome reason we don\u0027t end up with a vif pointer -- warn\nand drop the packet in all these cases.\n\nSince this code touches a number of hotpaths, it is\nintended to be temporary, or maybe configurable in the\nfuture, at least the bit that is in the path that gets\nhit for every packet, ieee80211_tx_pending().\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "3b8d81e020f77c9da8b85b0685c8cd2ca7c7b150",
      "tree": "a19fcddbf28fecdbd13ad009fe07b8afc5e95c90",
      "parents": [
        "c4029083e2acb82229c43b791c07afb089d972ff"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Jun 17 17:43:56 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:30 2009 -0400"
      },
      "message": "mac80211: remove master netdev\n\nWith the internal \u0027pending\u0027 queue system in place, we can simply\nput packets there instead of pushing them off to the master dev,\ngetting rid of the master interface completely.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "fffd0934b9390f34bec45762192b7edd3b12b4b5",
      "tree": "d9779803763261f5795fe39a402d79c4220a3a22",
      "parents": [
        "b9454e83cac42fcdc90bfbfba479132bd6629455"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Jul 08 14:22:54 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:09 2009 -0400"
      },
      "message": "cfg80211: rework key operation\n\nThis reworks the key operation in cfg80211, and now only\nallows, from userspace, configuring keys (via nl80211)\nafter the connection has been established (in managed\nmode), the IBSS been joined (in IBSS mode), at any time\n(in AP[_VLAN] modes) or never for all the other modes.\n\nIn order to do shared key authentication correctly, it\nis now possible to give a WEP key to the AUTH command.\nTo configure static WEP keys, these are given to the\nCONNECT or IBSS_JOIN command directly, for a userspace\nSME it is assumed it will configure it properly after\nthe connection has been established.\n\nSince mac80211 used to check the default key in IBSS\nmode to see whether or not the network is protected,\nit needs an update in that area, as well as an update\nto make use of the WEP key passed to auth() for shared\nkey authentication.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "7e9debe9789456426ec8574ead879e33da19ee57",
      "tree": "d1158594e3b9ea1b54e6e24f7bf370a68e6105eb",
      "parents": [
        "db2e6bd4e966a36c6b2f1921feb3537e8254415c"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Jun 15 13:42:25 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 15 15:05:58 2009 -0400"
      },
      "message": "mac80211: disconnect when user changes channel\n\nIf we do not disconnect when a channel switch is requested,\nwe end up eventually detection beacon loss from the AP and\nthen disconnecting, without ever really telling the AP, so\nwe might just as well disconnect right away.\n\nAdditionally, this fixes a problem with iwlwifi where the\ndriver will clear some internal state on channel changes\nlike this and then get confused when we actually go clear\nthat state from mac80211.\n\nIt may look like this patch drops the no-IBSS check, but\nthat is already handled by cfg80211 in the wext handler it\nprovides for IBSS (cfg80211_ibss_wext_siwfreq).\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8f77f3849cc3ae2d6df9301785a3d316ea7d7ee1",
      "tree": "02143d1e81c85f64900546e3e9c2b820f72745d1",
      "parents": [
        "fc240e3fc5791c572402b0857948da7b1e68d77f"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sun Jun 07 21:58:37 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 10 13:28:37 2009 -0400"
      },
      "message": "mac80211: do not pass PS frames out of mac80211 again\n\nIn order to handle powersave frames properly we had needed\nto pass these out to the device queues again, and introduce\nthe skb-\u003erequeue bit. This, however, also has unnecessary\noverhead by needing to \u0027clean up\u0027 already tried frames, and\nthis clean-up code is also buggy when software encryption\nis used.\n\nInstead of sending the frames via the master netdev queue\nagain, simply put them into the pending queue. This also\nfixes a problem where frames for that particular station\ncould be reordered when some were still on the software\nqueues and older ones are re-injected into the software\nqueue after them.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "1f87f7d3a3b42b20f34cb03f0fd1a41c3d0e27f3",
      "tree": "642882153a48e910a415e6bb23bcfb79fadef6dd",
      "parents": [
        "6081162e2ed78dfcf149b076b047078ab1445cc2"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jun 02 13:01:41 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 03 14:06:14 2009 -0400"
      },
      "message": "cfg80211: add rfkill support\n\nTo be easier on drivers and users, have cfg80211 register an\nrfkill structure that drivers can access. When soft-killed,\nsimply take down all interfaces; when hard-killed the driver\nneeds to notify us and we will take down the interfaces\nafter the fact. While rfkilled, interfaces cannot be set UP.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "7ba10a8efe501e26d995aa9b6dc13395518a87e4",
      "tree": "ae8cb7da2e916ff3f070cad24ed9419d0e58999b",
      "parents": [
        "1bb563334858f48f65b58bab6d10b54080f4ee42"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed May 27 09:41:06 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 03 14:05:10 2009 -0400"
      },
      "message": "mac80211: fix transposed min/max CW values\n\nI accidentally transposed these in the patch that \"fixed\" the defaults,\nleading to extremely low throughput because of the huge min CW.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e31a16d6f64ef0e324c6f54d5112703c3f13a9c4",
      "tree": "4ed30d0ebd1d948aaa14bcd4fb52f29d9bb2e7a8",
      "parents": [
        "a971be223f243311a8014ddfc721f68e3ef2da9c"
      ],
      "author": {
        "name": "Zhu Yi",
        "email": "yi.zhu@intel.com",
        "time": "Thu May 21 21:47:03 2009 +0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri May 22 14:06:02 2009 -0400"
      },
      "message": "wireless: move some utility functions from mac80211 to cfg80211\n\nThe patch moves some utility functions from mac80211 to cfg80211.\nBecause these functions are doing generic 802.11 operations so they\nare not mac80211 specific. The moving allows some fullmac drivers\nto be also benefit from these utility functions.\n\nSigned-off-by: Zhu Yi \u003cyi.zhu@intel.com\u003e\nSigned-off-by: Samuel Ortiz \u003csamuel.ortiz@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5bb644a0fd25a5e083ecbfaa92a211db99aa6ef7",
      "tree": "d2a6d5ff2323db0c475be15c63bb8fc55482a1e2",
      "parents": [
        "cc32abd494c0a8f76f2638e3f3a76e01c68bc9ea"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sun May 17 11:40:42 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed May 20 14:46:25 2009 -0400"
      },
      "message": "mac80211: cancel/restart all timers across suspend/resume\n\nWe forgot to cancel all timers in mac80211 when suspending.\nIn particular we forgot to deal with some things that can\ncause hardware reconfiguration -- while it is down.\n\nWhile at it we go ahead and add a warning in ieee80211_sta_work()\nif its run while the suspend-\u003eresume cycle is in effect. This\nshould not happen and if it does it would indicate there is\na bug lurking in either mac80211 or mac80211 drivers.\n\nWith this now wpa_supplicant doesn\u0027t blink when I go to suspend\nand resume where as before there where issues with some timers\nrunning during the suspend-\u003eresume cycle. This caused a lot of\nincorrect assumptions and would at times bring back the device\nin an incoherent, but mostly recoverable, state.\n\nSigned-off-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "aa837e1d6bd1a71b3c30c7738b6c29d41512fe7d",
      "tree": "ee5ad78a279d22fb63821e4664de7ce03fe6d4d8",
      "parents": [
        "58905ca5b11a0ff3860f55b789cbbf052f7158a7"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu May 07 16:16:24 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon May 11 15:23:54 2009 -0400"
      },
      "message": "mac80211: set default QoS values according to spec\n\nWe\u0027ve never really cared about the default QoS (WMM) values, but\nwe really should if the AP doesn\u0027t send any. This patch makes\nmac80211 use the default values according to 802.11-2007, and\nadditionally syncs the default values when we disassociate so\nwhatever the last AP said gets \"unconfigured\".\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "2448798133d747ad339e57099e32a1d1e68aca1c",
      "tree": "ee09385f5dca9e243c38f5f888baa02605423bd7",
      "parents": [
        "2d0ddec5b2b859f06116f631fc0ffe94fbceb556"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Apr 23 18:52:52 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed May 06 15:14:37 2009 -0400"
      },
      "message": "mac80211: add driver ops wrappers\n\nIn order to later add tracing or verifications to the driver\ncalls mac80211 makes, this patch adds static inline wrappers\nfor all operations.\n\nAll calls are now written as\n\n\tdrv_\u003cop\u003e(local, ...);\n\ninstead of\n\n\tlocal-\u003eops-\u003e\u003cop\u003e(\u0026local-\u003ehw, ...);\n\nWhere necessary, the wrappers also do existence checking and\nreturn default values as appropriate.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "2d0ddec5b2b859f06116f631fc0ffe94fbceb556",
      "tree": "9bf3cdfcbbefcb34f5984e6d797f488ebe358196",
      "parents": [
        "57c4d7b4c4986037be51476b8e3025d5ba18d8b8"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Apr 23 16:13:26 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed May 06 15:14:36 2009 -0400"
      },
      "message": "mac80211: unify config_interface and bss_info_changed\n\nThe config_interface method is a little strange, it contains the\nBSSID and beacon updates, while bss_info_changed contains most\nother BSS information for each interface. This patch removes\nconfig_interface and rolls all the information it previously\npassed to drivers into bss_info_changed.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e7ec86f54e519e8e86f1cf328db13263f3ef8bd4",
      "tree": "2b0a66930abf4ac710cc15120195c9259a0fcaba",
      "parents": [
        "ba44cb7226afd4e19308c1d8a90e8b7c566c0d8b"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sat Apr 18 17:33:24 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Apr 22 16:57:18 2009 -0400"
      },
      "message": "mac80211: validate TIM IE length (redux)\n\nThe TIM IE must not be shorter than 4 bytes, so verify that\nwhen parsing it and use the proper type. To ease that adjust\nstruct ieee80211_tim_ie to have a virtual bitmap of size\nat least 1.\n\nAlso check that the TIM IE is actually present before trying\nto parse it!\n\nBecause other people may need the function, make it a static\ninline in ieee80211.h.\n\n(The original \"mac80211: validate TIM IE length\" was a minimal fix for\n2.6.30.  This purports to be the full, correct fix. -- JWL)\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "b9a5f8cab751d362f7c2d94899ca788c22fcd1ef",
      "tree": "e769e2f59ef845cf7c7cc93b64d33eeed49bb9f7",
      "parents": [
        "9e52b0623c6eb49c3f23a326c1fb97bdecc49ba1"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "j@w1.fi",
        "time": "Mon Apr 20 18:39:05 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Apr 22 16:57:17 2009 -0400"
      },
      "message": "nl80211: Add set/get for frag/rts threshold and retry limits\n\nAdd new nl80211 attributes that can be used with NL80211_CMD_SET_WIPHY\nand NL80211_CMD_GET_WIPHY to manage fragmentation/RTS threshold and\nretry limits.\n\nSince these values are stored in struct wiphy, remove the local copy\nfrom mac80211 where feasible (frag \u0026 rts threshold). The retry limits\nare currently needed in struct ieee80211_conf, but these could be\neventually removed since the driver should have access to the values\nin struct wiphy.\n\nSigned-off-by: Jouni Malinen \u003cj@w1.fi\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "d91f36db51661018f6d54ff5966e283bcec4c545",
      "tree": "cde91cde0e6478c3c8cb256786eb61f3c48842c4",
      "parents": [
        "10f644a47b76d3e61b98f2d02ce9690b94c51ee5"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Apr 16 13:17:26 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Apr 22 16:57:16 2009 -0400"
      },
      "message": "mac80211: implement beacon filtering in software\n\nRegardless of whether the hardware implements beacon filtering,\nthere\u0027s no need to process all beacons in software all the time\nthroughout the stack (mac80211 does a lot, then cfg80211, then\nin the future possibly userspace).\n\nThis patch implements the \"best possible\" beacon filtering in\nmac80211. \"Best possible\" means that it can look for changes in\nall requested information elements, and distinguish vendor IEs\nby their OUI.\n\nIn the future, we will add nl80211 API for userspace to request\ninformation elements and vendor IE OUIs to watch -- drivers can\nthen implement the best they can do while software implements\nit fully.\n\nIt is unclear whether or not this actually saves CPU time, but\nthe data is all in the cache already so it should be fairly\ncheap. The additional _testing_, however, has great benefit;\nWithout this, and on hardware that doesn\u0027t implement beacon\nfiltering, wrong assumptions about, for example, scan result\nupdates could quickly creep into code.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f2753ddbadb0873a98421415882318251bbd9eaa",
      "tree": "daad40232be13d91835b30234e5743dfdd582f19",
      "parents": [
        "a1c555802a62c845520d2486d783c9bb1d5e68a9"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Apr 14 10:09:24 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Apr 22 16:57:14 2009 -0400"
      },
      "message": "mac80211: add hardware restart function\n\nSome hardware defects may require the hardware to be re-initialised\ncompletely from scratch. Drivers would need much information (for\ninstance the current MAC address, crypto keys, beaconing information,\netc.) stored duplicated from mac80211 to be able to do this, so let\nmac80211 help them.\n\nThe new ieee80211_restart_hw() function requires the same code as\nresuming, so move that code into a new ieee80211_reconfig() function\nin util.c and leave only the suspend code in pm.c.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5ef2d41afb7fce2315d12a8aaebe0c9f1b50755b",
      "tree": "00fb4ac6a019b42c5be143793a3b34253f43eea9",
      "parents": [
        "de95a54b1aebe5592cae971ca5e5d9ec6a381a17"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Mar 31 12:12:07 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Apr 22 16:54:39 2009 -0400"
      },
      "message": "mac80211: include HT capabilities in probe request\n\nInclude the HT capabilities in the probe request frame.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "de95a54b1aebe5592cae971ca5e5d9ec6a381a17",
      "tree": "55a622d1e61e73cd6426c5e0643ac9fd117a9fe8",
      "parents": [
        "18a8365992a8041aa178ae9ad5f0d951d0457230"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Apr 01 11:58:36 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Apr 22 16:54:39 2009 -0400"
      },
      "message": "mac80211: pass all probe request IEs to driver\n\nInstead of just passing the cfg80211-requested IEs, pass\nthe locally generated ones as well.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "18a8365992a8041aa178ae9ad5f0d951d0457230",
      "tree": "cb7a461139269feb191e5f5d03c4438cfa9335f2",
      "parents": [
        "75c2148fa5330c6de741fc96e3308f57d846a6b4"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Mar 31 12:12:05 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Apr 22 16:54:39 2009 -0400"
      },
      "message": "cfg80211: introduce scan IE limit attribute\n\nThis patch introduces a new attribute for a wiphy that tells\nuserspace how long the information elements added to a probe\nrequest frame can be at most. It also updates the at76 to\nadvertise that it cannot support that, and, for now until I\ncan fix that, iwlwifi too.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e4e72fb4de93e3d4047a4ee3f08778422e17ed0d",
      "tree": "dd133a749e6fa6960c9aa708041d996110f6440e",
      "parents": [
        "cd8ffc800ce18e558335c4946b2217864fc16045"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Mar 23 17:28:42 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Mar 27 20:13:23 2009 -0400"
      },
      "message": "mac80211/iwlwifi: move virtual A-MDPU queue bookkeeping to iwlwifi\n\nThis patch removes all the virtual A-MPDU-queue bookkeeping from\nmac80211. Curiously, iwlwifi already does its own bookkeeping, so\nit doesn\u0027t require much changes except where it needs to handle\nstarting and stopping the queues in mac80211.\n\nTo handle the queue stop/wake properly, we rewrite the software\nqueue number for aggregation frames and internally to iwlwifi keep\ntrack of the queues that map into the same AC queue, and only talk\nto mac80211 about the AC queue. The implementation requires calling\ntwo new functions, iwl_stop_queue and iwl_wake_queue instead of the\nmac80211 counterparts.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nCc: Reinette Chattre \u003creinette.chatre@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "2a577d98712a284a612dd51d69db5cb989810dc2",
      "tree": "c2e667d92d280d404dd964548aefedd43996645c",
      "parents": [
        "f0e72851f7ad108fed20426b46a18ab5fcd5729f"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Mar 23 17:28:37 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Mar 27 20:13:21 2009 -0400"
      },
      "message": "mac80211: rework the pending packets code\n\nThe pending packets code is quite incomprehensible, uses memory barriers\nnobody really understands, etc. This patch reworks it entirely, using\nthe queue spinlock, proper stop bits and the skb queues themselves to\nindicate whether packets are pending or not (rather than a separate\nvariable like before).\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nReviewed-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "2de8e0d999b8790861cd3749bec2236ccc1c8110",
      "tree": "18b7f0127b7e1d938b41d1120803cb0af528058f",
      "parents": [
        "08df05aa9b25f3079585855506022bb33a011183"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Mar 23 17:28:35 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Mar 27 20:13:21 2009 -0400"
      },
      "message": "mac80211: rewrite fragmentation\n\nFragmentation currently uses an allocated array to store the\nfragment skbs, and then keeps track of which have been sent\nand which are still pending etc. This is rather complicated;\nmake it simpler by just chaining the fragments into skb-\u003enext\nand removing from that list when sent. Also simplifies all\ncode that needs to touch fragments, since it now only needs\nto walk the skb-\u003enext list.\n\nThis is a prerequisite for fixing the stored packet code,\nwhich I need to do for proper aggregation packet storing.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nReviewed-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "65fc73ac4a310945dfeceac961726c2765ad2ec0",
      "tree": "5c1410524f3a82b653d6a08753fbe5bdd9a984fa",
      "parents": [
        "feeb44454996cf5b375fad21697bf6202fe30dd2"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "jouni.malinen@atheros.com",
        "time": "Fri Mar 20 21:21:16 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Mar 27 20:13:04 2009 -0400"
      },
      "message": "nl80211: Remove NL80211_CMD_SET_MGMT_EXTRA_IE\n\nThe functionality that NL80211_CMD_SET_MGMT_EXTRA_IE provided can now\nbe achieved with cleaner design by adding IE(s) into\nNL80211_CMD_TRIGGER_SCAN, NL80211_CMD_AUTHENTICATE,\nNL80211_CMD_ASSOCIATE, NL80211_CMD_DEAUTHENTICATE, and\nNL80211_CMD_DISASSOCIATE.\n\nSince this is a very recently added command and there are no known (or\nknown planned) applications using NL80211_CMD_SET_MGMT_EXTRA_IE and\ntaken into account how much extra complexity it adds to the IE\nprocessing we have now (and need to add in the future to fix IE order\nin couple of frames), it looks like the best option is to just remove\nthe implementation of this command for now. The enum values themselves\nare left to avoid changing the nl80211 command or attribute numbers.\n\nSigned-off-by: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "70692ad2923a379e0a10f9ec2ad93fbbe084cc46",
      "tree": "f67488c396ea6e61f71e0199eea189ea939a698b",
      "parents": [
        "83befbde839b1deb0cd752a834ffd9fde8571ae2"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "jouni.malinen@atheros.com",
        "time": "Mon Feb 16 19:39:13 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Feb 27 14:52:38 2009 -0500"
      },
      "message": "nl80211: Optional IEs into scan request\n\nThis extends the NL80211_CMD_TRIGGER_SCAN command to allow applications\nto specify a set of information element(s) to be added into Probe\nRequest frames with NL80211_ATTR_IE. This provides support for the\nMLME-SCAN.request primitive parameter VendorSpecificInfo and can be\nused, e.g., to implement WPS scanning.\n\nSigned-off-by: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "469002983fc90c2ff0959e2b03335c0fe2e4d5a9",
      "tree": "fdcf78dcdaeadba897abd86d39d0275e236803b3",
      "parents": [
        "96f5e66e8a79810e2982cdcfa28e554f3d97da21"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sun Feb 15 12:44:28 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Feb 27 14:51:42 2009 -0500"
      },
      "message": "mac80211: split IBSS/managed code\n\nThis patch splits out the ibss code and data from managed (station) mode.\nThe reason to do this is to better separate the state machines, and have\nthe code be contained better so it gets easier to determine what exactly\na given change will affect, that in turn makes it easier to understand.\n\nThis is quite some churn, especially because I split sdata-\u003eu.sta into\nsdata-\u003eu.mgd and sdata-\u003eu.ibss, but I think it\u0027s easier to maintain that\nway. I\u0027ve also shuffled around some code -- null function sending is only\napplicable to managed interfaces so put that into that file, some other\nfunctions are needed from various places so put them into util, and also\nrearranged the prototypes in ieee80211_i.h accordingly.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "96f5e66e8a79810e2982cdcfa28e554f3d97da21",
      "tree": "d16a0e083b83ab488f20b995c56a496a4ec2c9c8",
      "parents": [
        "f3734ee6df3ac57151e02d091f47d5e52e646539"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Feb 12 00:51:53 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Feb 27 14:51:42 2009 -0500"
      },
      "message": "mac80211: fix aggregation for hardware with ampdu queues\n\nHardware with AMPDU queues currently has broken aggregation.\n\nThis patch fixes it by making all A-MPDUs go over the regular AC queues,\nbut keeping track of the hardware queues in mac80211. As a first rough\nversion, it actually stops the AC queue for extended periods of time,\nwhich can be removed by adding buffering internal to mac80211, but is\ncurrently not a huge problem because people rarely use multiple TIDs\nthat are in the same AC (and iwlwifi currently doesn\u0027t operate as AP).\n\nThis is a short-term fix, my current medium-term plan, which I hope to\nexecute soon as well, but am not sure can finish before .30, looks like\nthis:\n 1) rework the internal queuing layer in mac80211 that we use for\n    fragments if the driver stopped queue in the middle of a fragmented\n    frame to be able to queue more frames at once (rather than just a\n    single frame with its fragments)\n 2) instead of stopping the entire AC queue, queue up the frames in a\n    per-station/per-TID queue during aggregation session initiation,\n    when the session has come up take all those frames and put them\n    onto the queue from 1)\n 3) push the ampdu queue layer abstraction this patch introduces in\n    mac80211 into the driver, and remove the virtual queue stuff from\n    mac80211 again\n\nThis plan will probably also affect ath9k in that mac80211 queues the\nframes instead of passing them down, even when there are no ampdu queues.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "c771c9d8da1e8292ef8bf7fd4ce135dacc650130",
      "tree": "79b259a6b0396cbecf9e775c7ba5a80e2c4d94c9",
      "parents": [
        "506d03f97d10e54fd27c58c872a98242326d6419"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Jan 23 22:54:03 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jan 29 16:01:45 2009 -0500"
      },
      "message": "mac80211: add interface list lock\n\nUsing only the RTNL has a number of problems, most notably that\nieee80211_iterate_active_interfaces() and other interface list\ntraversals cannot be done from the internal workqueue because it\nneeds to be flushed under the RTNL.\n\nThis patch introduces a new mutex that protects the interface list\nagainst modifications. A more detailed explanation is part of the\ncode change.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "9a95371aa26e3cb9fb1340362912000088ff3c3e",
      "tree": "aaa8470b9304d344a2c15f30776b3dd1c044183a",
      "parents": [
        "f976376de0d6a9697fb635369f12ae00251f4566"
      ],
      "author": {
        "name": "Luis R. Rodriguez",
        "email": "lrodriguez@atheros.com",
        "time": "Thu Jan 22 15:05:53 2009 -0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jan 29 16:01:19 2009 -0500"
      },
      "message": "mac80211: allow mac80211 drivers to get to struct ieee80211_hw from wiphy\n\nIf a driver is given a wiphy and it wants to get to its private\nmac80211 driver area it can use wiphy_to_ieee80211_hw() to get first\nto its ieee80211_hw and then access the private structure via hw-\u003epriv. The\nwiphy_priv() is already being used internally by mac80211 and drivers\nshould not use this. This can be helpful in a drivers reg_notifier().\n\nSigned-off-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "881d948c23442173a011f1adcfe4c95bf7f27515",
      "tree": "3d7e6a4bf23b960cf45a4d2c5734578168ce0424",
      "parents": [
        "369391db1aabd089cefaadaabb6d9fc82e78b0a7"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Jan 21 15:13:48 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jan 29 16:01:09 2009 -0500"
      },
      "message": "wireless: restrict to 32 legacy rates\n\nSince the standards only define 12 legacy rates, 32 is certainly\na sane upper limit and we don\u0027t need to use u64 everywhere. Add\nsanity checking that no more than 32 rates are registered and\nchange the variables to u32 throughout.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f797eb7e2903571e9c0e7e5d64113f51209f8dc4",
      "tree": "15522a18521aa5acf4fc2bd68d1cc24d67f00a1e",
      "parents": [
        "bb2becac91f13e862d4601a8c5364bc758c35b8e"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "jouni.malinen@atheros.com",
        "time": "Mon Jan 19 18:48:46 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jan 29 16:00:53 2009 -0500"
      },
      "message": "mac80211: Fix MFP Association Comeback to use Timeout Interval IE\n\nThe separate Association Comeback Time IE was removed from IEEE 802.11w\nand the Timeout Interval IE (from IEEE 802.11r) is used instead. The\nediting on this is still somewhat incomplete in IEEE 802.11w/D7.0, but\nstill, the use of Timeout Interval IE is the expected mechanism.\n\nSigned-off-by: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "63a5ab82255a4ff5d0783f16427210f1d45d7ec8",
      "tree": "b10fe227645c9c4c6ee044a1873e0aad34c3a016",
      "parents": [
        "97ebe12a035e11f8af7a06a34f4d848f9b2f0b49"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "j@w1.fi",
        "time": "Thu Jan 08 13:32:09 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jan 29 16:00:07 2009 -0500"
      },
      "message": "mac80211: 802.11w - Implement Association Comeback processing\n\nWhen MFP is enabled, the AP does not allow a STA to associate if an\nexisting security association exists without first going through SA\nQuery process. When this happens, the association request is denied\nwith a new status code (\"temporarily rejected\") ans Association\nComeback IE is used to notify when the association may be tried again\n(i.e., when the SA Query procedure has timed out).\n\nUse the comeback time to update the mac80211 client MLME timer for\nnext association attempt to minimize waiting time if association is\ntemporarily rejected.\n\nSigned-off-by: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "b3093664c931aa06fc50da42e25b3b6dc307a915",
      "tree": "1293d1450d98062d0d56ce3e7160ecd3596a1399",
      "parents": [
        "c557289cb8ea063bd09db88f8a687a841556e291"
      ],
      "author": {
        "name": "Kalle Valo",
        "email": "kalle.valo@iki.fi",
        "time": "Mon Dec 29 10:02:48 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jan 29 15:59:41 2009 -0500"
      },
      "message": "mac80211: make wake/stop_queue_by_reason() functions static\n\nFixes sparse warnings:\n\nnet/mac80211/util.c:355:6: warning: symbol\n  \u0027ieee80211_wake_queue_by_reason\u0027 was not declared. Should it be static?\nnet/mac80211/util.c:385:6: warning: symbol\n  \u0027ieee80211_stop_queue_by_reason\u0027 was not declared. Should it be static?\n\nThanks to Johannes Berg for reporting this.\n\nSigned-off-by: Kalle Valo \u003ckalle.valo@iki.fi\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ce7c9111a97492d04c504f40736a669c235d664a",
      "tree": "6a294d373e19a99048dafa632966096371f3b1bb",
      "parents": [
        "e0cb686ff879dc9ac045ad7258ec687088d4e450"
      ],
      "author": {
        "name": "Kalle Valo",
        "email": "kalle.valo@nokia.com",
        "time": "Thu Dec 18 23:35:20 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Dec 19 15:23:59 2008 -0500"
      },
      "message": "mac80211: track master queue status\n\nThis is a preparation for the dynamic power save support. In future there are\ntwo paths to stop the master queues and we need to track this properly to\navoid starting queues incorrectly. Implement this by adding a status\narray for each queue.\n\nThe original idea and design is from Johannes Berg, I just did\nthe implementation based on his notes. All the bugs are mine, of course.\n\nSigned-off-by: Kalle Valo \u003ckalle.valo@nokia.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "094d05dc32fc2930e381189a942016e5561775d9",
      "tree": "4deedbcbe196f88cb8d9fe0cd0755775a7ff0939",
      "parents": [
        "420e7fabd9c6d907280ed6b3e40eef425c5d8d8d"
      ],
      "author": {
        "name": "Sujith",
        "email": "Sujith.Manoharan@atheros.com",
        "time": "Fri Dec 12 11:57:43 2008 +0530"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Dec 19 15:22:54 2008 -0500"
      },
      "message": "mac80211: Fix HT channel selection\n\nHT management is done differently for AP and STA modes, unify\nto just the -\u003econfig() callback since HT is fundamentally a\nPHY property and cannot be per-BSS.\n\nRename enum nl80211_sec_chan_offset as nl80211_channel_type to denote\nthe channel type ( NO_HT, HT20, HT40+, HT40- ).\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Sujith \u003cSujith.Manoharan@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "72bdcf34380917260da41e3c49e10edee04bc5cd",
      "tree": "cbfb8e389f58514febf47ea62781517a9df42f25",
      "parents": [
        "72eaa43a532b4156966444779829a986a4432f11"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "j@w1.fi",
        "time": "Wed Nov 26 16:15:24 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Dec 05 09:32:11 2008 -0500"
      },
      "message": "nl80211: Add frequency configuration (including HT40)\n\nThis patch adds new NL80211_CMD_SET_WIPHY attributes\nNL80211_ATTR_WIPHY_FREQ and NL80211_ATTR_WIPHY_SEC_CHAN_OFFSET to allow\nuserspace to set the operating channel (e.g., hostapd for AP mode).\n\nSigned-off-by: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "50fb2e4572141770380f5919793c6e575fa3474b",
      "tree": "6227726fda3e7b54515b6738bcf62b5f395ded23",
      "parents": [
        "65a0667b43ff746b2964b2a257ffff1a4747e19d"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Oct 16 11:21:49 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Oct 31 19:00:37 2008 -0400"
      },
      "message": "mac80211: remove rate_control_clear\n\n\"Clearing\" the rate control algorithm is pointless, none of\nthe algorithms actually uses this operation and it\u0027s not even\ninvoked properly for all channel switching. Also, there\u0027s no\nneed to since rate control algorithms work per station.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "bda3933a8aceedd03e0dd410844bd310033ca756",
      "tree": "f4d2c70a6338e500b6db93b073801181280b1840",
      "parents": [
        "9124b07740c51cbc6e358dd0c4abc6ee8ded084d"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sat Oct 11 01:51:51 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Oct 31 19:00:15 2008 -0400"
      },
      "message": "mac80211: move bss_conf into vif\n\nMove bss_conf into the vif struct so that drivers can\naccess it during -\u003etx without having to store it in\nthe private data or similar. No driver updates because\nthis is only for when they want to start using it.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e8975581f63870be42ff4662b293d1b0c8c21350",
      "tree": "3d0d67e73d009ea6480b459585c0a70fc35fa9da",
      "parents": [
        "0f4ac38b5999c3d51adad52d61c56c1b99c247ec"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Oct 09 12:18:51 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Oct 31 19:00:07 2008 -0400"
      },
      "message": "mac80211: introduce hw config change flags\n\nThis makes mac80211 notify the driver which configuration\nactually changed, e.g. channel etc.\n\nNo driver changes, this is just plumbing, driver authors are\nexpected to act on this if they want to.\n\nAlso remove the HW CONFIG debug printk, it\u0027s incorrect, often\nwe configure something else.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "d9fe60dea7779d412b34679f1177c5ca1940ea8d",
      "tree": "a51e16b013f7c1d16ded502cb32c03872bcbfcaa",
      "parents": [
        "40333e4fb476014cdd939d27e20eb54573172b32"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Oct 09 12:13:49 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Oct 31 19:00:06 2008 -0400"
      },
      "message": "802.11: clean up/fix HT support\n\nThis patch cleans up a number of things:\n * the unusable definition of the HT capabilities/HT information\n   information elements\n * variable names that are hard to understand\n * mac80211: move ieee80211_handle_ht to ht.c and remove the unused\n             enable_ht parameter\n * mac80211: fix bug with MCS rate 32 in ieee80211_handle_ht\n * mac80211: fix bug with casting the result of ieee80211_bss_get_ie\n             to an information element _contents_ rather than the\n             whole element, add size checking (another out-of-bounds\n             access bug fixed!)\n * mac80211: remove some unused return values in favour of BUG_ON\n             checking\n * a few minor other things\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "d73782fdde76554016abf73b46f843b29f520848",
      "tree": "9b57321ce60ba336dfea63501b1d23d21c700817",
      "parents": [
        "3db594380b8452eda4d88b12844077809607caaa"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Oct 07 12:04:34 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Oct 31 18:06:00 2008 -0400"
      },
      "message": "mac80211: clean up ieee80211_hw_config errors\n\nWarn when ieee80211_hw_config returns an error, it shouldn\u0027t\nhappen; remove a number of printks that would happen in such\na case and one printk that is user-triggerable.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "09914813da37f1ee9d77998a0701629cfbbd98f4",
      "tree": "6577e7769862378abf62e6867a54b71da1dc12c6",
      "parents": [
        "3eadd751eb8cb8090a65b4fa72c6360fd1aa5f06"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Oct 07 19:31:17 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 14 20:47:15 2008 -0400"
      },
      "message": "mac80211: fix HT information element parsing\n\nThere\u0027s no checking that the HT IEs are of the right length\nwhich can be used by an attacker to cause an out-of-bounds\naccess by sending a too short HT information/capability IE.\nFix it by simply pretending those IEs didn\u0027t exist when too\nshort.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    }
  ],
  "next": "25d834e16294c8dfd923dae6bdb8a055391a99a5"
}
