)]}'
{
  "log": [
    {
      "commit": "c96e96354a6c9456cdf1f150eca504e2ea35301e",
      "tree": "751bec601fb8152116b8e31e0f1f83d687a37d6f",
      "parents": [
        "dbbe68bb12b34f3e450da7a73c20e6fa1f85d63a",
        "33af88138b859f515b365a074e0a014d7cdbf846"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jan 05 16:06:25 2011 -0500"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jan 05 16:06:25 2011 -0500"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem\n\nConflicts:\n\tnet/bluetooth/Makefile\n"
    },
    {
      "commit": "6303710d7aa62bfb154cd13ab5ab12cfa8baaf91",
      "tree": "4718ca3186d92819b3d617f32813eab6a1896b91",
      "parents": [
        "db98a6cfcc9ac951067c9a2cb60459b618fd7b10",
        "d2460f4b2fa6dbdeec800414f9cf5b1fc8b71197"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jan 05 14:35:41 2011 -0500"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jan 05 14:35:41 2011 -0500"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n"
    },
    {
      "commit": "707e634326448190bfe2d937c44ec05c8dea63c4",
      "tree": "5aa8d4976d01b7b189c2e1dd858a3012347d0158",
      "parents": [
        "24a8fdad35835e8d71f7c4b978a246fafed2e7b4"
      ],
      "author": {
        "name": "Christian Lamparter",
        "email": "chunkeey@googlemail.com",
        "time": "Thu Dec 30 17:29:53 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jan 04 14:46:13 2011 -0500"
      },
      "message": "Revert \"mac80211: temporarily disable reorder release timer\"\n\nThis reverts enables the reorder release timer once again.\n\nThe issues laid out in:\n\u003chttp://www.spinics.net/lists/linux-wireless/msg57214.html\u003e\n\nHave been addressed by:\n\tmac80211: serialize rx path workers\n\tmac80211: ignore PSM bit of reordered frames\n\nSigned-off-by: Christian Lamparter \u003cchunkeey@googlemail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "24a8fdad35835e8d71f7c4b978a246fafed2e7b4",
      "tree": "3ee2b5710b802dca6fe43cbedf461c54e0f2be93",
      "parents": [
        "1186488b4a4d4871e40cb1604ba3ede3d4b7cc90"
      ],
      "author": {
        "name": "Christian Lamparter",
        "email": "chunkeey@googlemail.com",
        "time": "Thu Dec 30 17:25:29 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jan 04 14:46:13 2011 -0500"
      },
      "message": "mac80211: serialize rx path workers\n\nThis patch addresses the issue of serialization between\nthe main rx path and various reorder release timers.\n\n\u003chttp://www.spinics.net/lists/linux-wireless/msg57214.html\u003e\n\nIt converts the previously local \"frames\" queue into\na global rx queue [rx_skb_queue]. This way, everyone\n(be it the main rx-path or some reorder release timeout)\ncan add frames to it.\n\nOnly one active rx handler worker [ieee80211_rx_handlers]\nis needed. All other threads which have lost the race of\n\"runnning_rx_handler\" can now simply \"return\", knowing that\nthe thread who had the \"edge\" will also take care of their\nworkload.\n\nSigned-off-by: Christian Lamparter \u003cchunkeey@googlemail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4cfda47b69d0a37e5fc0292addba6d0f5f671a14",
      "tree": "4a39ef3560c429b388e96a7479ac8fc27d4fd0c7",
      "parents": [
        "5af3c1d195a6169a925a929e800dc4fce2a545ae"
      ],
      "author": {
        "name": "Christian Lamparter",
        "email": "chunkeey@googlemail.com",
        "time": "Mon Dec 27 23:21:26 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jan 04 14:35:15 2011 -0500"
      },
      "message": "mac80211: ignore PSM bit of reordered frames\n\nThis patch tackles one of the problems of my\nreorder release timer patch from August.\n\n\u003chttp://www.spinics.net/lists/linux-wireless/msg57214.html\u003e\n\u003d\u003e\nWhat if the reorder release triggers and ap_sta_ps_end\n(called by ieee80211_rx_h_sta_process) accidentally clears\nthe WLAN_STA_PS_STA flag, because 100ms ago - when the STA\nwas still active - frames were put into the reorder buffer.\n\nSigned-off-by: Christian Lamparter \u003cchunkeey@googlemail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "919bbad580445801c22ef6ccbe624551fee652bd",
      "tree": "dce1f537c484cd05912eac54c9009024ff98b1cb",
      "parents": [
        "554d1d027b19265c4aa3f718b3126d2b86e09a08"
      ],
      "author": {
        "name": "Milton Miller",
        "email": "miltonm@bga.com",
        "time": "Thu Dec 30 02:01:03 2010 -0600"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jan 04 14:17:23 2011 -0500"
      },
      "message": "mac80211: fix mesh forwarding when ratelimited too\n\nCommit b51aff057c9d0ef6c529dc25fd9f775faf7b6c63 said:\n\n    Under memory pressure, the mac80211 mesh code\n    may helpfully print a message that it failed\n    to clone a mesh frame and then will proceed\n    to crash trying to use it anyway. Fix that.\n\nAvoid the reference whenever the frame copy is unsuccessful\nregardless of the debug message being suppressed or printed.\n\nCc: stable@kernel.org [2.6.27+]\nSigned-off-by: Milton Miller \u003cmiltonm@bga.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "17f7f4d9fcce8f1b75b5f735569309dee7665968",
      "tree": "14d7e49ca0053a0fcab3c33b5023bf3f90c5c08a",
      "parents": [
        "041110a439e21cd40709ead4ffbfa8034619ad77",
        "d7c1255a3a21e98bdc64df8ccf005a174d7e6289"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Dec 26 22:37:05 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Dec 26 22:37:05 2010 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tnet/ipv4/fib_frontend.c\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": "b51aff057c9d0ef6c529dc25fd9f775faf7b6c63",
      "tree": "57f268b9553fa77f5a5337fb5be4355c63b44d1b",
      "parents": [
        "b2b7ab22fa2e619c20917e825c0da7212ca2efc9"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Wed Dec 22 10:15:07 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Dec 22 13:36:35 2010 -0500"
      },
      "message": "mac80211: fix mesh forwarding\n\nUnder memory pressure, the mac80211 mesh code\nmay helpfully print a message that it failed\nto clone a mesh frame and then will proceed\nto crash trying to use it anyway. Fix that.\n\nCc: stable@kernel.org [2.6.27+]\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nAcked-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "c7108a7111cd9e592d6ad498be37276dbea75d2b",
      "tree": "dab25dbb5607c4151629bf747ee10b4487772419",
      "parents": [
        "c80d545da3f7c0e534ccd4a780f322f80a92cff1"
      ],
      "author": {
        "name": "Javier Cardona",
        "email": "javier@cozybit.com",
        "time": "Thu Dec 16 17:37:50 2010 -0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Dec 20 14:46:58 2010 -0500"
      },
      "message": "mac80211: Send mesh non-HWMP path selection frames to userspace\n\nLet path selection frames for protocols other than HWMP be sent to\nuserspace via NL80211_CMD_REGISTER_FRAME.  Also allow userspace to send\nand receive mesh path selection frames.\n\nSigned-off-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "cf4e594ea7e55555e81647b74a3a8e8b2826a529",
      "tree": "794013429d9613ef253111fb50f993600ab14a55",
      "parents": [
        "5928b91acae97622a6f2e679eb7a9f19bed68e3e"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "j@w1.fi",
        "time": "Thu Dec 16 00:52:40 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Dec 16 15:22:30 2010 -0500"
      },
      "message": "nl80211: Add notification for dropped Deauth/Disassoc\n\nAdd a new notification to indicate that a received, unprotected\nDeauthentication or Disassociation frame was dropped due to\nmanagement frame protection being in use. This notification is\nneeded to allow user space (e.g., wpa_supplicant) to implement\nSA Query procedure to recover from association state mismatch\nbetween an AP and STA.\n\nThis is needed to avoid getting stuck in non-working state when MFP\n(IEEE 802.11w) is used and a protected Deauthentication or\nDisassociation frame is dropped for any reason. After that, the\nstation would silently discard any unprotected Deauthentication or\nDisassociation frame that could be indicating that the AP does not\nhave association for the STA (when the Reason Code would be 6 or 7).\nIEEE Std 802.11w-2009, 11.13 describes this recovery mechanism.\n\nSigned-off-by: Jouni Malinen \u003cj@w1.fi\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "897bed8b4320774e56f282cdc1cceb4d77442797",
      "tree": "5b0a61044ec2a1b3e41d2435ed3dff652eebac82",
      "parents": [
        "f33fdcf1b3a02fb92971a577d194ec6c579374af"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Dec 09 19:49:00 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Dec 13 15:23:28 2010 -0500"
      },
      "message": "mac80211: clean up RX key checks\n\nUsing the default key for \"any key set\" isn\u0027t\nquite what we should do. It works, but with the\nupcoming changes it makes life unnecessarily\ncomplex, so do something better here and really\ncheck for \"any key\".\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "541a45a142df281c974d74eac2066138fc107b23",
      "tree": "b96f4808c3f17f2f560db9569ca2b08dba9eab67",
      "parents": [
        "22de94de7de78b8de2fb1f2df5aa85b5556cfcfd"
      ],
      "author": {
        "name": "Bruno Randolf",
        "email": "br1@einfach.org",
        "time": "Thu Dec 02 19:12:43 2010 +0900"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Dec 07 16:09:12 2010 -0500"
      },
      "message": "nl80211/mac80211: Report signal average\n\nExtend nl80211 to report an exponential weighted moving average (EWMA) of the\nsignal value. Since the signal value usually fluctuates between different\npackets, an average can be more useful than the value of the last packet.\n\nThis uses the recently added generic EWMA library function.\n\n--\nv2:\tfix ABI breakage and change factor to be a power of 2.\n\nSigned-off-by: Bruno Randolf \u003cbr1@einfach.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "09f921f83faa49cdea25abfb98c439c01526b89d",
      "tree": "1e8ee5c8f14e0e57965eca81bc6725288fd3597b",
      "parents": [
        "4cebb34caa5122216a1e2451eae9e0fc47ec2589",
        "d89197c7f34934fbb0f96d938a0d6cfe0b8bcb1c"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Dec 02 15:46:37 2010 -0500"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Dec 02 15:46:37 2010 -0500"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n\nConflicts:\n\tdrivers/net/wireless/ath/ath9k/ar9003_eeprom.c\n"
    },
    {
      "commit": "08ca944eb240b2299e743c76b43fbc7c2dd251de",
      "tree": "9782965ad4754969685cfd440b81ded25d4d6023",
      "parents": [
        "20ed3166c84d145589a89d8cde12aa32cf2d17f4"
      ],
      "author": {
        "name": "Helmut Schaa",
        "email": "helmut.schaa@googlemail.com",
        "time": "Tue Nov 30 12:19:34 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Nov 30 13:58:07 2010 -0500"
      },
      "message": "mac80211: Minor optimization in ieee80211_rx_h_data\n\nRemove a superfluous ieee80211_is_data check as that was checked a few\nlines before already and we wont\u0027t get here for non-data frames at all.\n\nSecond, the frame was already converted to 802.3 header format and\nreading the fc and addr1 fields was only possible because the 802.3\nheader is short enough and didn\u0027t overwrite the relevant parts of the\n802.11 header. Make the code more obvious by checking the ethernet\nheader\u0027s h_dest field.\n\nFurthermore reorder the conditions to reduce the number of checks\nwhen dynamic powersave is not needed (AP mode for example).\n\nSigned-off-by: Helmut Schaa \u003chelmut.schaa@googlemail.com\u003e\nReviewed-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8e26d5ad2f9c038609d42eebc676cd1107709eef",
      "tree": "64faf31c3f8dcc4000b06c21a6df147f2f522d18",
      "parents": [
        "2c31333a8fde7e26936a9f5371d02ff12c490993"
      ],
      "author": {
        "name": "Senthil Balasubramanian",
        "email": "senthilkumar@atheros.com",
        "time": "Tue Nov 30 20:15:38 2010 +0530"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Nov 30 13:45:02 2010 -0500"
      },
      "message": "mac80211: Fix STA disconnect due to MIC failure\n\nTh commit titled \"mac80211: clean up rx handling wrt. found_sta\"\nremoved found_sta variable which caused a MIC failure event\nto be reported twice for a single failure to supplicant resulted\nin STA disconnect.\n\nThis should fix WPA specific countermeasures WiFi test case (5.2.17)\nissues with mac80211 based drivers which report MIC failure events in\nrx status.\n\nCc: Stable \u003cstable@kernel.org\u003e (2.6.37)\nSigned-off-by: Senthil Balasubramanian \u003csenthilkumar@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "2c31333a8fde7e26936a9f5371d02ff12c490993",
      "tree": "75bb0fc716caa240e7afc0245da0b5089bd3e420",
      "parents": [
        "cf63495d0dbe435b475a44672f5dee150da6471b"
      ],
      "author": {
        "name": "Christian Lamparter",
        "email": "chunkeey@googlemail.com",
        "time": "Mon Nov 29 20:53:23 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Nov 30 13:23:06 2010 -0500"
      },
      "message": "mac80211: ignore non-bcast mcast deauth/disassoc franes\n\nThis patch fixes an curious issue due to insufficient\nrx frame filtering.\n\nSaqeb Akhter reported frequent disconnects while streaming\nvideos over samba: \u003chttp://marc.info/?m\u003d128600031109136\u003e\n\u003e [ 1166.512087] wlan1: deauthenticated from 30:46:9a:10:49:f7 (Reason: 7)\n\u003e [ 1526.059997] wlan1: deauthenticated from 30:46:9a:10:49:f7 (Reason: 7)\n\u003e [ 2125.324356] wlan1: deauthenticated from 30:46:9a:10:49:f7 (Reason: 7)\n\u003e [...]\n\nThe reason is that the device generates frames with slightly\nbogus SA/TA addresses.\n\ne.g.:\n [ 2314.402316] Ignore 9f:1f:31:f8:64:ff\n [ 2314.402321] Ignore 9f:1f:31:f8:64:ff\n [ 2352.453804] Ignore 0d:1f:31:f8:64:ff\n [ 2352.453808] Ignore 0d:1f:31:f8:64:ff\n \t\t\t\t\t   ^^ the group-address flag is set!\n (the correct SA/TA would be: 00:1f:31:f8:64:ff)\n\nSince the AP does not know from where the frames come, it\ngenerates a DEAUTH response for the (invalid) mcast address.\nThis mcast deauth frame then passes through all filters and\ntricks the stack into thinking that the AP brutally kicked\nus!\n\nThis patch fixes the problem by simply ignoring\nnon-broadcast, group-addressed deauth/disassoc frames.\n\nCc: Jouni Malinen \u003cj@w1.fi\u003e\nCc: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nReported-by: Saqeb Akhter \u003csaqeb.akhter@gmail.com\u003e\nSigned-off-by: Christian Lamparter \u003cchunkeey@googlemail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "dd318575ff0aae91ac4cbcc5b60c184e59267212",
      "tree": "140a0104b99b8edef7b961b4de9182e092782cf9",
      "parents": [
        "8b7f8532d15631776ce8bec2bbbc58f6aad738d1"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Mon Nov 29 11:09:16 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Nov 29 15:30:30 2010 -0500"
      },
      "message": "mac80211: fix RX aggregation locking\n\nThe RX aggregation locking documentation was\nwrong, which led Christian to also code the\ntimer timeout handling for it somewhat wrongly.\n\nFix the documentation, the two places that\nneed to hold the reorder lock across accesses\nto the structure, and the debugfs code that\nshould just use RCU.\n\nAlso, remove acquiring the sta-\u003elock across\nreorder timeouts since it isn\u0027t necessary, and\nchange a few places to GFP_KERNEL because the\ncode path here doesn\u0027t need atomic allocations\nas I noticed when reviewing all this.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nAcked-by: Christian Lamparter \u003cchunkeey@googlemail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ccb14354017272ddac002e859a2711610b6af174",
      "tree": "fa39f9b944508e596763c49b0088dc1cc2e263ca",
      "parents": [
        "f8afa42b01c7a9f45b7cbaadb0481a0eeb96f18d"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Nov 24 16:18:36 2010 -0500"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Nov 24 16:18:36 2010 -0500"
      },
      "message": "Revert \"nl80211/mac80211: Report signal average\"\n\nThis reverts commit 86107fd170bc379869250eb7e1bd393a3a70e8ae.\n\nThis patch inadvertantly changed the userland ABI.\n\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "86107fd170bc379869250eb7e1bd393a3a70e8ae",
      "tree": "579ee24be87e94246450420f4de57d8eda942848",
      "parents": [
        "eef39befaae2a1559efe197d795c376a317af2af"
      ],
      "author": {
        "name": "Bruno Randolf",
        "email": "br1@einfach.org",
        "time": "Tue Nov 16 10:58:48 2010 +0900"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Nov 18 14:22:20 2010 -0500"
      },
      "message": "nl80211/mac80211: Report signal average\n\nExtend nl80211 to report an exponential weighted moving average (EWMA) of the\nsignal value. Since the signal value usually fluctuates between different\npackets, an average can be more useful than the value of the last packet.\n\nThis uses the recently added generic EWMA library function.\n\nSigned-off-by: Bruno Randolf \u003cbr1@einfach.org\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": "15943a72c7d2031c9150917ca9161a9f891d455a",
      "tree": "5b9bd4a1e775e5a93c1898cd12ffa9c7789b169c",
      "parents": [
        "d12c74528e3065c90df70fbc06ec6ffd6e804738"
      ],
      "author": {
        "name": "Christian Lamparter",
        "email": "chunkeey@googlemail.com",
        "time": "Fri Oct 08 22:35:09 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Oct 11 15:04:20 2010 -0400"
      },
      "message": "mac80211: temporarily disable reorder release timer\n\nSeveral serve threading problems in the current\nrelease reorder timer implementation have been\ndiscovered.\n\nA lengthy discussion - which lists some of the\npitfalls and possible solutions - can be found at:\n http://marc.info/?t\u003d128635927000001\n\nBut due to the complicated nature of the subject and\nthe imminent advent of a new -rc cycle, it was\ndecided to disable the feature for the time being.\n\nSigned-off-by: Christian Lamparter \u003cchunkeey@googlemail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e31b82136d1adc7a599b6e99d3321e5831841f5a",
      "tree": "c72d78d4cccfd08587e909c7efe59956f1cbc23e",
      "parents": [
        "53f73c09d64f1fa7d7e6e8b6bb7468d42eddc92d"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Tue Oct 05 19:39:30 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Oct 06 16:30:40 2010 -0400"
      },
      "message": "cfg80211/mac80211: allow per-station GTKs\n\nThis adds API to allow adding per-station GTKs,\nupdates mac80211 to support it, and also allows\ndrivers to remove a key from hwaccel again when\nthis may be necessary due to multiple GTKs.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "1be7fe8de9f25e173282f8f989f83bc5b5decfe9",
      "tree": "e7b45e034560f6dc0f0403d098d85e1c94a3b3e1",
      "parents": [
        "e8347ebad2f1b15bddb6ed3ed5f767531eb52dc3"
      ],
      "author": {
        "name": "Bill Jordan",
        "email": "bjordan@rajant.com",
        "time": "Fri Oct 01 11:20:41 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 05 13:35:25 2010 -0400"
      },
      "message": "mac80211: fix for WDS interfaces\n\nInitialize the rate table for WDS interfaces, and\nadd cases to allow WDS packets to pass the xmit and receive\ntests.\n\nSigned-off-by: Bill Jordan \u003cbjordan@rajant.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "554891e63a29af35cc6bb403ef34e319518114d0",
      "tree": "2fdabf08455ea34697a853b3616cb92d9ef5b173",
      "parents": [
        "4080c7cdc23f26c6e6166a70f50fa43814552d81"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Sep 24 12:38:25 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Sep 27 15:57:54 2010 -0400"
      },
      "message": "mac80211: move packet flags into packet\n\ncommit 8c0c709eea5cbab97fb464cd68b06f24acc58ee1\nAuthor: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nDate:   Wed Nov 25 17:46:15 2009 +0100\n\n    mac80211: move cmntr flag out of rx flags\n\nmoved the CMNTR flag into the skb RX flags for\nsome aggregation cleanups, but this was wrong\nsince the optimisation this flag tried to make\nrequires that it is kept across the processing\nof multiple interfaces -- which isn\u0027t true for\nflags in the skb. The patch not only broke the\noptimisation, it also introduced a bug: under\nsome (common!) circumstances the flag will be\nset on an already freed skb!\n\nHowever, investigating this in more detail, I\nfound that most of the flags that we set should\nbe per packet, _except_ for this one, due to\na-MPDU processing. Additionally, the flags used\nfor processing (currently just this one) need\nto be reset before processing a new packet.\n\nSince we haven\u0027t actually seen bugs reported as\na result of the wrong flags handling (which is\nnot too surprising -- the only real bug case I\ncan come up with is an a-MSDU contained in an\na-MPDU), I\u0027ll make a different fix for rc.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4080c7cdc23f26c6e6166a70f50fa43814552d81",
      "tree": "3eb62b56b636e336033fece7b7089b1e28b254ad",
      "parents": [
        "4b0dd98e70b6516c2c26f28091c2fb09f0ecf215"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Sep 24 11:21:08 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Sep 27 15:57:53 2010 -0400"
      },
      "message": "mac80211: fix release_reorder_timeout in scan\n\nEven if the reorder timeout timer fires while\nscanning, the frames weren\u0027t received during\nscanning and therefore shouldn\u0027t be dropped.\nTo implement this, changes to the passive scan\nRX handler simplify understanding it, because\nit currently checks HW_SCANNING independently\nof a packet\u0027s in-scan receive status (which\ndoesn\u0027t make a big difference, since scan_rx()\nwill only pick up probe responses and beacons,\nwhich can\u0027t be aggregated.)\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4b0dd98e70b6516c2c26f28091c2fb09f0ecf215",
      "tree": "2d791b673851f15f596290e9848b5c2be409d3cd",
      "parents": [
        "4406c376895608375105013bf405ecac720ef558"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Sep 24 11:21:07 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Sep 27 15:57:52 2010 -0400"
      },
      "message": "mac80211: clean up rx handling wrt. found_sta\n\nIf a station was found, then we\u0027ll have exited\nthe function already, so it is not necessary to\nhave a variable keeping track of it.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4406c376895608375105013bf405ecac720ef558",
      "tree": "88af3f15a2e025bd1eca272aab5e4acad4ea95de",
      "parents": [
        "20b01f80f72426e7ed2e773220da4357925383d5"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Sep 24 11:21:06 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Sep 27 15:57:51 2010 -0400"
      },
      "message": "mac80211: consolidate packet processing\n\nThere are now four instances of vaguely the same\ncode that does packet preparation, checking for\nMMIC errors and reporting them, and then invoking\npacket processing. Consolidate all of these.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "20b01f80f72426e7ed2e773220da4357925383d5",
      "tree": "a2e81cf9dec56a8a6b2c739d9eaf59061e700b61",
      "parents": [
        "7c1e183186377e84e6f4e457be0514887f2df4ef"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Sep 24 11:21:05 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Sep 27 15:57:50 2010 -0400"
      },
      "message": "mac80211: remove prepare_for_handlers sdata argument\n\nThe first argument to prepare_for_handlers is always\nthe sdata that can just be stored in rx data directly\n(and even already is, in two of four code paths.)\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "7c1e183186377e84e6f4e457be0514887f2df4ef",
      "tree": "dbc559ec2dab072eaf57ab7dabe24d95f952c256",
      "parents": [
        "92e44948b2b3b2db8f39f17033f98ae2356156a5"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Sep 24 15:52:49 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Sep 27 15:57:48 2010 -0400"
      },
      "message": "Revert \"mac80211: fix use-after-free\"\n\nThis reverts commit cd87a2d3a33d75a646f1aa1aa2ee5bf712d6f963.\n\nAuthor reports it conflicts with proper fixes, applied hereafter.\n\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "56af326830757f3e8a1742770d15dfd6e3c40e85",
      "tree": "acf276936ef8676ed694a8f9a9fedc1b2a50b696",
      "parents": [
        "686b9cb994f5f74be790df4cd12873dfdc8a6984"
      ],
      "author": {
        "name": "Ben Greear",
        "email": "greearb@candelatech.com",
        "time": "Thu Sep 23 10:22:24 2010 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Sep 27 15:57:46 2010 -0400"
      },
      "message": "mac80211: Support receiving data frames on multiple vifs.\n\nWhen using multiple STA interfaces on the same radio, some\ndata packets need to be received on all interfaces\n(broadcast, for instance).\n\nMake the STA loop look similar to the mgt-data loop.\n\nAlso, add logic to check RX_FLAG_MMIC_ERROR for last\ninterface in mgt-data loop.\n\nSigned-off-by: Ben Greear \u003cgreearb@candelatech.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "29ad2facd47f8e37eab8b156e2c384fa181c8b4a",
      "tree": "25d4df186cd631810ff15a8e7d37cb6cdd806cdb",
      "parents": [
        "6e5c2b4e8addfaab8ef54dedaf7b607e1585c35b",
        "cd87a2d3a33d75a646f1aa1aa2ee5bf712d6f963"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Sep 24 15:52:34 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Sep 24 15:52:34 2010 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n\nConflicts:\n\tdrivers/net/wireless/ath/ath5k/base.c\n\tnet/mac80211/main.c\n"
    },
    {
      "commit": "cd87a2d3a33d75a646f1aa1aa2ee5bf712d6f963",
      "tree": "45709536e1c4f36c345b16f90849c7833d23337b",
      "parents": [
        "df6d02300f7c2fbd0fbe626d819c8e5237d72c62"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Sep 24 11:20:47 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Sep 24 15:21:55 2010 -0400"
      },
      "message": "mac80211: fix use-after-free\n\ncommit 8c0c709eea5cbab97fb464cd68b06f24acc58ee1\nAuthor: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nDate:   Wed Nov 25 17:46:15 2009 +0100\n\n    mac80211: move cmntr flag out of rx flags\n\nmoved the CMTR flag into the skb\u0027s status, and\nin doing so introduced a use-after-free -- when\nthe skb has been handed to cooked monitors the\nstatus setting will touch now invalid memory.\n\nAdditionally, moving it there has effectively\ndiscarded the optimisation -- since the bit is\nonly ever set on freed SKBs, and those were a\ncopy, it could never be checked.\n\nFor the current release, fixing this properly\nis a bit too involved, so let\u0027s just remove the\nproblematic code and leave userspace with one\ncopy of each frame for each virtual interface.\n\nCc: stable@kernel.org [2.6.33+]\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\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": "a621fa4d6a7fdf9d34938d2e129a72624833eeeb",
      "tree": "1b15e9fabbec3b2bdf04f5cd60526c0154a0dcc1",
      "parents": [
        "c0692b8fe29fb4d4dad33487aabf3ed7e1e880c0"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Aug 27 14:26:54 2010 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 27 13:27:07 2010 -0400"
      },
      "message": "mac80211: allow changing port control protocol\n\nSome vendor specified mechanisms for 802.1X-style\nfunctionality use a different protocol than EAP\n(even if EAP is vendor-extensible). Support this\nin mac80211 via the cfg80211 API for it.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: Juuso Oikarinen \u003cjuuso.oikarinen@nokia.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "3ffc2a905b1faae4c0fe39d66f0752c3a4cbb3c7",
      "tree": "d50902e1e171877e4fb034e36c837f16984ab9b4",
      "parents": [
        "7d64b7cc1fc33bab24567903a93f699d11649c0b"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Aug 27 14:26:52 2010 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 27 13:27:07 2010 -0400"
      },
      "message": "mac80211: allow vendor specific cipher suites\n\nAllow drivers to specify their own set of cipher\nsuites to advertise vendor-specific ciphers. The\ndriver is then required to implement hardware\ncrypto offload for it.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: Juuso Oikarinen \u003cjuuso.oikarinen@nokia.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "2c15a0cf27a74213a714cc7be31685b841f7c1ac",
      "tree": "7d2e0bcf9b3c04922ddce91e4641eeed4387c11f",
      "parents": [
        "74b70a4e38d542843fccfb367dce1ac861cc3890"
      ],
      "author": {
        "name": "Christian Lamparter",
        "email": "chunkeey@googlemail.com",
        "time": "Tue Aug 24 19:22:42 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Aug 25 14:34:56 2010 -0400"
      },
      "message": "mac80211: fix rcu-unsafe pointer dereference\n\nThis patch fixes a potential crash (null-pointer de-\nreference) which was introduced in my previous patch:\n \"mac80211: AMPDU rx reorder timeout timer\"\n\nDuring a BA teardown, the pointer to the soon-to-be-gone\ntid_ampdu_rx element will be nullified. Therefore the\nrelease timer mechanism has to be careful not to\naccidentally access the item without any RCU protection.\n\nSigned-off-by: Christian Lamparter \u003cchunkeey@googlemail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "0fb9a9ec27718fbf7fa3153bc94becefb716ceeb",
      "tree": "8f5d6a5fa9f2c6b8b08273dc198d6187d0a70361",
      "parents": [
        "b62177a0aa0521fd07cd7501534c0c3b256ebce6"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Fri Aug 20 16:25:38 2010 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Aug 25 14:33:17 2010 -0400"
      },
      "message": "net/mac80211: Use wiphy_\u003clevel\u003e\n\nStandardize logging messages from\n\tprintk(KERN_\u003clevel\u003e \"%s: \" fmt , wiphy_name(foo), args);\nto\n\twiphy_\u003clevel\u003e(foo, fmt, args);\n\nSigned-off-by: Joe Perches \u003cjoe@perches.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": "dc1580ddfc1f70636f6ef80a385902f7e8278deb",
      "tree": "45c0885467ca472c70168c88e2af8d114840314d",
      "parents": [
        "60ae0f20058d19ada94093dc3ef7ae0737597fba"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Tue Aug 10 09:46:40 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Aug 16 16:45:21 2010 -0400"
      },
      "message": "mac80211: remove unused status flag checks\n\nThe decryption code verifies whether or not\na given frame was decrypted and verified by\nhardware. This is unnecessary, as the crypto\nRX handler already does it long before the\ndecryption code is even invoked, so remove\nthat code to avoid confusion.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "97359d1235eaf634fe706c9faa6e40181cc95fb8",
      "tree": "5799455c94622eaa6a4fb065bd3b5c350bb705e0",
      "parents": [
        "915a824e30c503157c38115eb6a85f60bb653738"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Tue Aug 10 09:46:38 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Aug 16 16:45:11 2010 -0400"
      },
      "message": "mac80211: use cipher suite selectors\n\nCurrently, mac80211 translates the cfg80211\ncipher suite selectors into ALG_* values.\nThat isn\u0027t all too useful, and some drivers\nbenefit from the distinction between WEP40\nand WEP104 as well. Therefore, convert it\nall to use the cipher suite selectors.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nAcked-by: Gertjan van Wingerde \u003cgwingerde@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "2bff8ebf32a7c5ec9e5f5eeffef94a8cb622f5f0",
      "tree": "ba1a904e56eb202481c039d28a0d769d4bcf796f",
      "parents": [
        "071d9ac253ff51154beb7e33967168e30bc96053"
      ],
      "author": {
        "name": "Christian Lamparter",
        "email": "chunkeey@googlemail.com",
        "time": "Thu Aug 05 01:36:41 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Aug 16 15:26:39 2010 -0400"
      },
      "message": "mac80211: AMPDU rx reorder timeout timer\n\nThis patch introduces a new timer, which will release\nqueued-up MPDUs from the reorder buffer, whenever\nthey\u0027ve waited for more than HT_RX_REORDER_BUF_TIMEOUT\n(which is at around 100 ms).\n\nThe advantage of having a dedicated timer, instead of\nrelying on a constant stream of freshly arriving aMPDUs\nto release the old ones, is particularly observable when\neven a small fraction of MPDUs are forever lost at\nlow network speeds.\n\nPreviously under these circumstances frames would become\nstuck in the reorder buffer and the network stack of both\nHT peers throttled back, instead of revving up and\ngunning the pipes.\n\nSigned-off-by: Christian Lamparter \u003cchunkeey@googlemail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "071d9ac253ff51154beb7e33967168e30bc96053",
      "tree": "b788f9daec3106774e8d9f334fef440eb3ce1b27",
      "parents": [
        "aa0c86364f925c6f12195072562b18c5609ff082"
      ],
      "author": {
        "name": "Christian Lamparter",
        "email": "chunkeey@googlemail.com",
        "time": "Thu Aug 05 01:36:36 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Aug 16 15:26:39 2010 -0400"
      },
      "message": "mac80211: remove unused rate function parameter\n\nThis patch removes a few stale parameters and variables\nwhich survived the last, large rx-path reorganization:\n\"mac80211: correctly place aMPDU RX reorder code\"\n\nSigned-off-by: Christian Lamparter \u003cchunkeey@googlemail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "aa0c86364f925c6f12195072562b18c5609ff082",
      "tree": "d32f3bff00334ecc49d74a0ecd4d36c3e7bdd78f",
      "parents": [
        "6044474ed86484b899d46e040ade3872e83fc9f7"
      ],
      "author": {
        "name": "Christian Lamparter",
        "email": "chunkeey@googlemail.com",
        "time": "Thu Aug 05 01:36:04 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Aug 16 15:26:39 2010 -0400"
      },
      "message": "mac80211: put rx handlers into separate functions\n\nThis patch takes the reorder logic from the RX path and\nmoves it into separate routines to make the expired frame\nrelease accessible.\n\nSigned-off-by: Christian Lamparter \u003cchunkeey@googlemail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "fc88518916793af8ad6a02e05ff254d95c36d875",
      "tree": "b164651d584846d85e929da1e333b23427f861f2",
      "parents": [
        "86df5f7284ffdea9923153764691e490abf36081"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Jul 30 13:23:12 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Aug 16 15:26:36 2010 -0400"
      },
      "message": "mac80211: don\u0027t check rates on PLCP error frames\n\nFrames that failed PLCP error checks are most likely\nmicrowave transmissions (well, maybe not ...) and\ndon\u0027t have a proper rate detected, so ignore it.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "05318bc905467237d4aa68a701f6e92a2b332218",
      "tree": "3b7577383bca50aeb442568aa16cf8f2167b8694",
      "parents": [
        "ea812ca1b06113597adcd8e70c0f84a413d97544",
        "88c1f4f6dffe66e2fed8e7e3276e091ee850bed0"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 01 17:34:14 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 01 17:34:14 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6\n\nConflicts:\n\tdrivers/net/wireless/libertas/host.h\n"
    },
    {
      "commit": "5548a8a1138c96e3e6f803c9f2c1f9389c2f0ee6",
      "tree": "50e41fdf1df846843713694d8dd51ad431c4620b",
      "parents": [
        "679db794679baae96ce0a2257daaeaedef4e8352"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jun 24 14:25:56 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 28 15:14:51 2010 -0400"
      },
      "message": "mac80211: use netif_receive_skb in ieee80211_rx callpath\n\nThis avoids the extra queueing from calling netif_rx.\n\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "292b4df62a5a05a077269535d24eaabc8831c79d",
      "tree": "ce1a110413099b13806d3db737f7f0423c3d9eec",
      "parents": [
        "a3275e24aa97fe303c66e4ab06a67b12730a8c2f"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jun 24 11:13:56 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jun 24 11:13:56 2010 -0400"
      },
      "message": "mac80211: don\u0027t shadow mgmt variable in ieee80211_rx_h_action\n\nnet/mac80211/rx.c:2059:39: warning: symbol \u0027mgmt\u0027 shadows an earlier one\nnet/mac80211/rx.c:1916:31: originally declared here\n\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "bb9c03d8a6893517737b16fdbeb54be3c73b3023",
      "tree": "35fa0d1defaaf94641963a49126d7bb475ffa4c6",
      "parents": [
        "4de57826810fd2cfeb2ab5c7d003ff9116b8f7ee",
        "abf52f86aa0a49a7377350cafa8f218c4cd227e7"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 17 14:19:06 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 17 14:19:06 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6\n"
    },
    {
      "commit": "9190252c952a33efa1ceff4ef35188f8a27b81cb",
      "tree": "f6c7473c919e7a3f0ff7c1b6543da44f8c338d02",
      "parents": [
        "05e48e8e437148298f4673e1efe81f9ead5f41d7"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "jouni.malinen@atheros.com",
        "time": "Fri Jun 11 10:27:33 2010 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jun 15 16:00:49 2010 -0400"
      },
      "message": "mac80211: Use a separate CCMP PN receive counter for management frames\n\nWhen management frame protection (IEEE 802.11w) is used, we must use a\nseparate counter for tracking received CCMP packet number for the\nmanagement frames. The previously used NUM_RX_DATA_QUEUESth queue was\nshared with data frames when QoS was not used and that can cause\nproblems in detecting replays incorrectly for robust management frames.\nAdd a new counter just for robust management frames to avoid this issue.\n\nSigned-off-by: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8b58ff832df9222e1fb3c58ae7f745f95569b55e",
      "tree": "0283d0ee403eb19a4b411fc3803763619c5d6dfc",
      "parents": [
        "73a72a81d27b71f9ace31668d2dd7f3ac1c8228e"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jun 10 10:21:51 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:39:28 2010 -0400"
      },
      "message": "mac80211: fix mgmt frame accounting\n\nThe recent change to processing action frames from\nthe management frame queue had already broken action\nframe accounting, and my rework didn\u0027t help either.\nSo add back accounting and simplify the code with a\nlabel rather than duplicating it, and also add\naccounting for management frames.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a87f736d942c86255e3088c606f0e3eab6bbf784",
      "tree": "74d3d63dca9fc982fcb7c165247d6924c021b4ef",
      "parents": [
        "c1475ca99edcc7216ddc45838ab2c3281c14ba22"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jun 10 10:21:38 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:39:27 2010 -0400"
      },
      "message": "mac80211: use RCU for RX aggregation\n\nCurrently we allocate some memory for each RX\naggregation session and additionally keep a\nflag indicating whether or not it is valid.\nBy using RCU to protect the pointer and making\nsure that the memory is fully set up before it\nbecomes visible to the RX path, we can remove\nthe need for the bool that indicates validity,\nas well as for locking on the RX path since it\nis always synchronised against itself, and we\ncan guarantee that all other modifications are\ndone when the structure is not visible to the\nRX path.\n\nThe net result is that since we remove locking\nrequirements from the RX path, we can in the\nfuture use any kind of lock for the setup and\nteardown code paths.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "c1475ca99edcc7216ddc45838ab2c3281c14ba22",
      "tree": "3f1a5fd9c2fce428382cf49e3140c281a49e006b",
      "parents": [
        "344eec67c7b8557234e149d254bca2ae9614d61e"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jun 10 10:21:37 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:39:27 2010 -0400"
      },
      "message": "mac80211: move aggregation callback processing\n\nThis moves the aggregation callback processing\nto the per-sdata skb queue and a work function\nrather than the tasklet.\n\nUnfortunately, this means that it extends the\npkt_type hack to that skb queue. However, it\nwill enable making ampdu_action API changes\ngradually, my current plan is to get rid of\nthis again by forcing drivers to only return\nfrom ampdu_action() when everything is done,\nthus removing the callbacks completely.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "344eec67c7b8557234e149d254bca2ae9614d61e",
      "tree": "a7243e1f8c67adf535be457b4ccccb212259f41c",
      "parents": [
        "bed7ee6e44cb7633a4f9821688a6c7ae977615ed"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jun 10 10:21:36 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:39:27 2010 -0400"
      },
      "message": "mac80211: move blockack stop due to fragmentation\n\nThere\u0027s a corner case where we receive a fragmented\nframe during a blockack session, in which case we\nwill terminate that session. To simplify future work\nin this area that will culminate in allowing the\ndriver callbacks for aggregation to sleep, move the\nprocessing of this case out of the RX path into the\ninterface work.\n\nThis will simplify future work because the new place\nfor this code doesn\u0027t require that the function will\nalways be atomic, which the RX path needs.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "bed7ee6e44cb7633a4f9821688a6c7ae977615ed",
      "tree": "0c4997408d74abbde021b11b6b1046d815524e15",
      "parents": [
        "77a121c3a88eb00a4b5e753d083dbb7d49fefb0a"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jun 10 10:21:35 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:39:26 2010 -0400"
      },
      "message": "mac80211: always process blockack action from workqueue\n\nTo prepare for making the ampdu_action callback\nsleep, make mac80211 always process blockack\naction frames from the skb queue. This gets rid\nof the current special case for managed mode\ninterfaces as well.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "77a121c3a88eb00a4b5e753d083dbb7d49fefb0a",
      "tree": "d1c802c9133a149094b484cd4796faeb9d7201fb",
      "parents": [
        "36b3a628a4e85d002ee8813ebd2a5caef6d3c1a7"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Jun 10 10:21:34 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:39:26 2010 -0400"
      },
      "message": "mac80211: pull mgmt frame rx into rx handler\n\nSome code is duplicated between ibss, mesh and\nmanaged mode regarding the queueing of management\nframes. Since all modes now use a common skb\nqueue and a common work function, we can pull\nthe queueing code into the rx handler directly\nand remove the duplicated length checks etc.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "9d38d85de0270e3927bffab94973a9c78d1dc800",
      "tree": "31bc0111445ce78e2c373954d3b0fbce7cbb63ba",
      "parents": [
        "aa9746af8fa26d28d442a7415c701eb5dfeb7a2a"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Wed Jun 09 17:20:33 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:38:16 2010 -0400"
      },
      "message": "cfg80211/mac80211: allow action frame TX/RX in IBSS\n\nWhen in IBSS mode, currently action frame TX and RX\ncannot be used. Allow using it to talk to any peer,\nor for public action frames. Also, while at it,\nrestructure the code in mac80211 to make it easier\nto add this for other interface types in the future.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "14599f1e341ee219abdd15f4eee5872d6f2d29f1",
      "tree": "3875181429010e58416ab34e6c06ef42de52e756",
      "parents": [
        "d8d1f30b95a635dbd610dcc5eb641aca8f4768cf",
        "832c10fd733893f86c63bde1c65b005d5a2fe346"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 11 11:34:06 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 11 11:34:06 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6\n\nConflicts:\n\tdrivers/net/wireless/wl12xx/wl1271.h\n\tdrivers/net/wireless/wl12xx/wl1271_cmd.h\n"
    },
    {
      "commit": "9d88477c41904127ab9ae1f3b5b4a39bf6474043",
      "tree": "f50d5185ac89a9fd76d7cb087b952d5c55d5063b",
      "parents": [
        "11b7c60988e5fbabb4e150612931cc068559af16",
        "35dd0509b21e4b5bab36b9eb80c8dab0322f5007"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 07 15:13:46 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 07 15:13:46 2010 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n\nConflicts:\n\tdrivers/net/wireless/iwlwifi/iwl-core.h\n"
    },
    {
      "commit": "eedc765ca4b19a41cf0b921a492ac08d640060d1",
      "tree": "95c566c6238cc953e1e336115d2daafe8bcb388f",
      "parents": [
        "e59d44df46edaafb6b637e98d046775524b31104",
        "024a07bacf8287a6ddfa83e9d5b951c5e8b4070e"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jun 06 17:42:02 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jun 06 17:42:02 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/sfc/net_driver.h\n\tdrivers/net/sfc/siena.c\n"
    },
    {
      "commit": "8b9a4e6e442756f670ef507f09bbc6c11dc0fca6",
      "tree": "bed171512423a88dda5125f76568d481acaaabb4",
      "parents": [
        "56bf882230d2266a2e07b7f404dc96d157a65daa"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri May 28 15:22:58 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jun 04 15:50:51 2010 -0400"
      },
      "message": "mac80211: process station blockack action frames from work\n\nProcessing an association response could take a bit\nof time while we set up the hardware etc. During that\ntime, the AP might already send a blockack request.\nIf this happens very quickly on a fairly slow machine,\nwe can end up processing the blockack request before\nthe association processing has finished. Since the\nblockack processing cannot sleep right now, we also\ncannot make it wait in the driver.\n\nAs a result, sometimes on slow machines the iwlagn\ndriver gets totally confused, and no traffic can pass\nwhen the aggregation setup was done before the assoc\nsetup completed.\n\nI\u0027m working on a proper fix for this, which involves\nqueuing all blockack category action frames from a\nwork struct, and also allowing the ampdu_action driver\ncallback to sleep, which will generally clean up the\ncode and make things easier.\n\nHowever, this is a very involved and complex change.\nTo fix the problem at hand in a way that can also be\nbackported to stable, I\u0027ve come up with this patch.\nHere, I simply process all aggregation action frames\nfrom the managed interface skb queue, which means\ntheir processing will be serialized with processing\nthe association response, thereby fixing the problem.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nCc: stable@kernel.org\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "08daecaead42b85b69b33d7d8429a93dfbf75b58",
      "tree": "920dce6666547bcf07ae6aad203e162a8ada9411",
      "parents": [
        "e0961f112cd88176acc6d1af6ca6352f85cdf993"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sun May 30 14:53:43 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jun 03 14:10:45 2010 -0400"
      },
      "message": "mac80211: drop control frames after processing\n\nAfter ieee80211_rx_h_ctrl() processing we only\nwant to process management (including action)\nframes, so there\u0027s no point in letting control\nframes continue.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "761ab470364b550c9b1a5e1e31be51d415aaf42b",
      "tree": "d5cef754e0ba8a02f9ed6b0a8cf2b9c9d05ae920",
      "parents": [
        "6a8579d0e62c0eac428184ce45e86bc46677724a"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri May 28 14:24:19 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jun 03 14:10:45 2010 -0400"
      },
      "message": "mac80211: move WEP weak IV check\n\nI suspect the compiler will do this optimisation\nanyway, but it seems cleaner to move this into\nthe WEP switch case.\n\nAlso make rx_h_decrypt use a local variable for\nthe frame_control so that we don\u0027t need to reload\nthe hdr variable for this after linearizing.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "bc10502dba37d3b210efd9f3867212298f13b78e",
      "tree": "af4542eaab79cd509244578f839167f16f3ab02d",
      "parents": [
        "ba2d3587912f82d1ab4367975b1df460db60fb1e"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Jun 03 03:21:52 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 03 03:21:52 2010 -0700"
      },
      "message": "net: use __packed annotation\n\ncleanup patch.\n\nUse new __packed annotation in net/ and include/\n(except netfilter)\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8ae5977ff95c03fe6c36a5721c57dcb4bfe4f290",
      "tree": "f4817b7bfbc4011345cb7c163b2e95eaf6470490",
      "parents": [
        "397f385bdba6cdf7752467a7ae81810340929e44"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sun May 30 14:52:58 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jun 01 14:33:02 2010 -0400"
      },
      "message": "mac80211: fix blockack-req processing\n\nDaniel reported that the paged RX changes had\nbroken blockack request frame processing due\nto using data that wasn\u0027t really part of the\nskb data.\n\nFix this using skb_copy_bits() for the needed\ndata. As a side effect, this adds a check on\nprocessing too short frames, which previously\nthis code could do.\n\nReported-by: Daniel Halperin \u003cdhalperi@cs.washington.edu\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nAcked-by: Daniel Halperin \u003cdhalperi@cs.washington.edu\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "6fe70aae0d128339febfabc073ba4c4a03de4f45",
      "tree": "711dff90df5ca4e07b5bddf11b2819e5cf2b7a93",
      "parents": [
        "278554bd6579206921f5d8a523649a7a57f8850d",
        "0c348d7c1422d59a86d6fb37b53d75788043e50b"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon May 17 13:57:43 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon May 17 13:57:43 2010 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem\n"
    },
    {
      "commit": "058897a4e93a6fc6d331e2ef591b2d6571431265",
      "tree": "4f6d88f66b9cfefe9f7931566773d885b247658d",
      "parents": [
        "ffdc4cbe5b17c83af779f45de8536c6ece297e42"
      ],
      "author": {
        "name": "Abhijeet Kolekar",
        "email": "abhijeet.kolekar@intel.com",
        "time": "Tue May 11 11:22:11 2010 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed May 12 16:39:07 2010 -0400"
      },
      "message": "mac80211: fix paged defragmentation\n\nPaged RX skb patch broke the defragmentation. We need to read hdr again\nafter linearization.\n\nIt fixes following bug\nhttp://bugzilla.intellinuxwireless.org/show_bug.cgi?id\u003d2194\n\nSigned-off-by: Zhu, Yi \u003cyi.zhu@intel.com\u003e\nSigned-off-by: Abhijeet Kolekar \u003cabhijeet.kolekar@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "83163244f845c296a118ce85c653872dbff6abfe",
      "tree": "ce2eac695a1c198f23d537e20ed86c16ece21f7e",
      "parents": [
        "0a12761bcd5646691c5d16dd93df84d1b8849285",
        "adfba3c7c026a6a5560d2a43fefc9b198cb74462"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed May 05 16:14:16 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed May 05 16:14:16 2010 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem\n\nConflicts:\n\tdrivers/net/wireless/libertas_tf/cmd.c\n\tdrivers/net/wireless/libertas_tf/main.c\n"
    },
    {
      "commit": "f5c044e53a6b319776c7140b22fee9be3bc1f758",
      "tree": "01b7c012361d81fd0152c56971ea19500525af57",
      "parents": [
        "49b5c7f473f1bbcb30275dcaee2c06dfb8ec2279"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Apr 30 15:37:00 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Apr 30 15:38:13 2010 -0400"
      },
      "message": "mac80211: remove deprecated noise field from ieee80211_rx_status\n\nAlso remove associated IEEE80211_HW_NOISE_DBM from ieee80211_hw_flags.\n\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5c01d5669356e13f0fb468944c1dd4c6a7e978ad",
      "tree": "fa43345288d7b25fac92b3b35360a177c4947313",
      "parents": [
        "fea069152614cdeefba4b2bf80afcddb9c217fc8",
        "a5e944f1d955f3819503348426763e21e0413ba6"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Apr 15 16:21:34 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Apr 15 16:21:34 2010 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem\n\nConflicts:\n\tDocumentation/feature-removal-schedule.txt\n\tdrivers/net/wireless/ath/ath5k/phy.c\n\tdrivers/net/wireless/wl12xx/wl1271_main.c\n"
    },
    {
      "commit": "871039f02f8ec4ab2e5e9010718caa8e085786f1",
      "tree": "f0d2b3127fc48c862967d68c46c2d46668137515",
      "parents": [
        "e4077e018b5ead3de9951fc01d8bf12eeeeeefed",
        "4a1032faac94ebbf647460ae3e06fc21146eb280"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 11 14:53:53 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 11 14:53:53 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/stmmac/stmmac_main.c\n\tdrivers/net/wireless/wl12xx/wl1271_cmd.c\n\tdrivers/net/wireless/wl12xx/wl1271_main.c\n\tdrivers/net/wireless/wl12xx/wl1271_spi.c\n\tnet/core/ethtool.c\n\tnet/mac80211/scan.c\n"
    },
    {
      "commit": "4a1032faac94ebbf647460ae3e06fc21146eb280",
      "tree": "7f31b97beb0406faa1523e619289ad0ab07c9787",
      "parents": [
        "ae4e8d63b5619d4d95f1d2bfa2b836caa6e62d06",
        "0eddb519b9127c73d53db4bf3ec1d45b13f844d1"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 11 02:44:30 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 11 02:44:30 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of /home/davem/src/GIT/linux-2.6/\n"
    },
    {
      "commit": "39184b151cbe5ce9f1487190ac4244f69bf6a04b",
      "tree": "c3dc45e8053ff3066c7a94a3d5a6dfb736be7b5f",
      "parents": [
        "1805a34fa33b6284ab8139dd43779b94de58669a"
      ],
      "author": {
        "name": "Zhu Yi",
        "email": "yi.zhu@intel.com",
        "time": "Thu Apr 08 15:35:10 2010 +0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Apr 09 13:43:09 2010 -0400"
      },
      "message": "mac80211: delay skb linearising in rx decryption\n\nWe delay the skb linearising in ieee80211_rx_h_decrypt so that\nframes do not require software decryption are not linearized. We\nare safe to do this because ieee80211_get_mmie_keyidx() only\nrequires to touch nonlinear data for management frames, which are\nalready linearized before getting here.\n\nCc: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: Zhu Yi \u003cyi.zhu@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "97ad9139fd68b5c71f44d28d3f9788d89cfd4916",
      "tree": "a4b270e9fc7c55a4c6fc4df5e13cf399463fde27",
      "parents": [
        "60ece4047e4870c7be28dcf661162d8312c161e7"
      ],
      "author": {
        "name": "Javier Cardona",
        "email": "javier@cozybit.com",
        "time": "Mon Mar 29 11:00:21 2010 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Apr 08 15:24:07 2010 -0400"
      },
      "message": "mac80211: Moved mesh action codes to a more visible location\n\nGrouped mesh action codes together with the other action codes in\nieee80211.h.\n\nSigned-off-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nReviewed-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": "8c11e4ab09ffb975a89802dde0e9aa52a53b8aa5",
      "tree": "e109db68217656b6efd60a59b532e3c7bf3dc25c",
      "parents": [
        "54297e4d60b74e602138594c131097347d128b5a"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Wed Apr 07 11:26:56 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Apr 07 16:26:25 2010 -0400"
      },
      "message": "mac80211: fix paged RX crypto\n\nWEP crypto was broken, but upon finding the problem\nit is evident that other things were broken by the\npaged RX patch as well.\n\nTo fix it, for now move the linearising in front.\nThis means that we linearise all frames, which is\nnot at all what we want, but at least it fixes the\nproblem for now.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nAcked-by: Zhu Yi \u003cyi.zhu@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "54297e4d60b74e602138594c131097347d128b5a",
      "tree": "5985dc4483e001b1029e3ca9355a80f2180f7832",
      "parents": [
        "098a607091426e79178b9a6c318d993fea131791"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Apr 06 11:18:48 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Apr 07 14:38:06 2010 -0400"
      },
      "message": "mac80211: fix some RX aggregation locking\n\nA few places in mac80211 do not currently acquire\nthe sta lock for RX aggregation, but they should.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "098a607091426e79178b9a6c318d993fea131791",
      "tree": "d62c9993e49f90ca962cd763b096911d22d7e051",
      "parents": [
        "618f356b95e37ca0c30b3b513898fda54abd52a6"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Apr 06 11:18:47 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Apr 07 14:38:05 2010 -0400"
      },
      "message": "mac80211: clean up/fix aggregation code\n\nThe aggregation code has a number of quirks, like\ninventing an unneeded WLAN_BACK_TIMER value and\nleaking memory under certain circumstances during\nstation destruction. Fix these issues by using\nthe regular aggregation session teardown code and\nblocking new aggregation sessions, all before the\nstation is really destructed.\n\nAs a side effect, this gets rid of the long code\nblock to destroy aggregation safely.\n\nAdditionally, rename tid_state_rx which can only\nhave the values IDLE and OPERATIONAL to\ntid_active_rx to make it easier to understand\nthat there is no bitwise stuff going on on the\nRX side -- the TX side remains because it needs\nto keep track of the driver and peer states.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "66b0470aeef10a3b0f9a6a1c60d908b5a06c62ae",
      "tree": "6abfe5fea2aa8b7749e6ef5385b81d4e5d40c82b",
      "parents": [
        "2b43ae6daf26f29cec49fa3a3f18025355495500"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Apr 06 11:18:45 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Apr 07 14:38:03 2010 -0400"
      },
      "message": "mac80211: remove ieee80211_sta_stop_rx_ba_session\n\nAll callers of ieee80211_sta_stop_rx_ba_session can\njust call __ieee80211_stop_rx_ba_session instead\nbecause they already have the station struct, so do\nthat and remove ieee80211_sta_stop_rx_ba_session.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "d211e90e28a074447584729018a39910d691d1a8",
      "tree": "e9fb1b7d3265449fdc58783a573f337bcce26500",
      "parents": [
        "a124f3bed79d5fd5f87b09a7569ae6b7da4171d2"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "j@w1.fi",
        "time": "Sun Mar 28 22:29:52 2010 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Apr 06 16:49:33 2010 -0400"
      },
      "message": "mac80211: Fix robust management frame handling (MFP)\n\nCommit e34e09401ee9888dd662b2fca5d607794a56daf2 incorrectly removed\nuse of ieee80211_has_protected() from the management frame case and in\npractice, made this validation drop all Action frames when MFP is\nenabled. This should have only been done for frames with Protected\nfield set to zero.\n\nSigned-off-by: Jouni Malinen \u003cj@w1.fi\u003e\nCc: stable@kernel.org\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "1cb561f83793191cf86a2db3948d28f5f42df9ff",
      "tree": "f1d8109a0ed6595e1fb6ef3e5b14b8194deb5215",
      "parents": [
        "de0f60ea94e132c858caa64a44b2012e1e8580b0"
      ],
      "author": {
        "name": "Javier Cardona",
        "email": "javier@cozybit.com",
        "time": "Mon Mar 29 11:00:20 2010 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Apr 06 15:53:28 2010 -0400"
      },
      "message": "mac80211: Handle mesh action frames in ieee80211_rx_h_action\n\nThis fixes the problem introduced in commit\n8404080568613d93ad7cf0a16dfb68 which broke mesh peer link establishment.\n\nchanges:\nv2 \tAdded missing break (Johannes)\nv3 \tBroke original patch into two (Johannes)\n\nSigned-off-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nCc: stable@kernel.org\nReviewed-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e3efca0a63b4ac4d8849d37d082a95cf1a75162d",
      "tree": "5c4e47e62d97fb16ce9447b9514d6773c347dcc0",
      "parents": [
        "9fd1ea428590cf6e35e5a7df32ff6bccfd371db2"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "j@w1.fi",
        "time": "Sun Mar 28 22:31:15 2010 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Mar 31 14:52:15 2010 -0400"
      },
      "message": "mac80211: Fix drop_unencrypted for MFP with hwaccel\n\nCommit bef5d1c70d132145c0fc75b3586a19841a9a82e4 split\nieee80211_drop_unencrypted() into separate functions that are used for\nData and Management frames. However, it did not handle the\nRX_FLAG_DECRYPTED correctly for Management frames:\nieee80211_drop_unencrypted() can only return 0 for Management frames,\nso there is no point in calling it here. Instead, just check the\nstatus-\u003eflag directly.\n\nSigned-off-by: Jouni Malinen \u003cj@w1.fi\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "fa83a2189870cdcd6fb4deeed391e0b988dc9a19",
      "tree": "b8bd693448ce691cd2948e69178f0adfa271d2e2",
      "parents": [
        "ecbcd3243651ae8ac2b73a96c320992a4cf01c5b"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "j@w1.fi",
        "time": "Mon Mar 29 23:36:15 2010 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Mar 31 14:46:42 2010 -0400"
      },
      "message": "mac80211: Fix dropping of unprotected robust multicast frames\n\nWhen selecting the RX key for group-addressed robust management\nframes, we do not actually select any BIP key if the frame is\nunprotected (since we cannot find the key index from MMIE). This\nresults in the drop_unencrypted check in failing to drop the frame. It\nis enough to verify that we have a STA entry for the transmitter and\nthat MFP is enabled for that STA; we do not need to check rx-\u003ekey\nhere. This fixes BIP processing for unprotected, group-addressed,\nrobust management frames.\n\nSigned-off-by: Jouni Malinen \u003cj@w1.fi\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e3cf8b3f7b9eefbe1d39b160726d6e5c2cbb4c5d",
      "tree": "c59a6fcb8d0bcd88d848785a3dbe3978d1568274",
      "parents": [
        "e58b1253f1e850b4469964d7b92cf230196223c0"
      ],
      "author": {
        "name": "Zhu Yi",
        "email": "yi.zhu@intel.com",
        "time": "Mon Mar 29 17:35:07 2010 +0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Mar 31 14:39:34 2010 -0400"
      },
      "message": "mac80211: support paged rx SKBs\n\nMac80211 drivers can now pass paged SKBs to mac80211 via\nieee80211_rx{_irqsafe}. The implementation currently use\nskb_linearize() in a few places i.e. management frame\nhandling, software decryption, defragmentation and A-MSDU\nprocess. We will optimize them one by one later.\n\nSigned-off-by: Zhu Yi \u003cyi.zhu@intel.com\u003e\nCc: Kalle Valo \u003ckalle.valo@iki.fi\u003e\nCc: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "62bb2ac5cb6c2f813e151617525ec518e2d1c649",
      "tree": "75e6d81f02580de06897fa2972b86aec881fe3c4",
      "parents": [
        "31f66be44a657a14e0ab3536e4877c66c9ce031e"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Feb 17 21:27:26 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Mar 09 15:02:53 2010 -0500"
      },
      "message": "mac80211: deprecate RX status noise\n\nThe noise value as is won\u0027t be used, isn\u0027t\nfilled by most drivers and doesn\u0027t really\nmake a whole lot of sense on a per packet\nbasis -- proper cfg80211 survey support in\nmac80211 will need to be different.\n\nMark the struct member as deprecated so it\nwill be removed from drivers.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "bef5d1c70d132145c0fc75b3586a19841a9a82e4",
      "tree": "07f657821d0e903d3caea59378d73a903a1237f2",
      "parents": [
        "04662360854aefcb6337d93701892ad97411fdd0"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Feb 16 11:05:00 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Feb 16 14:16:24 2010 -0500"
      },
      "message": "mac80211: split ieee80211_drop_unencrypted\n\nCurrently, ieee80211_drop_unencrypted is called\nfrom management and data frame context, and the\ndifferent contexts pass different frames. This\ncould lead to it processing an 802.3 frame as an\n802.11 frame when MFP is enabled.\n\nMove the MFP part of ieee80211_drop_unencrypted\ninto a new function that is only called for mgmt\nframes.\n\nCc: Jouni Malinen \u003cj@w1.fi\u003e\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "026331c4d9b526561ea96f95fac4bfc52b69e316",
      "tree": "a82b0a92a7f03a1d151a9db123320689c73d98c7",
      "parents": [
        "8404080568613d93ad7cf0a16dfb68459b42a264"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "jouni.malinen@atheros.com",
        "time": "Mon Feb 15 12:53:10 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Feb 15 16:14:15 2010 -0500"
      },
      "message": "cfg80211/mac80211: allow registering for and sending action frames\n\nThis implements a new command to register for action frames\nthat userspace wants to handle instead of the in-kernel\nrejection. It is then responsible for rejecting ones that\nit decided not to handle. There is no unregistration, but\nthe socket can be closed for that.\n\nFrames that are not registered for will not be forwarded\nto userspace and will be rejected by the kernel, the\ncfg80211 API helps implementing that.\n\nAdditionally, this patch adds a new command that allows\ndoing action frame transmission from userspace. It can be\nused either to exchange action frames on the current\noperational channel (e.g., with the AP with which we are\ncurrently associated) or to exchange off-channel Public\nAction frames with the remain-on-channel command.\n\nSigned-off-by: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8404080568613d93ad7cf0a16dfb68459b42a264",
      "tree": "f09409846d4d2a81f750618082ea65c34854bcd9",
      "parents": [
        "de1ebdceb6a4fe1b7073b81d273285b7c8bed312"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Feb 15 12:46:39 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Feb 15 16:14:13 2010 -0500"
      },
      "message": "mac80211: reject unhandled action frames\n\n802.11-2007 7.3.1.11 mandates that we need to\nreject action frames we don\u0027t handle by setting\nthe 0x80 bit in the category and returning them\nto the sender, so do that. In AP mode, hostapd\nis responsible for this.\n\nAdditionally, drop completely malformed action\nframes or ones that should\u0027ve been encrypted as\nunusable, userspace shouldn\u0027t see those.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e15276a4b220c54db665cf46a92bd9ceb9aeb052",
      "tree": "084ec601adeb65532f6c3a6b52cf1dc728065235",
      "parents": [
        "209c671db7a917740ab9873d442b10ae7e369937"
      ],
      "author": {
        "name": "Vivek Natarajan",
        "email": "vnatarajan@atheros.com",
        "time": "Mon Feb 08 17:47:01 2010 +0530"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Feb 08 16:51:03 2010 -0500"
      },
      "message": "mac80211: Reset dynamic ps timer in Rx path.\n\nThe current mac80211 implementation enables power save if there\nis no Tx traffic for a specific timeout. Hence, PS is triggered\neven if there is a continuous Rx only traffic(like UDP) going on.\nThis makes the drivers to wait on the tim bit in the next beacon\nto awake which leads to redundant sleep-wake cycles.\nFix this by restarting the dynamic ps timer on receiving every\ndata packet.\n\nSigned-off-by: Vivek Natarajan \u003cvnatarajan@atheros.com\u003e\nCC: stable@kernel.org\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": "4754ffd68bc14de8db01451c49bb07adebe1e422",
      "tree": "4ca57be079cc9b46b66898e8a9f0966b83d06645",
      "parents": [
        "e0b20f1c67fc4379fce430ff720969f35e123eed"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Sun Jan 31 21:50:12 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Feb 01 15:40:08 2010 -0500"
      },
      "message": "mac80211: fix sta lookup for received action frames on an AP VLAN\n\nWhen looking for a matching interface, __ieee80211_rx_handle_packet\nloops over all active interfaces, looking for matching stations.\nBecause AP VLAN interfaces are not processed as part of this loop, it\nneeds to use sta_info_get_bss instead of sta_info_get in order to find\na STA that has been moved to a VLAN.\nThis fixes issues with aggregation setup/teardown.\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4bb29f8c390fb7be207ec3f11b9d30ccdf1cb6ac",
      "tree": "27eea1536ee2272eeeb5bd85806e38a77cfe702a",
      "parents": [
        "58da1318ee92ad3fe7917278d596768bbe441850"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Fri Jan 22 00:36:39 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jan 22 16:11:33 2010 -0500"
      },
      "message": "mac80211: fix rx data handling for non-data frames on multiple vifs\n\nThe loop that passes non-data frames to all relevant vifs inside the\n__ieee80211_rx_handle_packet keeps a pointer to the previous sdata to\navoid having to make unnecessary copies of the frame it\u0027s handling.\nThis led to a bug that caused it to apply the ieee80211_rx_data state\nto the wrong interface, thereby either missing the rx.sta pointer or\nhaving it assigned where it shouldn\u0027t be.\nThis breaks (among other things) aggregation on some vifs, as action\nframe exchages are dropped to the cooked monitor interface due to\nrx-\u003esta being NULL.\nFix this by restructuring the loop so that it prepares the rx data just\nbefore making the skb copy and calling the rx handlers.\n\nCc: stable@kernel.org\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "031cf0e94c9c8302a4592707939d6c2039f17f28",
      "tree": "02f3f0d3f89f03217bdb83530af30a95c9ab6191",
      "parents": [
        "730dd70549e0ec755dd55615ba5cfc38a482a947",
        "ad580db50ee8dccd069ffcd76d6f70fa6d4a62a8"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jan 19 15:58:41 2010 -0500"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jan 19 15:58:41 2010 -0500"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n"
    },
    {
      "commit": "d524215f6cad245249df8def19125ae6fd0bcc9b",
      "tree": "4ddbf4b50005a41a8ac69e2d156a78edd47f457d",
      "parents": [
        "199afd9d89b18e8b530734ed73788518e19bed9b"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Fri Jan 08 18:06:26 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jan 12 14:02:06 2010 -0500"
      },
      "message": "mac80211: use nullfunc frames for 4-addr sta detection\n\nTo detect incoming 4-addr stations, hostapd needs to receive a 4-addr\ndata frame from the remote station, so that it can create the AP VLAN\nfor it. With this patch, the mlme code emits a 4-addr nullfunc frame\nimmediately after assoc. On the AP side it also drops 4-addr nullfunc\nframes to the cooked monitor mode interface, if the interface hasn\u0027t\nbeen fully set up to receive 4-addr data frames yet.\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "d79074488083ec0d7ecd15352192dc1631f25643",
      "tree": "3ba73d537ca84153bc6412bf5b9fdcdf1e3e56b9",
      "parents": [
        "045cfb71a3901005bf6dcedae98cecb3360a0bfc"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Thu Jan 07 20:23:53 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jan 08 15:49:28 2010 -0500"
      },
      "message": "mac80211: add missing sanity checks for action frames\n\nVarious missing sanity checks caused rejected action frames to be\ninterpreted as channel switch announcements, which can cause a client\nmode interface to switch away from its operating channel, thereby losing\nconnectivity. This patch ensures that only spectrum management action\nframes are processed by the CSA handling function and prevents rejected\naction frames from getting processed by the MLME code.\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nCc: stable@kernel.org\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": "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": "af6b63741cc4e4dfd575d06beb333b11a8a6e0c0",
      "tree": "a2c1a27b6b6b0fb171606f3653b5c280537b32a3",
      "parents": [
        "f679f65d417c3ea3f91b4bbfb68e3951c9eb8f04"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Dec 23 13:15:35 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Dec 28 16:54:55 2009 -0500"
      },
      "message": "mac80211: generalise work handling\n\nIn order to use auth/assoc for different purposes\nother than MLME, it needs to be split up. For other\npurposes, a generic work handling (potentially on\nanother channel) will be useful.\n\nTo achieve that, this patch moves much of the MLME\nwork handling out of mlme into a new work API. The\nAPI can currently handle probing a specific AP,\nauthentication and association. The MLME previously\nhandled probe/authentication as one step and will\ncontinue to do so, but they are separate in the new\nwork handling.\n\nWork items are RCU-managed to be able to check for\nexistence of an item for a specific frame in the RX\npath, but they can be re-used which the MLME right\nnow will do for its combined probe/auth step.\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"
    }
  ],
  "next": "ea1e4b842049fcc4741096538114871a74859314"
}
