)]}'
{
  "log": [
    {
      "commit": "c26a0e105cf11fa482116cc59a7c6cd9c01dd61b",
      "tree": "265be7420091df54ba2bb79e9d8610bb1a9c5967",
      "parents": [
        "bfc441a4bbe9b7a56d3611cc14c98cce3a573565"
      ],
      "author": {
        "name": "Claudio Pisa",
        "email": "claudio.pisa@uniroma2.it",
        "time": "Mon May 28 13:06:25 2012 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue May 29 13:45:23 2012 -0400"
      },
      "message": "mac80211: fix flag check for QoS NOACK frames\n\nSigned-off-by: Claudio Pisa \u003cclaudio.pisa@uniroma2.it\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e87cc4728f0e2fb663e592a1141742b1d6c63256",
      "tree": "b8219696d37f0c8d0521d5853560b97fc96dc667",
      "parents": [
        "3a3bfb61e64476ff1e4ac3122cb6dec9c79b795c"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Sun May 13 21:56:26 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 15 13:45:03 2012 -0400"
      },
      "message": "net: Convert net_ratelimit uses to net_\u003clevel\u003e_ratelimited\n\nStandardize the net core ratelimited logging functions.\n\nCoalesce formats, align arguments.\nChange a printk then vprintk sequence to use printf extension %pV.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b203ca39126bad99583c908be587df067820a1ea",
      "tree": "940e32bd15392b400cf50c2ac31c7895637c09fe",
      "parents": [
        "c47fc9814ca15cc075f1f09e8c069b041f2ea397"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue May 08 18:56:52 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 09 20:49:18 2012 -0400"
      },
      "message": "mac80211: Convert compare_ether_addr to ether_addr_equal\n\nUse the new bool function ether_addr_equal to add\nsome clarity and reduce the likelihood for misuse\nof compare_ether_addr for sorting.\n\nDone via cocci script:\n\n$ cat compare_ether_addr.cocci\n@@\nexpression a,b;\n@@\n-\t!compare_ether_addr(a, b)\n+\tether_addr_equal(a, b)\n\n@@\nexpression a,b;\n@@\n-\tcompare_ether_addr(a, b)\n+\t!ether_addr_equal(a, b)\n\n@@\nexpression a,b;\n@@\n-\t!ether_addr_equal(a, b) \u003d\u003d 0\n+\tether_addr_equal(a, b)\n\n@@\nexpression a,b;\n@@\n-\t!ether_addr_equal(a, b) !\u003d 0\n+\t!ether_addr_equal(a, b)\n\n@@\nexpression a,b;\n@@\n-\tether_addr_equal(a, b) \u003d\u003d 0\n+\t!ether_addr_equal(a, b)\n\n@@\nexpression a,b;\n@@\n-\tether_addr_equal(a, b) !\u003d 0\n+\tether_addr_equal(a, b)\n\n@@\nexpression a,b;\n@@\n-\t!!ether_addr_equal(a, b)\n+\tether_addr_equal(a, b)\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0d6c4a2e4641bbc556dd74d3aa158c413a972492",
      "tree": "da944af17682659bb433dc2282dcb48380c14cd1",
      "parents": [
        "6e06c0e2347ec79d0bd5702b2438fe883f784545",
        "1c430a727fa512500a422ffe4712166c550ea06a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 07 23:35:40 2012 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 07 23:35:40 2012 -0400"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\nConflicts:\n\tdrivers/net/ethernet/intel/e1000e/param.c\n\tdrivers/net/wireless/iwlwifi/iwl-agn-rx.c\n\tdrivers/net/wireless/iwlwifi/iwl-trans-pcie-rx.c\n\tdrivers/net/wireless/iwlwifi/iwl-trans.h\n\nResolved the iwlwifi conflict with mainline using 3-way diff posted\nby John Linville and Stephen Rothwell.  In \u0027net\u0027 we added a bug\nfix to make iwlwifi report a more accurate skb-\u003etruesize but this\nconflicted with RX path changes that happened meanwhile in net-next.\n\nIn e1000e a conflict arose in the validation code for settings of\nadapter-\u003eitr.  \u0027net-next\u0027 had more sophisticated logic so that\nlogic was used.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "66f2c99af3d6f2d0aa1120884cf1c60613ef61c0",
      "tree": "97742b014e6e85aabc03d84e7604ebf557d6a438",
      "parents": [
        "4c1bcdb5a3354b250b82a67549f57ac27a3bb85f"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Sun Apr 29 15:44:16 2012 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Apr 30 14:40:05 2012 -0400"
      },
      "message": "mac80211: fix AP mode EAP tx for VLAN stations\n\nEAP frames for stations in an AP VLAN are sent on the main AP interface\nto avoid race conditions wrt. moving stations.\nFor that to work properly, sta_info_get_bss must be used instead of\nsta_info_get when sending EAP packets.\nPreviously this was only done for cooked monitor injected packets, so\nthis patch adds a check for tx-\u003eskb-\u003eprotocol to the same place.\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nCc: stable@vger.kernel.org\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "030ef8f8a59c77d44cadeded6d3a5a12557774f4",
      "tree": "f9a21ddf7b127badf8619ffbc4809c74870eb3fc",
      "parents": [
        "be6bcabc7919522f28c99642b8e04ef7b8e19283"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Mon Apr 23 19:49:02 2012 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Apr 24 14:54:28 2012 -0400"
      },
      "message": "mac80211: rename AP variable num_sta_authorized to num_mcast_sta\n\nIt is only used to test for BSS multicast receivers.\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nReviewed-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4ee73f338a528f44fd90496adfbfd9c119401850",
      "tree": "665c02d2ec013a09b252713c8f94b604f6050cc7",
      "parents": [
        "f58cc809d2fe60989095c7b55fd14e1935a2f72a"
      ],
      "author": {
        "name": "Michal Kazior",
        "email": "michal.kazior@tieto.com",
        "time": "Wed Apr 11 08:47:56 2012 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Apr 13 14:32:50 2012 -0400"
      },
      "message": "mac80211: remove hw.conf.channel usage where possible\n\nRemoves hw.conf.channel usage from the following functions:\n * ieee80211_mandatory_rates\n * ieee80211_sta_get_rates\n * ieee80211_frame_duration\n * ieee80211_rts_duration\n * ieee80211_ctstoself_duration\n\nThis is in preparation for multi-channel operation.\n\nSigned-off-by: Michal Kazior \u003cmichal.kazior@tieto.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "3a25a8c8b75b430c4f4022918e26fa51d557ecde",
      "tree": "d4863b7f17c2ea44fb523e29951b6bd202ddb1ad",
      "parents": [
        "4b6f1dd6a6faf4ed8d209bbd548e78b15e55aee8"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Tue Apr 03 16:28:50 2012 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Apr 11 16:23:50 2012 -0400"
      },
      "message": "mac80211: add improved HW queue control\n\nmac80211 currently only supports one hardware queue\nper AC. This is already problematic for off-channel\nuses since if we go off channel while the BE queue\nis full and then try to send an off-channel frame\nthe frame will never go out. This will become worse\nwhen we support multi-channel since then a queue on\none channel might be full, but we have to stop the\nsoftware queue for all channels. That is obviously\nnot desirable.\n\nTo address this problem allow drivers to register\nmore hardware queues, and allow them to map them to\nvirtual interfaces. When they stop a hardware queue\nthe corresponding AC software queues on the correct\ninterfaces will be stopped as well. Additionally,\nthere\u0027s an off-channel queue to solve that problem\nand a per-interface after-DTIM beacon queue. This\nallows drivers to manage software queues closer to\nhow the hardware works.\n\nCurrently, there\u0027s a limit of 16 hardware queues.\nThis may or may not be sufficient, we can adjust it\nas needed.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4b6f1dd6a6faf4ed8d209bbd548e78b15e55aee8",
      "tree": "7d79667ca414d70b99cb82a646d1a3c2cc466670",
      "parents": [
        "3edaf3e61fda3aa9ff8d38445bf92f2bec23bf63"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Tue Apr 03 14:35:57 2012 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Apr 11 16:23:49 2012 -0400"
      },
      "message": "mac80211: add explicit monitor interface if needed\n\nThe queue mapping redesign that I\u0027m planning to do\nwill break pure injection unless we handle monitor\ninterfaces explicitly. One possible option would\nbe to have the driver tell mac80211 about monitor\nmode queues etc., but that would duplicate the API\nsince we already need to have queue assignments\nhandled per virtual interface.\n\nSo in order to solve this, have a virtual monitor\ninterface that is added whenever all active vifs\nare monitors. We could also use the state of one\nof the monitor interfaces, but managing that would\nbe complicated, so allocate separate state.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "657c3e0c4147bb3d3fdd338e32b83b968b0f9d02",
      "tree": "06f4f3fb9f7a01b6eb823d2f7a7d0f76c76a28aa",
      "parents": [
        "d934f7d0d6a3f8aa3049ca0692948ec59d738928"
      ],
      "author": {
        "name": "Ashok Nagarajan",
        "email": "ashok@cozybit.com",
        "time": "Mon Apr 02 21:21:20 2012 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Apr 11 16:23:46 2012 -0400"
      },
      "message": "mac80211: Indicate basic rates when adding rate IEs\n\nBasic rates are added with supported rates IE and extended supported\nrates IE.\n\nSigned-off-by: Ashok Nagarajan \u003cashok@cozybit.com\u003e\nSigned-off-by: Thomas Pedersen \u003cthomas@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "dbf498fbafa2c23139d5a990e94ed78bafbbea19",
      "tree": "723a2ed4575ab2178cbd210d85a19d5c968a95a1",
      "parents": [
        "9bdd3a6bf8513a0a9eda031d15b36e4677854243"
      ],
      "author": {
        "name": "Javier Cardona",
        "email": "javier@cozybit.com",
        "time": "Sat Mar 31 11:31:32 2012 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Apr 10 15:20:31 2012 -0400"
      },
      "message": "mac80211: Implement mesh synchronization framework\n\nThis patch adds MBSS extensible synchronization framework (Sec.\n13.13.2 of IEEE Std. 802.11-2012).\n\nThe framework is implemented via an ops table which defines the\nfollowing functions:\n\n    rx_bcn_presp() - this is called every time a mesh beacon is\nreceived.\n    adjust_tbtt() - this is called immediately before a beacon is about\nto be transmitted.\n\nThe default neighbor offset synchronization defined in the standard is\nimplemented.  We also provide template functions for vendor specific\nmethods.\n\nWhen neighbor offset synchronization is active (which is the default)\nmesh neighbors in the same MBSS will track timing offsets to each other\nand compensate clock drift.\n\nIn our tests we observed that this mesh synchronization implementation\nsuccessfully corrected drifts between stations of ~2PPM while\nintroducing a jitter of ~20us.\n\nIt is also possible to test this framework on mac80211_hwsim simulated\nphys to see how it behaves under different topologies, over poor links,\netc.\n\nSigned-off-by: Marco Porsch \u003cmarco.porsch@s2005.tu-chemnitz.de\u003e\nSigned-off-by: Pavel Zubarev \u003cpavel.zubarev@gmail.com\u003e\nSigned-off-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "88c868c43ba38ac3bab07bab4c45b4bc44c94357",
      "tree": "c56c66967ebb4a33142a54ef94396340656399bf",
      "parents": [
        "32c5057b22a60b23353dda93c57e475856ca286c"
      ],
      "author": {
        "name": "Stanislaw Gruszka",
        "email": "sgruszka@redhat.com",
        "time": "Thu Mar 29 16:30:41 2012 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Apr 10 15:20:28 2012 -0400"
      },
      "message": "mac80211: sanity check for null SSID\n\nWhile associated we should never have empty SSID, but life can be full\nof surprises, and is allways better to print a warning than crash.\n\nBefore memcpy() in ieee80211_probereq_get() check ssid_len instead of\nssid pointer, sice pointer it always passed by \"ssidie + 2\" expression\nto send probe functions, so practically never can be NULL.\n\nSigned-off-by: Stanislaw Gruszka \u003csgruszka@redhat.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "32c5057b22a60b23353dda93c57e475856ca286c",
      "tree": "68a80dd3fb3a93f0eacf1566c3dd60877efe6cf2",
      "parents": [
        "4644ae89033872a62b4fea6ca96b958e115efdc0"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Wed Mar 28 11:04:29 2012 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Apr 10 14:56:10 2012 -0400"
      },
      "message": "mac80211: use IEEE80211_NUM_ACS\n\nWhen comparing hw-\u003equeues to determine if the\ndevice is QoS capable, use IEEE80211_NUM_ACS\ninstead of just 4.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4875d30df594eb47746b16073067e316968edd53",
      "tree": "f26e9d3eb9580959c56609324f372686e7960f97",
      "parents": [
        "98aed9fd0104ef2d8e6b5154c9713e0e27e5f9c8"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Tue Mar 27 14:18:37 2012 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Apr 10 14:54:06 2012 -0400"
      },
      "message": "mac80211: clean up uAPSD TX code\n\nClean up the code formatting and also replace\nthe constant 0 by IEEE80211_AC_VO.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "98aed9fd0104ef2d8e6b5154c9713e0e27e5f9c8",
      "tree": "51c6cedb3037018fe12c384a191cfe1d75dfb7bc",
      "parents": [
        "99fec5dee8f717daf2b1789e8ac5913863c6dee8"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Tue Mar 27 14:18:36 2012 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Apr 10 14:54:05 2012 -0400"
      },
      "message": "mac80211: fix mesh TX coding style\n\nFix bad indentation \u0026 pointless if nesting.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "12d3952fc4a1cd96234bc7023bf7eefeb0bb6355",
      "tree": "5c3437e1f996a5c772b286530a3fce547a7d40f2",
      "parents": [
        "fcb2c9e1025cd529890303ffbde813a98cdffed4"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Sun Mar 18 22:58:06 2012 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Apr 09 16:09:36 2012 -0400"
      },
      "message": "mac80211: optimize aggregation session timeout handling\n\nCalling mod_timer from the rx/tx hotpath is somewhat expensive, and the\ntimeout doesn\u0027t need to be so precise.\n\nSwitch to a different strategy: Schedule the timer initially, store jiffies\nof all last rx/tx activity which would previously modify the timer, and\nlet the timer re-arm itself after checking the last rx/tx timestamp.\nMake the session timers deferrable to avoid causing extra wakeups on systems\nrunning on battery.\nThis visibly reduces CPU load under high network load on small embedded\nsystems.\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "074d46d1d23f27488a3f314e29cae2453541f17d",
      "tree": "c6abb99637c808f6eb9da722c3197cc980ce1a98",
      "parents": [
        "f69b9c79c99b607a8d6b1d9e1913861154af8c63"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Mar 15 19:45:16 2012 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Apr 09 16:05:55 2012 -0400"
      },
      "message": "wireless: rename ht_info to ht_operation\n\nSince some of the HT code pre-dates 802.11n-2009\nsome names are wrong. The one that bothers me most\nis that \"HT operation\" is called \"HT information\"\nin our code and that causes confusion.\n\nRename \"HT information\" to \"HT operation\" and also\nthe control_chan field to primary_chan to match\nthe name used in the spec.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nAcked-by: Bing Zhao \u003cbzhao@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "dc41e4d474bb18e60bc6678e58adc52ed227f105",
      "tree": "9a218ec7a9ccfca2bb92f655b270271e765b4433",
      "parents": [
        "ada577c12f7cd8851c999a9f19f62df06df7c39a"
      ],
      "author": {
        "name": "Eliad Peller",
        "email": "eliad@wizery.com",
        "time": "Wed Mar 14 16:15:03 2012 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Mar 15 13:43:12 2012 -0400"
      },
      "message": "mac80211: make uapsd_* keys per-vif\n\nuapsd_queues and uapsd_max_sp_len are relevant only for managed\ninterfaces, and can be configured differently for each vif.\n\nMove them from the local struct to sdata-\u003eu.mgd, and update\nthe debugfs functions accordingly.\n\nSigned-off-by: Eliad Peller \u003celiad@wizery.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "aa4545806025c63ec12cfe17528de16dca36b785",
      "tree": "a979799e3eb20b97f92483d327ea2f4115fe11af",
      "parents": [
        "4486ea987efdaa546bdda569e3dfacdc14a9fb13"
      ],
      "author": {
        "name": "Helmut Schaa",
        "email": "helmut.schaa@googlemail.com",
        "time": "Wed Mar 07 17:20:30 2012 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Mar 12 14:19:35 2012 -0400"
      },
      "message": "mac80211: Limit TID buffering during BA session setup/teardown\n\nWhile setting up or tearing down a BA session mac80211 is buffering\npending frames for the according TID. However, there\u0027s currently no\nlimit on how many frames are buffered possibly leading to an out-of-\nmemory situation. This can happen on systems with little memory when\nthe CPU is fully loaded since the BA session work is executed in\nprocess context while frames can still come via softirq.\n\nApply a limitation to the TIDs pending queue to avoid consuming\ntoo much memory in this situation.\n\nSigned-off-by: Helmut Schaa \u003chelmut.schaa@googlemail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "02f2f1a951f87644166926862ec32fb13511e2f3",
      "tree": "77d5ac88a112aeb9f18887277dabf311b7ec0e8a",
      "parents": [
        "5eb02e44adc92a71bae3ff60acb1eea5ada14e93"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Mon Feb 27 12:18:30 2012 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Feb 29 14:14:54 2012 -0500"
      },
      "message": "mac80211: handle non-bufferable MMPDUs correctly\n\nThis renames the IEEE80211_TX_CTL_POLL_RESPONSE\nTX flag to IEEE80211_TX_CTL_NO_PS_BUFFER and also\nuses it for non-bufferable MMPDUs (all MMPDUs but\ndeauth, disassoc and action frames.)\n\nPreviously, mac80211 would let the MMPDU through\nbut not set the flag so drivers supporting some\nhardware aids for avoiding the PS races would\nthen reject the frame.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "005e472b45131250fe09c194f8b872b86fd266c1",
      "tree": "dbeb7fe7ee8fdf8ff39c4ded9e647942ad15e639",
      "parents": [
        "3431683759596409427b6726e582f3ee66082728"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Sun Feb 26 11:24:35 2012 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Feb 27 14:06:42 2012 -0500"
      },
      "message": "mac80211: remove local_to_hw\n\nThat\u0027s a lot longer than open-coding it and\ndoesn\u0027t really add value, so just remove it.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8860020e0be1f03d83dc9e9e93e18a4ddbe01038",
      "tree": "09fa9089770e8a42e913f6c11abbba04bec20fad",
      "parents": [
        "4e3bc141d480661634d0fadad7dbb1ddde70b4d4"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Mon Feb 13 15:17:18 2012 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Feb 22 14:51:18 2012 -0500"
      },
      "message": "cfg80211: restructure AP/GO mode API\n\nThe AP/GO mode API isn\u0027t very clearly defined, it\nhas \"set beacon\" and \"new beacon\" etc.\n\nModify the API to the following:\n * start AP -- all settings\n * change beacon -- new beacon data\n * stop AP -- stop AP mode operation\n\nThis also reflects in the nl80211 API, rename\nthe commands there correspondingly (but keep\nthe old names for compatibility.)\n\nOverall, this makes it much clearer what\u0027s going\non in the API.\n\nKalle developed the ath6kl changes, I created\nthe rest of the patch.\n\nSigned-off-by: Kalle Valo \u003ckvalo@qca.qualcomm.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "19468413e8d98d44be8daf0acaf8d576dfc53fa2",
      "tree": "99d7df720566824c4588ccff03c65e60c381e60d",
      "parents": [
        "24db78c05b1e3ccb5a78aedd17aa1008c91dab5a"
      ],
      "author": {
        "name": "Simon Wunderlich",
        "email": "simon.wunderlich@s2003.tu-chemnitz.de",
        "time": "Sat Jan 28 17:25:33 2012 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jan 30 15:48:26 2012 -0500"
      },
      "message": "mac80211: add support for mcs masks\n\n* Handle MCS masks set by the user.\n* Match rates provided by the rate control algorithm to the mask set,\n  also in HT mode, and switch back to legacy mode if necessary.\n* add debugfs files to observate the rate selection\n\nSigned-off-by: Simon Wunderlich \u003csiwu@hrz.tu-chemnitz.de\u003e\nSigned-off-by: Mathias Kretschmer \u003cmathias.kretschmer@fokus.fraunhofer.de\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "d32a102819eef99d4d87019266bea208447be0a0",
      "tree": "ff6484ac0f843dc48c24db2604bfbef1424967e0",
      "parents": [
        "331d9301ed4d0fe33e9762c62f2870243bcf77eb"
      ],
      "author": {
        "name": "Yoni Divinsky",
        "email": "yoni.divinsky@ti.com",
        "time": "Mon Jan 16 15:18:59 2012 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jan 16 15:01:16 2012 -0500"
      },
      "message": "mac80211: fix tx-\u003eskb NULL pointer dereference\n\nIn function ieee80211_tx_h_encrypt the var info was\ninitialized from tx-\u003eskb, since the fucntion\nis called after the function ieee80211_tx_h_fragment\ntx-\u003eskb is not valid anymore.\n\nSigned-off-by: Yoni Divinsky \u003cyoni.divinsky@ti.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "cf6bb79ad8287cd9fe8783aa8c9afdc9f6799657",
      "tree": "771c8d4bfe3e2dc760210ef3672e709c67275d08",
      "parents": [
        "4d33960bf9fa2c0ee82ba7120e7b56c766dd3a86"
      ],
      "author": {
        "name": "Helmut Schaa",
        "email": "helmut.schaa@googlemail.com",
        "time": "Thu Dec 15 10:18:34 2011 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Dec 15 14:46:35 2011 -0500"
      },
      "message": "mac80211: Use appropriate TID for sending BAR, ADDBA and DELBA frames\n\nCurrently BAR, ADDBA and DELBA frames are always sent using AC_VO. If\nthe TID for which a BA session is established is assigned to a different\nqueue BAR, ADDBA and DELBA frames can \"overtake\" frames of the according\nBA session.\n\nHence, always put BA session related frames into the same queue as the\nBA sessions data frames.\n\nSigned-off-by: Helmut Schaa \u003chelmut.schaa@googlemail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4d33960bf9fa2c0ee82ba7120e7b56c766dd3a86",
      "tree": "b75891edc02c3aa754a9fd32e34f408051e77983",
      "parents": [
        "8bf11d8d081106c3cce8281a0150e716f8ac5d22"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Dec 15 11:24:20 2011 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Dec 15 14:46:35 2011 -0500"
      },
      "message": "mac80211: reduce station management complexity\n\nNow that IBSS no longer needs to insert stations\nfrom atomic context, we can get rid of all the\nspecial cases for that, and even get rid of the\nsta_lock (though it needs to stay as tim_lock.)\n\nThis makes the station management code much more\nstraight-forward.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "29623892e185b65a503c925236ff73894a842d38",
      "tree": "a159e711035d4003ea64b52d3601a0be6f77e61b",
      "parents": [
        "d9a7ddb05e5419ca5e4b54f57074dc33c7ea991c"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Wed Dec 14 12:20:31 2011 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Dec 15 14:46:34 2011 -0500"
      },
      "message": "mac80211: count authorized stations per BSS\n\nCurrently, each AP interface will send multicast\ntraffic if any interface has a station entry even\nif that station entry is allocated only. With the\nnew station state management we can easily fix it\nby adding a counter that counts each authorized\nstation only and send multicast traffic only when\nthe correct interface has at least one authorized\nstation.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "d9a7ddb05e5419ca5e4b54f57074dc33c7ea991c",
      "tree": "3de3213e7e79a64254ea778374aeaaffa61b5bab",
      "parents": [
        "87be1e1e00f870567780dec111193426b4c085e8"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Wed Dec 14 12:35:30 2011 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Dec 15 14:46:34 2011 -0500"
      },
      "message": "mac80211: refactor station state transitions\n\nStation entries can have various states, the most\nimportant ones being auth, assoc and authorized.\nThis patch prepares us for telling the driver about\nthese states, we don\u0027t want to confuse drivers with\nstrange transitions, so with this we enforce that\nthey move in the right order between them (back and\nforth); some transitions might happen before the\ndriver even knows about the station, but at least\nruntime transitions will be ordered correctly.\n\nAs a consequence, IBSS and MESH stations will now\nhave the ASSOC flag set (so they can transition to\nAUTHORIZED), and we can get rid of a special case\nin TX processing.\n\nWhen freeing a station, unwind the state so that\nother parts of the code (or drivers later) can rely\non the transitions.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "aa5b549215f85cf48a7040bc9d33c4dae0c7d11a",
      "tree": "99558936788c104390443012594bd4de73be69c3",
      "parents": [
        "79e3b16b7123018610f2754ce1bd219c5dd844f5"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Dec 02 22:08:52 2011 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Dec 06 16:07:07 2011 -0500"
      },
      "message": "mac80211: fix retransmit\n\nThis fixes another regression from my \"pass all\nfragments to driver at once\" patches -- if the\npacket is being retransmitted then we don\u0027t go\nthrough all handlers, but we still need to move\nit to the skbs list, otherwise we run into the\nfirst warning in __ieee80211_tx() and leak the\nskb.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "0cfda8519c85eb279166fb55a8553ee66eac9b35",
      "tree": "55f917c9402c0164a76c80b4675ea173562a869f",
      "parents": [
        "dca7e9430cb3e492437a5ce891b8b3e315c147ca"
      ],
      "author": {
        "name": "Thomas Pedersen",
        "email": "thomas@cozybit.com",
        "time": "Thu Nov 24 17:15:25 2011 -0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Nov 28 14:44:07 2011 -0500"
      },
      "message": "mac80211: don\u0027t initiate path discovery when forwarding frame with unknown DA\n\nWe used to initiate a path discovery when receiving a frame for which\nthere is no forwarding information. To cut down on PREQ spam, just send\na (gated) PERR in response.\n\nAlso separate path discovery logic from nexthop querying. This patch\nmeans we no longer queue frames when forwarding, so kill the PERR TX\nstuff in discard_frame().\n\nSigned-off-by: Thomas Pedersen \u003cthomas@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4bb62344e4703414fd253ceb07c163ac37da80d4",
      "tree": "dd8e23fa687ccf2cf21491ccd012fa0447fc08c5",
      "parents": [
        "090891fb2c68eecf95c18c8ba117fc850d21abf8"
      ],
      "author": {
        "name": "Chun-Yeow Yeoh",
        "email": "yeohchunyeow@gmail.com",
        "time": "Thu Nov 24 17:15:20 2011 -0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Nov 28 14:44:02 2011 -0500"
      },
      "message": "{nl,cfg,mac}80211: Allow Setting Multicast Rate in Mesh\n\nSigned-off-by: Chun-Yeow Yeoh \u003cyeohchunyeow@gmail.com\u003e\nSigned-off-by: Thomas Pedersen \u003cthomas@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5220da39b4f6bd2ee69d298111ebebc0de886f2f",
      "tree": "ce3f10fe8005a140e0539a424a7e1dfdad492a4d",
      "parents": [
        "4db4e0a17fb0e7b345b344cde141b252794c2f19"
      ],
      "author": {
        "name": "Eliad Peller",
        "email": "eliad@wizery.com",
        "time": "Thu Nov 24 16:50:00 2011 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Nov 28 14:43:57 2011 -0500"
      },
      "message": "mac80211: call skb_put() before copying the data (trivial)\n\nIt doesn\u0027t have any actual effect here, but we should\nskb_put() *before* copying the data.\n\nSigned-off-by: Eliad Peller \u003celiad@wizery.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4db4e0a17fb0e7b345b344cde141b252794c2f19",
      "tree": "13ce0ef31d02d0dafb377e510dda0e4be5b6fbe1",
      "parents": [
        "4883993841638963fbae2f334899f29309466152"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Nov 24 14:47:36 2011 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Nov 28 14:43:56 2011 -0500"
      },
      "message": "mac80211: fix TX warning\n\nEmmanuel reported that my previous patches to enable\nhanding all fragments to drivers at once triggered\nthe warning that the SKB queue wasn\u0027t empty. This is\nhappening when we actually queue up some frames and\ndon\u0027t hand them to the driver (queues are stopped).\n\nThe reason for it is that my code that splices the\nframe(s) over to the pending queue didn\u0027t re-init\nthe local queue, so skb_queue_empty() was false. Fix\nthis by using the _init versions of the splicing.\n\nAlso, convert the warning to WARN_ON_ONCE.\n\nReported-by: Emmanuel Grumbach \u003cemmanuel.grumbach@intel.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nTested-by: Emmanuel Grumbach \u003cemmanuel.grumbach@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "285fa6958c1d56469ec8a0e879ae7487a4e62840",
      "tree": "c0c335499809c2b90ef145576e726543c508e67c",
      "parents": [
        "94c2fb82bd7c9055bec8e410c387befce33d1299"
      ],
      "author": {
        "name": "Nikolay Martynov",
        "email": "mar.kolya@gmail.com",
        "time": "Tue Nov 22 21:50:28 2011 -0500"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Nov 28 14:43:49 2011 -0500"
      },
      "message": "mac80211: timeout tx agg sessions in way similar to rx agg sessions\n\n  Currently tx aggregation is not being timed out even if timeout is\nspecified when aggregation is opened. Tx tid stays active until delba\narrives from recipient (i.e. recipient times out tid when it is\ninactive).\n  The problem with this approach is that delba can get lost in the air\nand tx tid will stay perpetually opened on the originator while closed\non recipient thus all data sent via this tid will be lost.\n  This patch implements tx tid timeouting in way very similar to rx tid\ntimeouting.\n\nSigned-off-by: Nikolay Martynov \u003cmar.kolya@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "6674f210e9dbf30e592ccd85b0cf90bd8d1d2d28",
      "tree": "511ac1f57e551b0cfcbe683630a21a39113fcfdb",
      "parents": [
        "b53be7920bd9bb1bb99fecc2ff537bc79d24082f"
      ],
      "author": {
        "name": "Simon Wunderlich",
        "email": "simon.wunderlich@s2003.tu-chemnitz.de",
        "time": "Mon Nov 21 21:34:30 2011 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Nov 28 14:36:21 2011 -0500"
      },
      "message": "mac80211: fix duration calculation for QoS NOACK frames\n\nSigned-off-by: Simon Wunderlich \u003csiwu@hrz.tu-chemnitz.de\u003e\nSigned-off-by: Mathias Kretschmer \u003cmathias.kretschmer@fokus.fraunhofer.de\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "6fd67e937ece538e0ab766df96a9895e6fd622df",
      "tree": "c3c09e2d08d59f9de71d059a89a09b0716e11705",
      "parents": [
        "eb1852b10593dc3ca73e02bf9ac4753a5a464905"
      ],
      "author": {
        "name": "Simon Wunderlich",
        "email": "simon.wunderlich@s2003.tu-chemnitz.de",
        "time": "Fri Nov 18 14:20:42 2011 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Nov 28 14:34:15 2011 -0500"
      },
      "message": "mac80211: remove debugfs noack test\n\nThis feature has been superseded by the NoAck per Queue feature.\n\nSigned-off-by: Simon Wunderlich \u003csiwu@hrz.tu-chemnitz.de\u003e\nSigned-off-by: Mathias Kretschmer \u003cmathias.kretschmer@fokus.fraunhofer.de\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "515db09338704a6ad7d27b5f1e33820d3052edd2",
      "tree": "74f915531710303397d34069b325c2be7a5ac93c",
      "parents": [
        "30be52e44fd4276d768efffb55d424fb682e6505",
        "cfcfc9eca2bcbd26a8e206baeb005b055dbf8e37"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Nov 22 14:05:46 2011 -0500"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Nov 22 14:05:46 2011 -0500"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux\n\nConflicts:\n\tdrivers/net/wireless/iwlegacy/iwl-debugfs.c\n\tdrivers/net/wireless/iwlegacy/iwl-rx.c\n\tdrivers/net/wireless/iwlegacy/iwl-scan.c\n\tdrivers/net/wireless/iwlegacy/iwl-tx.c\n\tinclude/net/bluetooth/bluetooth.h\n"
    },
    {
      "commit": "11127e9121d4dd9da868cf0fd89dcac35f7f0fa3",
      "tree": "8cb16ecbd5942679c18934064b935a7e256a77da",
      "parents": [
        "74e4dbfd57a38c4ec4131cebdbfa3d621d38dd6a"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Wed Nov 16 16:02:47 2011 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Nov 21 16:20:43 2011 -0500"
      },
      "message": "mac80211: transmit fragment list to drivers\n\nDrivers can usually handle fragmented packets\nmuch easier when they get the entire list of\nfragments at once. The only thing they need to\ndo is keep enough space on the queues for up\nto ten fragments of a single MSDU.\n\nThis allows them to implement this with a new\noperation tx_frags.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "74e4dbfd57a38c4ec4131cebdbfa3d621d38dd6a",
      "tree": "bd588ddd978986870d5d7f9710a86fc8d86c9693",
      "parents": [
        "a1a3fcec6fcc36482c1c57bde7ed4078313495cd"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Wed Nov 16 15:28:57 2011 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Nov 21 16:20:43 2011 -0500"
      },
      "message": "mac80211: make TX LED handling independent of fragmentation\n\nThis just prepares for passing the entire fragment\nlist to the driver. No significant changes, but the\nTX throughput is calculated slightly differently\nnow and we blink only once for each MSDU.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a1a3fcec6fcc36482c1c57bde7ed4078313495cd",
      "tree": "964cc2165660bc85a49702e589c01810de1fe565",
      "parents": [
        "252b86c43225d067468dd182e9ae616ad2532bc8"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Wed Nov 16 15:28:56 2011 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Nov 21 16:20:42 2011 -0500"
      },
      "message": "mac80211: move fragment flag adjustment\n\nInstead of adjusting the fragment flags at\nTX time, adjust them at fragmentation time.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "252b86c43225d067468dd182e9ae616ad2532bc8",
      "tree": "d584ef11ebd143960c1890e361a89653fb9812c9",
      "parents": [
        "83c76570961573e56a238d84ba18f2581ef1e6b5"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Wed Nov 16 15:28:55 2011 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Nov 21 16:20:42 2011 -0500"
      },
      "message": "mac80211: use skb list for fragments\n\nWe are currently linking the skbs by using skb-\u003enext\ndirectly. This works, but the preferred way is to use\na struct sk_buff_head instead. That also prepares for\npassing that to drivers directly.\n\nWhile at it I noticed we calculate the duration for\nfragments twice -- remove one of them.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a7f23f0a8f6be9d95d8110d34b21ccce03111447",
      "tree": "bccc6bb18bbb60dbfb5480717f8c603fce083d23",
      "parents": [
        "8505a7e652c8a37bdacfd9d6ad5096c793f55ceb"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Mon Nov 14 15:02:44 2011 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Nov 17 15:43:56 2011 -0500"
      },
      "message": "mac80211: remove crypto special case for auth frames\n\nThe shared key authentication frame that needs to be\nencrypted (the third one in the shared key handshake)\nis directly encrypted in ieee80211_send_auth and the\nIEEE80211_TX_INTFL_DONT_ENCRYPT is set. All others\nare not encrypted, so the only way to get to this is\nerroneously on no-monitor AP side.\n\nRemove the special case for authentication frames to\nfix the AP shared key side when operating without\ncooked monitor interfaces -- with cooked monitor the\nIEEE80211_TX_INTFL_DONT_ENCRYPT also gets set, so we\nnever get here -- an AP never encrypts auth frames.\n\nWithout this patch, an AP operating in WEP mode with\nmy no-monitor patches would erroneously encrypt all\nauthentication frames, instead of none.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "029458212604570eec4789049a8a74428484dbb4",
      "tree": "cabbe65d50e83498300a25b02a67f8475c02c3b7",
      "parents": [
        "00f740e1a3b7abb51980371ee8fa113df22ae0b8"
      ],
      "author": {
        "name": "Arik Nemtsov",
        "email": "arik@wizery.com",
        "time": "Thu Nov 10 11:28:57 2011 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Nov 11 12:32:51 2011 -0500"
      },
      "message": "mac80211: Save probe response data for bss\n\nAllow setting a probe response template for an interface operating in\nAP mode. Low level drivers are notified about changes in the probe\nresponse template and are able to retrieve a copy of the current probe\nresponse. This data can, for example, be uploaded to hardware as a\ntemplate.\n\nSigned-off-by: Guy Eilam \u003cguy@wizery.com\u003e\nSigned-off-by: Arik Nemtsov \u003carik@wizery.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a729cff8ad5120d0d5172ec28a3843d1cb458f79",
      "tree": "96e85c0805050ba03a2df2a4278640da8f0454c5",
      "parents": [
        "1f074bd8eb7a4a210a5119cd7220f89da6c7a2c3"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Sun Nov 06 14:13:34 2011 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Nov 09 16:14:09 2011 -0500"
      },
      "message": "mac80211: implement wifi TX status\n\nImplement the socket wifi TX status error\nqueue reflection in mac80211.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "176f36086e8a00bdf701dc6e4c5a8784ef6529df",
      "tree": "808f70cf8db3eff72f66941516a3d39594ad6992",
      "parents": [
        "42e7aa771196d8129d9deaee950b3177a443b8cf"
      ],
      "author": {
        "name": "Thomas Pedersen",
        "email": "thomas@cozybit.com",
        "time": "Wed Oct 26 14:47:27 2011 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Nov 08 15:54:33 2011 -0500"
      },
      "message": "mac80211: add HT IEs to mesh frames\n\nSigned-off-by: Thomas Pedersen \u003cthomas@cozybit.com\u003e\nSigned-off-by: Ashok Nagarajan \u003canagar6@uic.edu\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "3b69a9c5f264d62a0cf46ea61ed3da732c1f88c2",
      "tree": "d40bbdbe62b517696711344e6f56278ac420cdd1",
      "parents": [
        "c63749d347afcb5c4790d1cbe27d9b66e585b9ff"
      ],
      "author": {
        "name": "Thomas Pedersen",
        "email": "thomas@cozybit.com",
        "time": "Wed Oct 26 14:47:25 2011 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Nov 08 15:54:31 2011 -0500"
      },
      "message": "mac80211: comment allocation of mesh frames\n\nRemove most references to magic numbers, save a few bytes and hopefully\nimprove readability.\n\nSigned-off-by: Thomas Pedersen \u003cthomas@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "bc3b2d7fb9b014d75ebb79ba371a763dbab5e8cf",
      "tree": "b0fd4e724bdb1c0a1783616614ae5a9dec1cfa5c",
      "parents": [
        "d9b9384215e17c68d7b6bd05d6fa409e5d4140d7"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Fri Jul 15 11:47:34 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Mon Oct 31 19:30:30 2011 -0400"
      },
      "message": "net: Add export.h for EXPORT_SYMBOL/THIS_MODULE to non-modules\n\nThese files are non modular, but need to export symbols using\nthe macros now living in export.h -- call out the include so\nthat things won\u0027t break when we remove the implicit presence\nof module.h from everywhere.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "55182e4adfffa808a1d07a515637c05c67028a5f",
      "tree": "b07870ed475792815cafafabb3dce51f192143aa",
      "parents": [
        "107ef97a170dec95893f34614edd92eb8cb9b5d0"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Wed Oct 12 17:28:21 2011 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Oct 14 14:48:16 2011 -0400"
      },
      "message": "mac80211: reformat TX unauthorised check\n\nReformat the check, the indentation is completely strange.\nAlso change the last part of the condition to make the\ncode shorter.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "d5294971f11fc2b150437e43a4057c867c2bf413",
      "tree": "34acbba5d71e15793a8e179edc2478c144b08706",
      "parents": [
        "72267e5cfefb2b54b6a16e5775da01e26ede2953"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Oct 07 14:55:40 2011 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 11 16:41:21 2011 -0400"
      },
      "message": "mac80211: dont orphan TX skb\n\nThis was another workaround for truesize \"bugs\".\nThe reason we did this was that when we orphaned\nthe SKB it wouldn\u0027t be truesize-checked later.\nNow that the check is gone (and we just charge\nthe former smaller size to the socket) there\u0027s\nno longer a reason to orphan the skb here.\n\nKeep the skb charged to the socket until it is\nreally freed (or orphaned in TX status). This\nhelps flow control and allows us to get at the\nsocket later for other purposes.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "72267e5cfefb2b54b6a16e5775da01e26ede2953",
      "tree": "d69c7684f6040ee2392a9158bc6d5c346446dece",
      "parents": [
        "73b9f03a813d66484105c4ed648a1aa66fa267aa"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Oct 07 14:55:39 2011 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 11 16:41:20 2011 -0400"
      },
      "message": "mac80211: dont adjust truesize\n\nThere\u0027s no need to adjust truesize.\n\nThe history of this was that we always ran into\nskb_truesize_bug (via skb_truesize_check) which\nhas since been removed in commit 92a0acce186cd.\nskb_truesize_check() checked that truesize  was\nbigger or equal to the actual allocation, which\nwould trigger in mac80211 due to header adding.\nThe check no longer exists and we shouldn\u0027t be\nmessing with the truesize anwyay.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "73b9f03a813d66484105c4ed648a1aa66fa267aa",
      "tree": "37a60a9c61f4537c898a5d863e93f1b445864d7d",
      "parents": [
        "a26eb27ab430147a82e4a9f2f1ebfadf03d99550"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Oct 07 14:01:26 2011 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 11 16:41:19 2011 -0400"
      },
      "message": "mac80211: parse radiotap header earlier\n\nWe can now move the radiotap header parsing into\nieee80211_monitor_start_xmit(). This moves it out of\nthe hotpath, and also helps the code since now the\nradiotap header will no longer be present in\nieee80211_xmit() etc. which is easier to understand.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a26eb27ab430147a82e4a9f2f1ebfadf03d99550",
      "tree": "105c1b9db15ae37f4d69e22bf666861ed78a540e",
      "parents": [
        "68f2b517bcbd81cb19321d5ca208d4c0f13b8728"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Oct 07 14:01:25 2011 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 11 16:41:19 2011 -0400"
      },
      "message": "mac80211: move fragment flag to info flag as dont-fragment\n\nThe purpose of this is two-fold:\n 1) by moving it out of tx_data.flags, we can in\n    another patch move the radiotap parsing so it\n    no longer is in the hotpath\n 2) if a device implements fragmentation but can\n    optionally skip it, the radiotap request for\n    not doing fragmentation may be honoured\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "68f2b517bcbd81cb19321d5ca208d4c0f13b8728",
      "tree": "7613b501332a00bdd43df5a0bcc24d41bd2437fe",
      "parents": [
        "5d9cf4a5d7d46e412bc43b20c79743d81a0328cb"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Oct 07 14:01:24 2011 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 11 16:41:18 2011 -0400"
      },
      "message": "mac80211: remove tx_data ethertype\n\nIt\u0027s set, but never used, so kill it.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5d9cf4a5d7d46e412bc43b20c79743d81a0328cb",
      "tree": "5481f798c9407c16ee7958b24559f23d8808a888",
      "parents": [
        "d9cd48f95c5ba9e5f1d5287ed74630607471031c"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Oct 07 14:01:23 2011 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 11 16:41:17 2011 -0400"
      },
      "message": "mac80211: optimise monitor xmit\n\nSince the only way the interface can be a monitor\ninterface in ieee80211_xmit() is because the frame\ncame from ieee80211_monitor_start_xmit() we can\nmove all the code there.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "893d73f4a15bda966cb72f84897898eb235e134c",
      "tree": "001d5b58d5c45f3d0c12a5de0bd0eb4290dd2819",
      "parents": [
        "a5abbcb2206953eb1bf86281626363f2fd7a8ceb"
      ],
      "author": {
        "name": "Helmut Schaa",
        "email": "helmut.schaa@googlemail.com",
        "time": "Thu Sep 29 13:42:25 2011 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Oct 03 15:19:17 2011 -0400"
      },
      "message": "mac80211: Allow noack flag overwrite for injected frames\n\nAllow injected unicast frames to be sent without having to wait\nfor an ACK.\n\nSigned-off-by: Helmut Schaa \u003chelmut.schaa@googlemail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "49a59543eb5a5d268b3d11747f9c3c557ae271a0",
      "tree": "cee8bf84d162eb423833ebddf12211b94161618f",
      "parents": [
        "4b801bc969364a980c1366e48155d1a29d20661b"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Sep 29 16:04:41 2011 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Sep 30 15:57:25 2011 -0400"
      },
      "message": "mac80211: dont assign seqno to or aggregate QoS Null frames\n\n802.11 says:\n\"Sequence numbers for QoS (+)Null frames may be\nset to any value.\"\n\nHowever, if we use the normal counters then peers\nwill get confused with aggregation since there\u0027ll\nbe holes in the sequence number sequence.\n\nTo avoid that, neither assign a sequence number\nto QoS null frames nor put them on aggregation.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "c2c98fdeb5c897499644eb247285c8e3dacc6450",
      "tree": "aaa9c0f8dd16ab896308470e21a0813041094670",
      "parents": [
        "deeaee197b0fa694ba6c8f02cdb57b3be7115b4f"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Sep 29 16:04:36 2011 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Sep 30 15:57:19 2011 -0400"
      },
      "message": "mac80211: optimise station flags\n\nThe flaglock in struct sta_info has long been\nsomething that I wanted to get rid of, this\nfinally does the conversion to atomic bitops.\n\nThe conversion itself is straight-forward in\nmost places, a few things needed to change a\nbit since we can no longer use multiple bits\nat the same time.\n\nOn x86-64, this is a fairly significant code\nsize reduction:\n   text\t   data\t    bss\t    dec\t    hex\n 427861\t  23648\t   1008\t 452517\t  6e7a5\tbefore\n 425383\t  23648\t    976\t 450007\t  6ddd7\tafter\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ce662b44ce22e3e8886104d5feb2a451d7ba560f",
      "tree": "eb584058dec73807f192fc19725adfece5bad539",
      "parents": [
        "47086fc51aa2220f58049704a8b73e4fcdf372b9"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Sep 29 16:04:34 2011 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Sep 30 15:57:16 2011 -0400"
      },
      "message": "mac80211: send (QoS) Null if no buffered frames\n\nFor PS-poll, there\u0027s a possible race between\nus expiring a frame and the station polling\nfor it -- send it a null frame in that case.\n\nFor uAPSD, the standard says that we have to\nsend a frame in each SP, so send null if we\ndon\u0027t have any other frames.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "47086fc51aa2220f58049704a8b73e4fcdf372b9",
      "tree": "31f7ae0e59318352d772b62fa26316d349cde88e",
      "parents": [
        "4049e09acdf4ffd270cb8fbf1cf5b39c3d02357c"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Sep 29 16:04:33 2011 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Sep 30 15:57:15 2011 -0400"
      },
      "message": "mac80211: implement uAPSD\n\nAdd uAPSD support to mac80211. This is probably not\npossible with all devices, so advertising it with\nthe cfg80211 flag will be left up to drivers that\nwant it.\n\nDue to my previous patches it is now a fairly\nstraight-forward extension. Drivers need to have\naccurate TX status reporting for the EOSP frame.\nFor drivers that buffer themselves, the provided\nAPIs allow releasing the right number of frames,\nbut then drivers need to set EOSP and more-data\nthemselves. This is documented in more detail in\nthe new code itself.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "948d887dec1042a7d78ae311908113e26502062f",
      "tree": "e4240d0f45c0200d3625693bd6d543d243859d0a",
      "parents": [
        "60750397122fe0fb81a6e52fd790b3f749b6e010"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Sep 29 16:04:29 2011 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Sep 30 15:57:12 2011 -0400"
      },
      "message": "mac80211: split PS buffers into ACs\n\nFor uAPSD support we\u0027ll need to have per-AC PS\nbuffers. As this is a major undertaking, split\nthe buffers before really adding support for\nuAPSD. This already makes some reference to the\nuapsd_queues variable, but for now that will\nnever be non-zero.\n\nSince book-keeping is complicated, also change\nthe logic for keeping a maximum of frames only\nand allow 64 frames per AC (up from 128 for a\nstation).\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "c868cb35d013896ab6a80a554fb88baef06cedcd",
      "tree": "48ed06dcf3c815e61f38f867e517d5a5dcfa6d79",
      "parents": [
        "042ec4533720122e6cb93dd9f3b6a75fe2fcff16"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Sep 29 16:04:27 2011 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Sep 30 15:57:10 2011 -0400"
      },
      "message": "mac80211: unify TIM bit handling\n\nCurrently, the TIM bit for a given station is set\nand cleared all over the place. Since the logic to\nset/clear it will become much more complex when we\nadd uAPSD support, as a first step let\u0027s collect\nthe entire logic in one place. This requires a few\nsmall adjustments to other places.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "941c93cd039852b7ab02c74f4698c99d82bd6cfe",
      "tree": "8f527535dcb145877ac8cb68f43723b05d574e6e",
      "parents": [
        "07ba55d7f1d0da174c9bc545c713b44cee760197"
      ],
      "author": {
        "name": "Arik Nemtsov",
        "email": "arik@wizery.com",
        "time": "Wed Sep 28 14:12:54 2011 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Sep 30 15:57:09 2011 -0400"
      },
      "message": "mac80211: data path modification for TDLS peers\n\nMark the STA entries of enabled TDLS peers with a new \"peer authorized\"\nflag.\n\nDuring link setup, allow special TDLS setup frames through the AP, but\notherwise drop all packets destined to the peer. This is required by the\nTDLS (802.11z) specification in order to prevent reordering of MSDUs\nbetween the AP and direct paths.\n\nWhen setup completes and the peer is authorized, send data directly,\nbypassing the AP.\n\nIn the Rx path, allow data to be received directly from TDLS peers.\n\nSigned-off-by: Arik Nemtsov \u003carik@wizery.com\u003e\nCc: Kalyan C Gaddam \u003cchakkal@iit.edu\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "768db3438b4b48a33d073093bb364e624409cab7",
      "tree": "72e2d33d14484d46c16a2880df9c5d633ce7683c",
      "parents": [
        "109086ce0b0f94760bdb0e8e2566ff8a2d673639"
      ],
      "author": {
        "name": "Arik Nemtsov",
        "email": "arik@wizery.com",
        "time": "Wed Sep 28 14:12:51 2011 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Sep 30 15:57:06 2011 -0400"
      },
      "message": "mac80211: standardize adding supported rates IEs\n\nRelocate the mesh implementation of adding the (extended) supported\nrates IE to util.c, anticipating its use by other parts of mac80211.\n\nSigned-off-by: Arik Nemtsov \u003carik@wizery.com\u003e\nCc: Kalyan C Gaddam \u003cchakkal@iit.edu\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "2154c81c32fa44364f83218a10d8dbec4e76d4f5",
      "tree": "d51234e55d24c6ff5f4849d2757b57f1d6accaac",
      "parents": [
        "4777be41638cfab56c78b2a764a5f83beb6cfdd2"
      ],
      "author": {
        "name": "Javier Cardona",
        "email": "javier@cozybit.com",
        "time": "Wed Sep 07 17:49:53 2011 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Sep 14 13:56:50 2011 -0400"
      },
      "message": "mac80211: Mesh data frames must have the QoS header\n\nPer sec 7.1.3.5 of draft 12.0 of 802.11s, mesh frames indicate the\npresence of the mesh control header in their QoS header.\n\nSigned-off-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4777be41638cfab56c78b2a764a5f83beb6cfdd2",
      "tree": "9b041c2ffdaccf13a24b8bdb62c817cc87942a01",
      "parents": [
        "3de3d966007592693e68a973f62a1e3828565af0"
      ],
      "author": {
        "name": "Javier Cardona",
        "email": "javier@cozybit.com",
        "time": "Wed Sep 07 17:49:52 2011 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Sep 14 13:56:48 2011 -0400"
      },
      "message": "mac80211: Start implementing QoS support for mesh interfaces\n\nIn order to support QoS in mesh, we need to assign queue mapping only\nafter the next hop has been resolved, both for forwarded and locally\noriginated frames.  Also, now that this is fixed, remove the XXX comment\nin ieee80211_select_queue().\n\nAlso, V-Shy Ho reported that the queue mapping was not being applied to\nthe forwarded frame (fwd_skb instead of skb).  Fixed that as well.\n\nSigned-off-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "edf6b784c0e574696915e7b04fe42158f3112d0d",
      "tree": "d423c979f0c87ba04891349c08d95573b43f90aa",
      "parents": [
        "24616152b1d184864370c5ea21f8fdbd5a90d58d"
      ],
      "author": {
        "name": "Arik Nemtsov",
        "email": "arik@wizery.com",
        "time": "Tue Aug 30 09:32:38 2011 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Sep 13 15:45:03 2011 -0400"
      },
      "message": "mac80211: add flag to indicate HW only Tx-agg setup support\n\nWhen this flag is set, Tx A-MPDU sessions will not be started by\nmac80211. This flag is required for devices that support Tx A-MPDU setup\nin hardware.\n\nSigned-off-by: Arik Nemtsov \u003carik@wizery.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "d15b84590a1d2ec021ada00a0e67ee5851a0ea2b",
      "tree": "2a05aed04345641fec0647c409779345ef0166f3",
      "parents": [
        "239289e446d4e86ae94b1ca57e358b106cc4bee6"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Aug 29 14:17:31 2011 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Sep 13 15:45:02 2011 -0400"
      },
      "message": "mac80211: Remove unnecessary OOM logging messages\n\nRemoving unnecessary messages saves code and text.\n\nSite specific OOM messages are duplications of a generic MM\nout of memory message and aren\u0027t really useful, so just\ndelete them.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "082ebb0c258d28af7452b19df9ef8b7553f37690",
      "tree": "a7cb2f8e5cf55c4000b549b6ff29c1c99f447825",
      "parents": [
        "f6a3e99da82167e066ebde975ec604638b42d816"
      ],
      "author": {
        "name": "Thomas Pedersen",
        "email": "thomas@cozybit.com",
        "time": "Thu Aug 11 19:35:10 2011 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Aug 22 14:45:59 2011 -0400"
      },
      "message": "mac80211: fix mesh beacon format\n\nCorrect ordering of IEs in the mesh beacon while removing unneeded IEs\nfrom mesh peering frames. Set privacy bit in capability info if security\nis enabled. Add utility functions to aid in construction\nof IEs and reduce code duplication.\n\nSigned-off-by: Thomas Pedersen \u003cthomas@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f75f5c6f61b4d34bf92625fcd1131dd58921e1b5",
      "tree": "509f5c5361ca793c43ccc87d130580638cb38820",
      "parents": [
        "12c5ffb5c4601a11b08533609d4bf119e2f22cf5"
      ],
      "author": {
        "name": "Helmut Schaa",
        "email": "helmut.schaa@googlemail.com",
        "time": "Mon Aug 01 11:32:52 2011 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Aug 09 15:52:01 2011 -0400"
      },
      "message": "mac80211: Fill in skb-\u003eprotocol information for injected frames\n\nSome drivers (ath9k for example) are using skb-\u003eprotocol to treat EAPOL\nframes somehow special (disallow aggregation for example).\n\nWhen running in AP mode hostapd injects the EAPOL frames through a\nmonitor interface and thus skb-\u003eprotocol isn\u0027t set at all. Hence, if the\ninjected frame is a data frame and carries a rfc1042 headaer update the\nskb-\u003eprotocol field accordingly.\n\nSigned-off-by: Helmut Schaa \u003chelmut.schaa@googlemail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "95acac61ba66c4abd40e038dae8c1ed2e176c7b1",
      "tree": "8a1737bc3a2ca8af0031e1c2cda07608965ad282",
      "parents": [
        "2fcf282471f04f465d0368e46e973e01504292b3"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Tue Jul 12 12:30:59 2011 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jul 13 14:49:43 2011 -0400"
      },
      "message": "mac80211: allow driver to disconnect after resume\n\nIn WoWLAN, devices may use crypto keys for TX/RX\nand could also implement GTK rekeying. If the\ndriver isn\u0027t able to retrieve replay counters and\nsimilar information from the device upon resume,\nor if the device isn\u0027t responsive due to platform\nissues, it isn\u0027t safe to keep the connection up\nas GTK rekey messages from during the sleep time\ncould be replayed against it.\n\nThe only protection against that is disconnecting\nfrom the AP. Modifying mac80211 to do that while\nit is resuming would be very complex and invasive\nin the case that the driver requires a reconfig,\nso do it after it has resumed completely. In that\ncase, however, packets might be replayed since it\ncan then only happen after TX/RX are up again, so\nmark keys for interfaces that need to disconnect\nas \"tainted\" and drop all packets that are sent\nor received with those keys.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "3bff1865186c6bb97855f0c13e3850543dce9cef",
      "tree": "4a9150f82cbb83a01f8fb82b3bf2d69028230928",
      "parents": [
        "252e735d64880b011f6cdeb41ebcac2eaeb58fd3"
      ],
      "author": {
        "name": "Yogesh Ashok Powar",
        "email": "yogeshp@marvell.com",
        "time": "Tue Jun 28 18:41:37 2011 +0530"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jul 05 15:26:50 2011 -0400"
      },
      "message": "mac80211: Skip tailroom reservation for full HW-crypto devices with race fix\n\nBased on inputs from Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nfrom http://article.gmane.org/gmane.linux.kernel.wireless.general/68193\nand http://article.gmane.org/gmane.linux.kernel.wireless.general/71702\n\nIn xmit path, devices that do full hardware crypto (including\nMMIC and ICV) need no tailroom. For such devices, tailroom\nreservation can be skipped if all the keys are programmed into\nthe hardware (i.e software crypto is not used for any of the\nkeys) and none of the keys wants software to generate Michael\nMIC and IV.\n\nv2: Added check for IV along with MMIC.\nReported-by: Fabio Rossi \u003crossi.f@inwind.it\u003e\nTested-by: Fabio Rossi \u003crossi.f@inwind.it\u003e\nSigned-off-by: Mohammed Shafi Shajakhan \u003cmshajakhan@atheros.com\u003e\nCc: Mohammed Shafi Shajakhan \u003cmshajakhan@atheros.com\u003e\n\nv3: Fixing races to avoid WARNING: at net/mac80211/wpa.c:397\n    ccmp_encrypt_skb+0xc4/0x1f0\nReported-by: Andreas Hartmann \u003candihartmann@01019freenet.de\u003e\nTested-by: Andreas Hartmann \u003candihartmann@01019freenet.de\u003e\n\nv4: Added links with message ID\n\nSigned-off-by: Yogesh Ashok Powar \u003cyogeshp@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ab6a44ce1da48d35fe7ec95fa068aa617bd7e8dd",
      "tree": "fa8cc877e369e5da15a6daead490d3a87f15909f",
      "parents": [
        "d2ac49fe3c7c4730323c1042fb53a2e008643b6a"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 06 14:35:27 2011 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 06 15:23:53 2011 -0400"
      },
      "message": "Revert \"mac80211: Skip tailroom reservation for full HW-crypto devices\"\n\nThis reverts commit aac6af5534fade2b18682a0b9efad1a6c04c34c6.\n\nConflicts:\n\n\tnet/mac80211/key.c\n\nThat commit has a race that causes a warning, as documented in the thread\nhere:\n\n\thttp://marc.info/?l\u003dlinux-wireless\u0026m\u003d130717684914101\u0026w\u003d2\n\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "9cbc94eabb0791906051bbfac024ef2c2be8e079",
      "tree": "41ba194e687c6c60f5c883f98737ac83257d0c00",
      "parents": [
        "1d1652cbdb9885e4d73972263e4cdbe1b0beebfe",
        "7cc31a9ae1477abc79d5992b3afe889f25c50c99"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 17 17:33:11 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 17 17:33:11 2011 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/vmxnet3/vmxnet3_ethtool.c\n\tnet/core/dev.c\n"
    },
    {
      "commit": "40b275b69ee660274b77fb612b0db31fd282fc3f",
      "tree": "29a4f82a44a12edcf9db5de6a3c6df9615a5799e",
      "parents": [
        "ec034b208dc8aa5dc73ec46c3f27e34c5efbf113"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri May 13 14:15:49 2011 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon May 16 14:10:41 2011 -0400"
      },
      "message": "mac80211: sparse RCU annotations\n\nThis adds sparse RCU annotations to most of\nmac80211, only the mesh code remains to be\ndone.\n\nDue the the previous patches, the annotations\nare pretty simple. The only thing that this\nactually changes is removing the RCU usage of\nkey-\u003esta in debugfs since this pointer isn\u0027t\nactually an RCU-managed pointer (it only has\na single assignment done before the key even\ngoes live). As that is otherwise harmless, I\ndecided to make it part of this patch.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "28104cae63708d1790cd71db8a45af50d5ea5a92",
      "tree": "035b490c6db1cf1f17e38adf66aab103540ff735",
      "parents": [
        "9b84b80891e5e25ae21c855bb135b05274125a29"
      ],
      "author": {
        "name": "Javier Cardona",
        "email": "javier@cozybit.com",
        "time": "Tue May 03 16:57:17 2011 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed May 11 14:50:35 2011 -0400"
      },
      "message": "mac80211: Move call to mpp_path_lookup inside RCU-read section\n\nPROVE_RCU caught that one:\n\n[  431.214070] \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n[  431.215341] [ INFO: suspicious rcu_dereference_check() usage. ]\n[  431.215674] ---------------------------------------------------\n[  431.216043] net/mac80211/mesh_pathtbl.c:184 invoked\nrcu_dereference_check() without protection!\n\nSigned-off-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5db1c07ced19b2eec3a149a3c624d88e02e246ae",
      "tree": "873165bf02bfdbb5822fe6e9a5f0ba96dd70f2db",
      "parents": [
        "16b345d89686ca0482a9ca741a1167def1abdd7f"
      ],
      "author": {
        "name": "Luciano Coelho",
        "email": "coelho@ti.com",
        "time": "Tue May 03 21:40:08 2011 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue May 10 15:35:43 2011 -0400"
      },
      "message": "mac80211: don\u0027t start the dynamic ps timer if not associated\n\nWhen we are disconnecting, we set PS off, but this happens before we\nsend the deauth/disassoc request.  When the deauth/disassoc frames are\nsent, we trigger the dynamic ps timer, which then times out and turns\nPS back on.  Thus, PS remains on after disconnecting, causing problems\nwhen associating again.\n\nThis can be fixed by preventing the timer to start when we\u0027re not\nassociated anymore.\n\nSigned-off-by: Luciano Coelho \u003ccoelho@ti.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4c468fe559f7910b1c6b10d3d223943fdd1b653c",
      "tree": "fb7293c13da3fa79d2472aa2adff8c4341a6e6e3",
      "parents": [
        "cbe8c735f1af88037c3dab570f816e3a77896cc7"
      ],
      "author": {
        "name": "Arik Nemtsov",
        "email": "arik@wizery.com",
        "time": "Tue May 03 11:53:07 2011 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu May 05 14:59:06 2011 -0400"
      },
      "message": "mac80211: set TID of internal mgmt packets to 7\n\nThe queue mapping of internal mgmt packets is set to VO. Set the TID\nvalue to match the queue mapping. Otherwise drivers that only look at\nthe TID might get confused.\n\nSigned-off-by: Arik Nemtsov \u003carik@wizery.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "aac6af5534fade2b18682a0b9efad1a6c04c34c6",
      "tree": "786840d7b3dc0ea942e91075ffe6f2cf5ba9d5d9",
      "parents": [
        "e2186b7c25ef9cdb6d631c8dd6a672f41abe22d5"
      ],
      "author": {
        "name": "Yogesh Ashok Powar",
        "email": "yogeshp@marvell.com",
        "time": "Wed Apr 27 18:40:29 2011 +0530"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Apr 28 14:53:21 2011 -0400"
      },
      "message": "mac80211: Skip tailroom reservation for full HW-crypto devices\n\nIn xmit path, devices that do full hardware crypto (including\nTKIP MMIC) need no tailroom. For such devices, tailroom\nreservation can be skipped if all the keys are programmed into\nthe hardware (i.e software crypto is not used for any of the\nkeys) and none of the keys wants software to generate Michael\nMIC.\n\nSigned-off-by: Yogesh Ashok Powar \u003cyogeshp@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "0915cba394268e68b6a8242b15f8c7283453df43",
      "tree": "184498cf778c3feefd6b78d2856f082135e14f04",
      "parents": [
        "334df731976ee4042c9bf18b2eec9c0a71f45389"
      ],
      "author": {
        "name": "Rajkumar Manoharan",
        "email": "rmanoharan@atheros.com",
        "time": "Mon Apr 25 15:56:17 2011 +0530"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Apr 26 15:50:31 2011 -0400"
      },
      "message": "mac80211: Fix warnings due to -Wunused-but-set-variable\n\nThese warnings are exposed by gcc 4.6.\nnet/mac80211/sta_info.c: In function \u0027sta_info_cleanup_expire_buffered\u0027:\nnet/mac80211/sta_info.c:590:32: warning: variable \u0027sdata\u0027 set but not used\nnet/mac80211/ibss.c: In function \u0027ieee80211_rx_mgmt_auth_ibss\u0027:\nnet/mac80211/ibss.c:43:34: warning: variable \u0027status_code\u0027 set but not used\nnet/mac80211/work.c: In function \u0027ieee80211_send_assoc\u0027:\nnet/mac80211/work.c:203:9: warning: variable \u0027len\u0027 set but not used\nnet/mac80211/tx.c: In function \u0027__ieee80211_parse_tx_radiotap\u0027:\nnet/mac80211/tx.c:1039:35: warning: variable \u0027sband\u0027 set but not used\nnet/mac80211/mesh.c: In function \u0027ieee80211_mesh_rx_queued_mgmt\u0027:\nnet/mac80211/mesh.c:616:28: warning: variable \u0027ifmsh\u0027 set but not used\n ...\n\nSigned-off-by: Rajkumar Manoharan \u003crmanoharan@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "581a8b0feeed8877aab3a8ca4c972419790cd07f",
      "tree": "36ef0e86b367e0abeb0a50fbf59840f125efdbc7",
      "parents": [
        "a22e93f5d819f11d2a2d6332e20ff5b462e5c208"
      ],
      "author": {
        "name": "Javier Cardona",
        "email": "javier@cozybit.com",
        "time": "Thu Apr 07 15:08:27 2011 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Apr 12 16:57:37 2011 -0400"
      },
      "message": "nl80211: rename NL80211_MESH_SETUP_VENDOR_PATH_SEL_IE\n\nTo NL80211_MESH_SETUP_IE. This reflects our ability to insert any ie\ninto a mesh beacon, not simply path selection ies.\n\nSigned-off-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e16b396ce314b2bcdfe6c173fe075bf8e3432368",
      "tree": "640f0f56f2ea676647af4eb42d32fa56be2ee549",
      "parents": [
        "7fd23a24717a327a66f3c32d11a20a2f169c824f",
        "e6e8dd5055a974935af1398c8648d4a9359b0ecb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 18 10:37:40 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 18 10:37:40 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (47 commits)\n  doc: CONFIG_UNEVICTABLE_LRU doesn\u0027t exist anymore\n  Update cpuset info \u0026 webiste for cgroups\n  dcdbas: force SMI to happen when expected\n  arch/arm/Kconfig: remove one to many l\u0027s in the word.\n  asm-generic/user.h: Fix spelling in comment\n  drm: fix printk typo \u0027sracth\u0027\n  Remove one to many n\u0027s in a word\n  Documentation/filesystems/romfs.txt: fixing link to genromfs\n  drivers:scsi Change printk typo initate -\u003e initiate\n  serial, pch uart: Remove duplicate inclusion of linux/pci.h header\n  fs/eventpoll.c: fix spelling\n  mm: Fix out-of-date comments which refers non-existent functions\n  drm: Fix printk typo \u0027failled\u0027\n  coh901318.c: Change initate to initiate.\n  mbox-db5500.c Change initate to initiate.\n  edac: correct i82975x error-info reported\n  edac: correct i82975x mci initialisation\n  edac: correct commented info\n  fs: update comments to point correct document\n  target: remove duplicate include of target/target_core_device.h from drivers/target/target_core_hba.c\n  ...\n\nTrivial conflict in fs/eventpoll.c (spelling vs addition)\n"
    },
    {
      "commit": "7bb4568372856688bc070917265bce0b88bb7d4d",
      "tree": "e3ca3e7d233944bbc271c650c8b037c3a6652d98",
      "parents": [
        "43f12d47f0580e04e26c14c03cb19cea9687854e"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Feb 24 14:42:06 2011 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Feb 25 15:32:34 2011 -0500"
      },
      "message": "mac80211: make tx() operation return void\n\nThe return value of the tx operation is commonly\nmisused by drivers, leading to errors. All drivers\nwill drop frames if they fail to TX the frame, and\nthey must also properly manage the queues (if they\ndidn\u0027t, mac80211 would already warn).\n\nRemoving the ability for drivers to return a BUSY\nvalue also allows significant cleanups of the TX\nTX handling code in mac80211.\n\nNote that this also fixes a bug in ath9k_htc, the\nold \"return -1\" there was wrong.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nTested-by: Sedat Dilek \u003csedat.dilek@googlemail.com\u003e [ath5k]\nAcked-by: Gertjan van Wingerde \u003cgwingerde@gmail.com\u003e [rt2x00]\nAcked-by: Larry Finger \u003cLarry.Finger@lwfinger.net\u003e [b43, rtl8187, rtlwifi]\nAcked-by: Luciano Coelho \u003ccoelho@ti.com\u003e [wl12xx]\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "b67afe7f43afd2f5cd98798993561920c1684c12",
      "tree": "e45a0e41c91a1d199fd865b011ed0d25f5497bb9",
      "parents": [
        "db28569adc692d9fb8a2d2d8e7ebab7fd5481f10",
        "28bec7b845e10b68e6ba1ade5de0fc566690fc61"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Feb 18 17:03:41 2011 -0500"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Feb 18 17:03:41 2011 -0500"
      },
      "message": "Merge ssh://master.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n\nConflicts:\n\tdrivers/bluetooth/ath3k.c\n\tdrivers/bluetooth/btusb.c\n"
    },
    {
      "commit": "db28569adc692d9fb8a2d2d8e7ebab7fd5481f10",
      "tree": "2e16f74ef5c73bc0735f43bc223c4330c57e1108",
      "parents": [
        "1a63e2ce4e67f6df74f032ec302314141816e432"
      ],
      "author": {
        "name": "Vivek Natarajan",
        "email": "vnatarajan@atheros.com",
        "time": "Fri Feb 18 17:18:03 2011 +0530"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Feb 18 16:54:57 2011 -0500"
      },
      "message": "mac80211: Clear PS related flag on disabling power save.\n\nClear IEEE80211_STA_NULLFUNC_ACKED flag on disabling power\nsave. Without this fix, there is a chance of setting CONF_PS\nbefore sending nullfunc frame.\n\nSigned-off-by: Vivek Natarajan \u003cvnatarajan@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "0a9d59a2461477bd9ed143c01af9df3f8f00fa81",
      "tree": "df997d1cfb0786427a0df1fbd6f0640fa4248cf4",
      "parents": [
        "a23ce6da9677d245aa0aadc99f4197030350ab54",
        "795abaf1e4e188c4171e3cd3dbb11a9fcacaf505"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Tue Feb 15 10:24:31 2011 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Tue Feb 15 10:24:31 2011 +0100"
      },
      "message": "Merge branch \u0027master\u0027 into for-next\n"
    },
    {
      "commit": "3ad97fbcc233a295f2ccc2c6bdeb32323e360a5e",
      "tree": "afd41efc01403af33b5c86bd21e74cb881a57571",
      "parents": [
        "3a2329f2680796b0c09ff207803ea880a481c3a4"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Mon Feb 07 22:03:35 2011 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Feb 07 16:18:28 2011 -0500"
      },
      "message": "mac80211: remove unneeded check\n\n\"ap\" is the address of sdata-\u003eu.ap so it can never be NULL here.  Also\nwe dereferenced it on the previous line.  I removed the check.\n\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "fc7c976dc7a565213393ce700d4a6105f037bf20",
      "tree": "ab7b069f25f0d6ddce88be4a1c898d3101ed1c09",
      "parents": [
        "3dd823e6b86407aed1a025041d8f1df77e43a9c8"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Mon Feb 07 12:05:00 2011 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Feb 07 16:02:14 2011 -0500"
      },
      "message": "mac80211: fix the skb cloned check in the tx path\n\nUsing skb_header_cloned to check if it\u0027s safe to write to the skb is not\nenough - mac80211 also touches the tailroom of the skb.\nInitially this check was only used to increase a counter, however this\ncommit changed the code to also skip skb data reallocation if no extra\nhead/tailroom was needed:\n\ncommit 4cd06a344db752f513437138953af191cbe9a691\nmac80211: skip unnecessary pskb_expand_head calls\n\nIt added a regression at least with iwl3945, which is fixed by this patch.\n\nReported-by: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nTested-by: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "b23b025fe246f3acc2988eb6d400df34c27cb8ae",
      "tree": "e1c8cd163dc4dc7c603652a9e101f8381cf66fdc",
      "parents": [
        "cb8d61de2d7f074654057b2b924da1efbf625ad4"
      ],
      "author": {
        "name": "Ben Greear",
        "email": "greearb@candelatech.com",
        "time": "Fri Feb 04 11:54:17 2011 -0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Feb 04 16:30:32 2011 -0500"
      },
      "message": "mac80211: Optimize scans on current operating channel.\n\nThis should decrease un-necessary flushes, on/off channel work,\nand channel changes in cases where the only scanned channel is\nthe current operating channel.\n\n* Removes SCAN_OFF_CHANNEL flag, uses SDATA_STATE_OFFCHANNEL\n  and is-scanning flags instead.\n\n* Add helper method to determine if we are currently configured\n  for the operating channel.\n\n* Do no blindly go off/on channel in work.c  Instead, only call\n  appropriate on/off code when we really need to change channels.\n  Always enable offchannel-ps mode when starting work,\n  and disable it when we are done.\n\n* Consolidate ieee80211_offchannel_stop_station and\n  ieee80211_offchannel_stop_beaconing, call it\n  ieee80211_offchannel_stop_vifs instead.\n\n* Accept non-beacon frames when scanning on operating channel.\n\n* Scan state machine optimized to minimize on/off channel\n  transitions.  Also, when going on-channel, go ahead and\n  re-enable beaconing.  We\u0027re going to be there for 200ms,\n  so seems like some useful beaconing could happen.\n  Always enable offchannel-ps mode when starting software\n  scan, and disable it when we are done.\n\n* Grab local-\u003emtx earlier in __ieee80211_scan_completed_finish\n  so that we are protected when calling hw_config(), etc.\n\n* Pass probe-responses up the stack if scanning on local\n  channel, so that mlme can take a look.\n\nSigned-off-by: Ben Greear \u003cgreearb@candelatech.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "512119b36f7945a650877cbc7e9b5f4cc4d92e4c",
      "tree": "324117fb41bff372ac9a5e669cf279106731cac1",
      "parents": [
        "4099e2f4404762add8ef2b0dadef3c5122117210"
      ],
      "author": {
        "name": "Christian Lamparter",
        "email": "chunkeey@googlemail.com",
        "time": "Mon Jan 31 20:48:44 2011 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Feb 04 16:29:49 2011 -0500"
      },
      "message": "mac80211: fix race between next beacon dtim and ieee80211_get_buffered_bc\n\nOn review of \u0027zd1211rw: implement beacon fetching and handling\nieee80211_get_buffered_bc()\u0027, Christian Lamparter noted that [1]:\n\n   Since zd_beacon_done also uploads the next beacon so long in advance,\n   there could be an equally long race between the outdated state of the\n   next beacon\u0027s DTIM broadcast traffic indicator (802.11-2007 7.3.2.6)\n   which -in your case- was uploaded almost a beacon interval ago and\n   the xmit of ieee80211_get_buffered_bc *now*.\n\n   The dtim bc/mc bit might be not set, when a mc/bc arrived after the\n   beacon was uploaded, but before the \"beacon done event\" from the\n   hardware. So, dozing stations don\u0027t expect the broadcast traffic\n   and of course, they might miss it completely.\n\n   It\u0027s probably better to fix this in mac80211 (see the attached hack).\n\n[1] http://marc.info/?l\u003dlinux-wireless\u0026m\u003d129435041117256\u0026w\u003d2\n\nCC: Christian Lamparter \u003cchunkeey@googlemail.com\u003e\nSigned-off-by: Jussi Kivilinna \u003cjussi.kivilinna@mbnet.fi\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8fd369eeaa81d05969787c9ddf9cf3f1a8c4e084",
      "tree": "9ab29670407547e03b00b4671687de151bbe0980",
      "parents": [
        "2cf22b897c63df65e7360a1897e5312c58617fbd"
      ],
      "author": {
        "name": "Arik Nemtsov",
        "email": "arik@wizery.com",
        "time": "Mon Jan 31 22:29:12 2011 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Feb 03 16:44:44 2011 -0500"
      },
      "message": "mac80211: do not calc frame duration when using HW rate-control\n\nWhen rate-control is performed in HW, we cannot calculate frame\nduration as we do not have the skb transmission rate in SW.\n\nieee80211_tx_h_calculate_duration() should only be called when\nieee80211_tx_h_rate_ctrl() has been called before to initialize data\nin skb-\u003ecb. This doesn\u0027t happen for drivers with HW rate-control.\n\nFixes the following warning when operating in AP-mode\nin a driver with HW rate-control.\n\nWARNING: at net/mac80211/tx.c:57 ieee80211_duration+0x54/0x1d8 [mac80211]()\nModules linked in: wl1271_sdio wl1271 firmware_class crc7 mac80211 cfg80211\n[\u003cc0046090\u003e] (unwind_backtrace+0x0/0x124) from [\u003cc0064c10\u003e] (warn_slowpath_common+0x4c/0x64)\n[\u003cc0064c10\u003e] (warn_slowpath_common+0x4c/0x64) from [\u003cc0064c40\u003e] (warn_slowpath_null+0x18/0x1c)\n[\u003cc0064c40\u003e] (warn_slowpath_null+0x18/0x1c) from [\u003cbf040e34\u003e] (ieee80211_duration+0x54/0x1d8 [mac80211])\n[\u003cbf040e34\u003e] (ieee80211_duration+0x54/0x1d8 [mac80211]) from [\u003cbf04200c\u003e] (invoke_tx_handlers+0xfa0/0x1088 [mac80211])\n[\u003cbf04200c\u003e] (invoke_tx_handlers+0xfa0/0x1088 [mac80211]) from [\u003cbf042178\u003e] (ieee80211_tx+0x84/0x248 [mac80211])\n[\u003cbf042178\u003e] (ieee80211_tx+0x84/0x248 [mac80211]) from [\u003cbf042f44\u003e] (ieee80211_tx_pending+0x12c/0x278 [mac80211])\n[\u003cbf042f44\u003e] (ieee80211_tx_pending+0x12c/0x278 [mac80211]) from [\u003cc0069a9c\u003e] (tasklet_action+0x68/0xbc)\n[\u003cc0069a9c\u003e] (tasklet_action+0x68/0xbc) from [\u003cc006a044\u003e] (__do_softirq+0x84/0x114)\n[\u003cc006a044\u003e] (__do_softirq+0x84/0x114) from [\u003cc006a1b8\u003e] (do_softirq+0x48/0x54)\n[\u003cc006a1b8\u003e] (do_softirq+0x48/0x54) from [\u003cc006a4f8\u003e] (local_bh_enable+0x98/0xcc)\n[\u003cc006a4f8\u003e] (local_bh_enable+0x98/0xcc) from [\u003cbf074e60\u003e] (wl1271_rx+0x2e8/0x3a4 [wl1271])\n[\u003cbf074e60\u003e] (wl1271_rx+0x2e8/0x3a4 [wl1271]) from [\u003cbf071ae4\u003e] (wl1271_irq_work+0x230/0x310 [wl1271])\n[\u003cbf071ae4\u003e] (wl1271_irq_work+0x230/0x310 [wl1271]) from [\u003cc0076864\u003e] (process_one_work+0x208/0x350)\n[\u003cc0076864\u003e] (process_one_work+0x208/0x350) from [\u003cc0076e14\u003e] (worker_thread+0x1cc/0x300)\n[\u003cc0076e14\u003e] (worker_thread+0x1cc/0x300) from [\u003cc007bb88\u003e] (kthread+0x84/0x8c)\n[\u003cc007bb88\u003e] (kthread+0x84/0x8c) from [\u003cc0041494\u003e] (kernel_thread_exit+0x0/0x8)\n\nSigned-off-by: Arik Nemtsov \u003carik@wizery.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "3e11210d46a4f252f41db6e442b46026aeddbb59",
      "tree": "b258375de649a5e04e8d567c850b47c41f8ceb11",
      "parents": [
        "3bf63e59e577cbecd41334c866f501c4cc5d54c5",
        "c7c1806098752c1f46943d8db2c69aff07f5d4bc"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jan 28 16:23:14 2011 -0500"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jan 28 16:23:14 2011 -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/init.c\n"
    },
    {
      "commit": "eb3e554b4b3a56386ef5214dbe0e3935a350178b",
      "tree": "7c107dadb64f044c7747c41e369f9780ab611cb1",
      "parents": [
        "bdc4bf652bc0271ba8f1f25bbd3dbac90bead44e"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Mon Jan 24 19:28:49 2011 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jan 25 16:28:56 2011 -0500"
      },
      "message": "mac80211: fix a crash in ieee80211_beacon_get_tim on change_interface\n\nSome drivers (e.g. ath9k) do not always disable beacons when they\u0027re\nsupposed to. When an interface is changed using the change_interface op,\nthe mode specific sdata part is in an undefined state and trying to\nget a beacon at this point can produce weird crashes.\n\nTo fix this, add a check for ieee80211_sdata_running before using\nanything from the sdata.\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": "ac1bd8464f161ed1475ef73c431b926256c6b5bb",
      "tree": "6a755cadfd24e1c988e75383d30c789c5b149b3d",
      "parents": [
        "4801416c76a3a355076d6d371c00270dfe332e1c"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Tue Jan 18 13:45:32 2011 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jan 19 11:36:11 2011 -0500"
      },
      "message": "mac80211: don\u0027t return beacons when mesh is disabled\n\nWhen mesh is disabled, mac80211 was returning\nbeacons with an empty mesh ID. That isn\u0027t\ndesirable, even if drivers shouldn\u0027t be trying\nto get beacons to start with.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "0a65169b1f602b955176cb5f0789139d0fccb041",
      "tree": "be2fcda442db0d8e678a79d8a346224a03afa528",
      "parents": [
        "115dad7a7f42e68840392767323ceb9306dbdb36"
      ],
      "author": {
        "name": "Wey-Yi Guy",
        "email": "wey-yi.w.guy@intel.com",
        "time": "Fri Jan 14 08:07:56 2011 -0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jan 19 11:36:09 2011 -0500"
      },
      "message": "mac80211: mesh only parameter mppath maybe unused\n\nmppath is mesh related parameter and maybe unused\n\nSigned-off-by: Wey-Yi Guy \u003cwey-yi.w.guy@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "9d52501b421450ddd9e000c9788ac3be0e44ef1c",
      "tree": "e0a1c5a7b9fc179a5fd4822e4a7dff954084e56a",
      "parents": [
        "04cf53f465049c7c509aac7b776f75d38ef68e69"
      ],
      "author": {
        "name": "Joel A Fernandes",
        "email": "agnel.joel@gmail.com",
        "time": "Mon Jan 10 00:44:23 2011 -0600"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jan 19 11:36:07 2011 -0500"
      },
      "message": "mac80211: Rewrote code for checking if destinations are proxied.\n\nRewrote code for checking if the destination is proxied by a mesh portal, to facilitate better\nunderstanding of the functionality.\n\nSigned-off-by: Joel A Fernandes \u003cagnel.joel@gmail.com\u003e\nAcked-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "42b16b3fbb5ee4555f5dee6220f3ccaa6e1ebe47",
      "tree": "966c1266afca5dd0e59cace37f7cd49577bdf0e2",
      "parents": [
        "f0940cee222790e6e995a23f25c4ffb23f939a24"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jj@chaosbits.net",
        "time": "Mon Jan 17 00:09:38 2011 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Wed Jan 19 15:43:08 2011 +0100"
      },
      "message": "Kill off warning: ‘inline’ is not at beginning of declaration\n\nFix a bunch of\n\twarning: ‘inline’ is not at beginning of declaration\nmessages when building a \u0027make allyesconfig\u0027 kernel with -Wextra.\n\nThese warnings are trivial to kill, yet rather annoying when building with\n-Wextra.\nThe more we can cut down on pointless crap like this the better (IMHO).\n\nA previous patch to do this for a \u0027allnoconfig\u0027 build has already been\nmerged. This just takes the cleanup a little further.\n\nSigned-off-by: Jesper Juhl \u003cjj@chaosbits.net\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "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": "f76b57b47e5fd423f9827c7b0ba7bbd06cca6b9b",
      "tree": "8ff2b50bb0e57611f5d37fe6abaef75f9fcd34a6",
      "parents": [
        "1c30cc19081c16b1fe73ac13f2cb2abc009cdcc4"
      ],
      "author": {
        "name": "Joel A Fernandes",
        "email": "agnel.joel@gmail.com",
        "time": "Tue Dec 28 19:28:11 2010 -0600"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jan 04 14:43:01 2011 -0500"
      },
      "message": "mac80211: Fix mesh portal communication with other mesh nodes.\n\nFixed a bug where if a mesh interface has a different MAC address from its bridge\ninterface, then it would not be able to send data traffic to any other mesh node.\nThis also adds support for communication between mesh nodes and external bridged\nnodes by using a 6 address format if the source is a node within the mesh and the\ndestination is an external node proxied by a mesh portal.\n\nSigned-off-by: Joel A Fernandes \u003cagnel.joel@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e1e5406854378dfada3f33c7192b012083a5b8e0",
      "tree": "e878058f28b8f6db50ef5d73d09aed66dd9ad9f2",
      "parents": [
        "fe67c913f1ec2a01aaa9176c80ef36eaf87d705d"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Tue Nov 30 08:58:45 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Dec 22 14:33:37 2010 -0500"
      },
      "message": "mac80211: add throughput based LED blink trigger\n\niwlwifi and other drivers like to blink their LED\nbased on throughput. Implement this generically in\nmac80211, based on a throughput table the driver\nspecifies. That way, drivers can set the blink\nfrequencies depending on their desired behaviour\nand max throughput.\n\nAll the drivers need to do is provide an LED class\ndevice, best with blink hardware offload.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f8a0a781488ec7288d1049e5d2022850aa98f7b6",
      "tree": "3acab2f7a781ce3ed83bcd5350ac14b133dc0e45",
      "parents": [
        "4cd06a344db752f513437138953af191cbe9a691"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Sat Dec 18 19:30:50 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Dec 20 14:52:17 2010 -0500"
      },
      "message": "mac80211: fix potentially redundant skb data copying\n\nWhen an skb is shared, it needs to be duplicated, along with its data buffer.\nIf the skb does not have enough headroom, using skb_copy might cause the data\nbuffer to be copied twice (once by skb_copy and once by pskb_expand_head).\nFix this by using skb_clone initially and letting ieee80211_skb_resize sort\nout the rest.\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    }
  ],
  "next": "4cd06a344db752f513437138953af191cbe9a691"
}
