)]}'
{
  "log": [
    {
      "commit": "746e6ad23cd6fec2edce056e014a0eabeffa838c",
      "tree": "f44de53e3fca1db32fee3c81ac87229c1f895cb3",
      "parents": [
        "8981f01001c616f58f1623ecadfab8b1ed758da7"
      ],
      "author": {
        "name": "John Dykstra",
        "email": "john.dykstra1@gmail.com",
        "time": "Thu Jun 11 20:57:21 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 20:57:21 2009 -0700"
      },
      "message": "[PATCH] net core: Some interface flags not returned by SIOCGIFFLAGS\n\nCommit b00055aacdb172c05067612278ba27265fcd05ce \" [NET] core: add\nRFC2863 operstate\" defined new interface flag values.  Its\ndocumentation specified that these flags could be accessed from user\nspace via SIOCGIFFLAGS.  However, this does not work because the new\nflags do not fit in that ioctl\u0027s argument width.\n\nChange the documentation to match the code\u0027s behavior.  Also change\nthe source to explicitly show the truncation.  This _should_ have no\neffect on executable code, and did not with gcc 4.2.4 generating x86\ncode.\n\nA new ioctl could be defined to return all interface flags to user\nspace.  However, since this has been broken for three years with no\none complaining, there doesn\u0027t seem much need.  They are still\naccessible via netlink.\n\nReported-by:  \"Fredrik Arnerup\" \u003cfredrik.arnerup@edgeware.tv\u003e\nSigned-off-by: John Dykstra \u003cjohn.dykstra1@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8981f01001c616f58f1623ecadfab8b1ed758da7",
      "tree": "338a5439aeb3961b115b5dee85fb52725de21d5b",
      "parents": [
        "adf76cfe24dab32a54e2dd1f51534cea8277f32a"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Jun 11 20:55:17 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 20:55:17 2009 -0700"
      },
      "message": "virtio_net: Fix IP alignment on non-mergeable RX path\n\nWe need to enforce the IP alignment on the non-mergeable RX path just\nlike the other RX path.  Not doing so results in misaligned IP\nheaders.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "adf76cfe24dab32a54e2dd1f51534cea8277f32a",
      "tree": "6935c74a4b7237bd5f95918b3145ac57e0769fca",
      "parents": [
        "17d0cdfa8f3c09a110061c67421d662b3e149d0a",
        "24992eacd8a9f4af286bdaaab627b6802ceb8bce"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 20:00:44 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 20:00:44 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-next-2.6\n"
    },
    {
      "commit": "17d0cdfa8f3c09a110061c67421d662b3e149d0a",
      "tree": "5e707b8787db0a8571b983a6c8c1d7bf88579788",
      "parents": [
        "3ee40c376ad3252d13946141588db7e2f435f958"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Jun 11 17:23:24 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 17:23:24 2009 -0700"
      },
      "message": "net: ntohs() misuse\n\nSome drivers incorrectly use ntohs() instead of htons()\n\nA cleanup as htons() returns same result than ntohs(),\nbut better to use the proper one.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3ee40c376ad3252d13946141588db7e2f435f958",
      "tree": "65bd16c024edab1ff74ad165779443edfaa26467",
      "parents": [
        "670025478c2a687453cd1bac697d7d765843f59d",
        "98eb0f53e2fc66482e2ea8033c58b20a079e5260"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 17:11:33 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 17:11:33 2009 -0700"
      },
      "message": "Merge branch \u0027linux-2.6.31.y\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/inaky/wimax\n"
    },
    {
      "commit": "24992eacd8a9f4af286bdaaab627b6802ceb8bce",
      "tree": "b2f56ab21b3961c681a6997866a4fc8f0f10a62f",
      "parents": [
        "334a47f6345560af047f164c356d71c3226965d5"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Fri Jun 12 01:53:09 2009 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Fri Jun 12 01:53:09 2009 +0200"
      },
      "message": "netfilter: ip_tables: fix build error\n\nFix build error introduced by commit bb70dfa5 (netfilter: xtables:\nconsolidate comefrom debug cast access):\n\nnet/ipv4/netfilter/ip_tables.c: In function \u0027ipt_do_table\u0027:\nnet/ipv4/netfilter/ip_tables.c:421: error: \u0027comefrom\u0027 undeclared (first use in this function)\nnet/ipv4/netfilter/ip_tables.c:421: error: (Each undeclared identifier is reported only once\nnet/ipv4/netfilter/ip_tables.c:421: error: for each function it appears in.)\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "98eb0f53e2fc66482e2ea8033c58b20a079e5260",
      "tree": "d7bfd46772eb1da57cdb2f40e3e227186242bef6",
      "parents": [
        "d2f4c10544231c3681f937a1e511f4780b4b39af"
      ],
      "author": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Thu Jun 11 11:13:41 2009 -0700"
      },
      "committer": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Thu Jun 11 11:47:39 2009 -0700"
      },
      "message": "wimax: fix gcc warnings in sh4 when calling BUG()\n\nSH4\u0027s BUG() seems to confuse the compiler as it is considered to\nreturn; thus, some functions would trigger usage of uninitialized\nvariables or non-void functions returning void.\n\nWork around by initializing/returning.\n\nSigned-off-by: Inaky Perez-Gonzalez \u003cinaky@linux.intel.com\u003e\n"
    },
    {
      "commit": "d2f4c10544231c3681f937a1e511f4780b4b39af",
      "tree": "0805e8ce546a5b5edb5594302b9151c6dd8d5b8a",
      "parents": [
        "0bcfc5ef016e8217709c65c5a7335e40ceabc99c"
      ],
      "author": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Thu Jun 11 11:12:48 2009 -0700"
      },
      "committer": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Thu Jun 11 11:12:48 2009 -0700"
      },
      "message": "wimax: fix warning caused by not checking retval of rfkill_set_hw_state()\n\nCaused by an API update. The return value can be safely ignored, as\nthere is notthing we can do with it.\n\nSigned-off-by: Inaky Perez-Gonzalez \u003cinaky@linux.intel.com\u003e\n"
    },
    {
      "commit": "670025478c2a687453cd1bac697d7d765843f59d",
      "tree": "da13a6cd54216ed9ec16e7dde6ec3d3348646334",
      "parents": [
        "8164491dd628ffcac5d61267f747997689ee256c"
      ],
      "author": {
        "name": "Karsten Keil",
        "email": "keil@b1-systems.de",
        "time": "Thu Jun 11 15:52:10 2009 +0200"
      },
      "committer": {
        "name": "Karsten Keil",
        "email": "keil@b1-systems.de",
        "time": "Thu Jun 11 19:05:32 2009 +0200"
      },
      "message": "mISDN: cleanup mISDNhw.h\n\nRemove unused stuff.\n\nSigned-off-by: Karsten Keil \u003ckeil@b1-systems.de\u003e\n"
    },
    {
      "commit": "8164491dd628ffcac5d61267f747997689ee256c",
      "tree": "146094cf95bb3a57708cb1f302c6cf5580c5a4ba",
      "parents": [
        "395df11f5fa7fe852be28ccec8aaa15634386ad1"
      ],
      "author": {
        "name": "Karsten Keil",
        "email": "keil@b1-systems.de",
        "time": "Tue Jun 09 14:38:39 2009 +0200"
      },
      "committer": {
        "name": "Karsten Keil",
        "email": "keil@b1-systems.de",
        "time": "Thu Jun 11 19:05:18 2009 +0200"
      },
      "message": "mISDN: Do not disable IRQ in ph_data_ind()\n\nThis fix triggering the WARN_ON_ONCE(in_irq() || irqs_disabled()); in\nlocal_bh_enable().\n\nHere is no need to grab this lock, this was wrong at all and may\ncause a deadlock and access to freed memory, since on a TEI remove\nthe current listelement can be deleted under us. So this is clearly\na case for list_for_each_entry_safe.\n\nSigned-off-by: Karsten Keil \u003ckeil@b1-systems.de\u003e\n"
    },
    {
      "commit": "395df11f5fa7fe852be28ccec8aaa15634386ad1",
      "tree": "6d6fcd36173e73d0ca8d6aebc7a7942de2959dcb",
      "parents": [
        "cdae28e1a28f26c765c5882a48b9fd4a5b9ce91c"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Wed Jun 10 12:52:44 2009 -0700"
      },
      "committer": {
        "name": "Karsten Keil",
        "email": "keil@b1-systems.de",
        "time": "Thu Jun 11 19:05:10 2009 +0200"
      },
      "message": "drivers/isdn/i4l/isdn_tty.c: fix check for array overindexing\n\nThe check for overindexing of dev-\u003emdm.info[] has an off-by-one.\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nAcked-by: Karsten Keil \u003ckeil@b1-systems.de\u003e\n"
    },
    {
      "commit": "cdae28e1a28f26c765c5882a48b9fd4a5b9ce91c",
      "tree": "cbe9107f6a15089d8503944bcf85937420157ac3",
      "parents": [
        "1ce1513f48e3bc4d55ee672f0e39f5063a02ab7a"
      ],
      "author": {
        "name": "Andreas Mohr",
        "email": "andi@lisas.de",
        "time": "Tue Jun 02 18:15:12 2009 +0200"
      },
      "committer": {
        "name": "Karsten Keil",
        "email": "keil@b1-systems.de",
        "time": "Thu Jun 11 19:04:59 2009 +0200"
      },
      "message": "mISDN: Free hfcpci IRQ if init was not successful\n\nIf we get no interrupts for after 3 resets we need to unregister\nthe interrupt function, which is already done outside the loop.\n\nSigned-off-by: Andreas Mohr \u003candi@lisas.de\u003e\nSigned-off-by: Karsten Keil \u003ckeil@b1-systems.de\u003e\n"
    },
    {
      "commit": "1ce1513f48e3bc4d55ee672f0e39f5063a02ab7a",
      "tree": "1428894cade512b477dcd0ba9641e36faa7cb085",
      "parents": [
        "8a745b9d91962991ce87a649a4dc3af3206c2c8b"
      ],
      "author": {
        "name": "Karsten Keil",
        "email": "keil@b1-systems.de",
        "time": "Tue Jun 02 15:37:37 2009 +0200"
      },
      "committer": {
        "name": "Karsten Keil",
        "email": "keil@b1-systems.de",
        "time": "Thu Jun 11 19:04:54 2009 +0200"
      },
      "message": "mISDN: Fix overlapping data access\n\nRemove code rewriting a buffer by itself.\nThis fix bug 12970 on bugzilla.kernel.org.\n\nSigned-off-by: Karsten Keil \u003ckeil@b1-systems.de\u003e\n"
    },
    {
      "commit": "8a745b9d91962991ce87a649a4dc3af3206c2c8b",
      "tree": "9fc186dafbf64ce81cbb9be2f5a7379f0f1225f6",
      "parents": [
        "bb400801c2f40bbd9a688818323ad09abfc4e581"
      ],
      "author": {
        "name": "Karsten Keil",
        "email": "keil@b1-systems.de",
        "time": "Tue Jun 02 14:57:35 2009 +0200"
      },
      "committer": {
        "name": "Karsten Keil",
        "email": "keil@b1-systems.de",
        "time": "Thu Jun 11 19:04:48 2009 +0200"
      },
      "message": "ISDN:Fix DMA alloc for hfcpci\n\nReplace wrong code with correct DMA API functions.\n\nSigned-off-by: Karsten Keil \u003ckeil@b1-systems.de\u003e\n"
    },
    {
      "commit": "334a47f6345560af047f164c356d71c3226965d5",
      "tree": "f889c48690c9505ca483b200021befbef27d8fd6",
      "parents": [
        "36432dae73cf2c90a59b39c8df9fd8219272b005"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Jun 11 16:16:09 2009 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Jun 11 16:16:09 2009 +0200"
      },
      "message": "netfilter: nf_ct_tcp: fix up build after merge\n\nReplace the last occurence of tcp_lock by the per-conntrack lock.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "36432dae73cf2c90a59b39c8df9fd8219272b005",
      "tree": "660b9104305a809ec4fdeb295ca13d6e90790ecc",
      "parents": [
        "440f0d588555892601cfe511728a0fc0c8204063",
        "bb400801c2f40bbd9a688818323ad09abfc4e581"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Jun 11 16:00:49 2009 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Jun 11 16:00:49 2009 +0200"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6\n"
    },
    {
      "commit": "bb400801c2f40bbd9a688818323ad09abfc4e581",
      "tree": "bf23baef0cdc7590b73a53e6b1e88565ba455cf1",
      "parents": [
        "130aa61a77b8518f1ea618e1b7d214d60b405f10",
        "611b30f74b5d8ca036a9923b3bf6e0ee10a21a53"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 05:47:43 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 05:47:43 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/holtmann/bluetooth-next-2.6\n"
    },
    {
      "commit": "130aa61a77b8518f1ea618e1b7d214d60b405f10",
      "tree": "56231709cf0a5f1108fbdd0909a0b346a31a9b86",
      "parents": [
        "5ef12d98a19254ee5dc851bd83e214b43ec1f725"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Thu Jun 11 05:46:04 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 05:46:04 2009 -0700"
      },
      "message": "bonding: fix multiple module load problem\n\nSome users still load bond module multiple times to create bonding\ndevices.  This accidentally was broken by a later patch about\nthe time sysfs was fixed.  According to Jay, it was broken\nby:\n   commit b8a9787eddb0e4665f31dd1d64584732b2b5d051\n   Author: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\n   Date:   Fri Jun 13 18:12:04 2008 -0700\n\n     bonding: Allow setting max_bonds to zero\n\nNote: sysfs and procfs still produce WARN() messages when this is done\nso the sysfs method is the recommended API.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5ef12d98a19254ee5dc851bd83e214b43ec1f725",
      "tree": "703846f5298cca8f8a9f95712d47365e1de1df4a",
      "parents": [
        "2b85a34e911bf483c27cfdd124aeb1605145dc80"
      ],
      "author": {
        "name": "Timo Teras",
        "email": "timo.teras@iki.fi",
        "time": "Thu Jun 11 04:16:28 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 04:16:28 2009 -0700"
      },
      "message": "neigh: fix state transition INCOMPLETE-\u003eFAILED via Netlink request\n\nThe current code errors out the INCOMPLETE neigh entry skb queue only from\nthe timer if maximum probes have been attempted and there has been no reply.\nThis also causes the transtion to FAILED state.\n\nHowever, the neigh entry can be also updated via Netlink to inform that the\naddress is unavailable.  Currently, neigh_update() just stops the timers and\nleaves the pending skb\u0027s unreleased. This results that the clean up code in\nthe timer callback is never called, preventing also proper garbage collection.\n\nThis fixes neigh_update() to process the pending skb queue immediately if\nINCOMPLETE -\u003e FAILED state transtion occurs due to a Netlink request.\n\nSigned-off-by: Timo Teras \u003ctimo.teras@iki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0bcfc5ef016e8217709c65c5a7335e40ceabc99c",
      "tree": "8b669ff99674f137918f47aced255034db662248",
      "parents": [
        "8b5b30ee7ddc989b59ce05dcf2d024a819dc8040"
      ],
      "author": {
        "name": "Cindy H Kao",
        "email": "cindy.h.kao@intel.com",
        "time": "Wed Jun 10 17:06:19 2009 -0700"
      },
      "committer": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Thu Jun 11 03:30:26 2009 -0700"
      },
      "message": "wimax/i2400m: use -EL3RST to indicate device reset instead of -ERESTARTSYS\n\nWhen the i2400m device resets, the driver code will force some\nfunctions to return a -ERESTARTSYS error code, which can is used by\nthe caller to determine which recovery actions to take.\n\nHowever, in certain situations the only thing that can be done is to\nbubble up said error code to user space, for handling.\n\nHowever, -ERESTARSYS was a poor choice, as it is supposed to be used\nby the kernel only.\n\nAs such, replace -ERESTARTSYS with -EL3RST; as well, in\ni2400m_msg_to_dev(), when the device is in boot mode (following a\nrecent reset), return -EL3RST instead of -ENODEV (meaning the device\nis in bootrom mode after a reset, not that the device was\ndisconnected, and thus, normal commands cannot be executed).\n\nSigned-off-by: Cindy H Kao \u003ccindy.h.kao@intel.com\u003e\n"
    },
    {
      "commit": "8b5b30ee7ddc989b59ce05dcf2d024a819dc8040",
      "tree": "49b564e60706973bfeac592cb00c76f3c0ce102c",
      "parents": [
        "16820c166d3ad5973d388b5aa70ee7e535386657"
      ],
      "author": {
        "name": "Cindy H Kao",
        "email": "cindy.h.kao@intel.com",
        "time": "Wed Jun 10 16:52:10 2009 -0700"
      },
      "committer": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Thu Jun 11 03:30:26 2009 -0700"
      },
      "message": "wimax/i2400m: when bootstrap fails, reinitialize the bootrom\n\nWhen a device reset happens during firmware load [in\ni2400m_dev_bootstrap()], __i2400m_dev_start() will retry a number of\ntimes. However, for those retries to be able to accomplish anything,\nthe device\u0027s bootrom has to be reinitialized.\n\nThus, on the retry path, pass the I2400M_MAC_REINIT to the firmware\nload code.\n\nSigned-off-by: Cindy H Kao \u003ccindy.h.kao@intel.com\u003e\n"
    },
    {
      "commit": "16820c166d3ad5973d388b5aa70ee7e535386657",
      "tree": "59ccd86e6530bbfc6aac3d55a4952f851c0bc3cc",
      "parents": [
        "6e053d6c79b3c1c9f6efc6563a811023c41be86a"
      ],
      "author": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Thu May 07 01:02:39 2009 -0700"
      },
      "committer": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Thu Jun 11 03:30:25 2009 -0700"
      },
      "message": "wimax/i2400m/sdio: Move all the RX code to a unified, IRQ based receive routine\n\nThe current SDIO code was working in polling mode for boot-mode\n(firmware load) mode. This was causing issues on some hardware.\n\nMoved all the RX code to use a unified IRQ handler that based on the\ntype of data the device is sending can discriminate and decide which\nis the right destination.\n\nAs well, all the reads from the device are made to be at least the\nblock size (256); the driver will ignore the rest when not needed.\n\nSigned-off-by: Dirk Brandewie \u003cdirk.j.brandewie@intel.com\u003e\nSigned-off-by: Inaky Perez-Gonzalez \u003cinaky@linux.intel.com\u003e\n"
    },
    {
      "commit": "6e053d6c79b3c1c9f6efc6563a811023c41be86a",
      "tree": "579cb648734e1283873d7f4f7195c231f5062197",
      "parents": [
        "1c0b2dd75772cbce0aef8886b7f38313542216de"
      ],
      "author": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Fri Jun 05 09:31:26 2009 +0800"
      },
      "committer": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Thu Jun 11 03:30:25 2009 -0700"
      },
      "message": "wimax/i2400m: don\u0027t reset device when bootrom init retries are exceeded\n\nWhen i2400m_bootrom_init() fails to put the device into a state of\nbeing ready to accept firmware, the driver was currently trying to\nreset it if it failed to do so. This is not too useful; as part of\ntrying to put the device in the right state a few resets have already\nbeen tried.\n\nAt this point, things are probably fried out and an extra reset might\ndo more harm than good (for example causing reseting of other\nfunctions in the same composite device).\n\nSo it is left up to the callers to determine the error path to take\n(at the end this is always i2400m_setup(), who depending on how many\nretries are left, might give up on the device).\n\nFrom a fix by Cindy H. Kao.\n\nSigned-off-by: Inaky Perez-Gonzalez \u003cinaky@linux.intel.com\u003e\n"
    },
    {
      "commit": "1c0b2dd75772cbce0aef8886b7f38313542216de",
      "tree": "26fb06d78672a64cfc2c51968c0cac7051c6f18c",
      "parents": [
        "7308a0c23901f2a295265bb71d8521ef7d47bf4c"
      ],
      "author": {
        "name": "Dirk Brandewie",
        "email": "dirk.j.brandewie@intel.com",
        "time": "Thu May 21 11:56:35 2009 -0700"
      },
      "committer": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Thu Jun 11 03:30:24 2009 -0700"
      },
      "message": "wimax/i2400m/sdio: Add device specific poke table.\n\nAdd a poke table for the SDIO device (as it is different than USB).\n\nSigned-off-by: Dirk Brandewie \u003cdirk.j.brandewie@intel.com\u003e\n"
    },
    {
      "commit": "7308a0c23901f2a295265bb71d8521ef7d47bf4c",
      "tree": "3bb54a208a5f587f1732f73ed8cffc7e1f2d538c",
      "parents": [
        "ecddfd5ed73c070413f07a5251c16c10e69f35a2"
      ],
      "author": {
        "name": "Dirk Brandewie",
        "email": "dirk.j.brandewie@intel.com",
        "time": "Thu May 21 11:56:34 2009 -0700"
      },
      "committer": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Thu Jun 11 03:30:24 2009 -0700"
      },
      "message": "wimax/i2400m: move boot time poke table out of common driver\n\nThis change moves the table of \"pokes\" performed on the device at boot\ntime to the bus specific portion of the driver.\n\nDifferent models of the i2400m device supported by this driver require\ndifferent poke tables, thus having a single table that works for all\nis impossible. For that, the table is moved to the bus-specific\ndriver, who can decide which table to use based on the specifics of\nthe device and point the generic driver to it.\n\nSigned-off-by: Dirk Brandewie \u003cdirk.j.brandewie@intel.com\u003e\n"
    },
    {
      "commit": "ecddfd5ed73c070413f07a5251c16c10e69f35a2",
      "tree": "4caaeedf3b8a49441d3656ffdd2ac8e8479991a2",
      "parents": [
        "b4013f91cdda10f3f15530914f3c7f39738b0b50"
      ],
      "author": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Wed Jun 03 16:13:14 2009 +0800"
      },
      "committer": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Thu Jun 11 03:30:23 2009 -0700"
      },
      "message": "wimax/i2400m: Allow bus-specific driver to specify retry count\n\nThe code that sets up the i2400m (firmware load and general driver\nsetup after it) includes a couple of retry loops.\n\nThe SDIO device sometimes can get in more complicated corners than the\nUSB one (due to its interaction with other SDIO functions), that\nrequire trying a few more times.\n\nTo solve that, without having a failing USB device taking longer to be\nconsidered dead, allow the retry counts to be specified by the\nbus-specific driver, which the general driver takes as a parameter.\n\nSigned-off-by: Inaky Perez-Gonzalez \u003cinaky@linux.intel.com\u003e\n"
    },
    {
      "commit": "b4013f91cdda10f3f15530914f3c7f39738b0b50",
      "tree": "8dc5ab721c3f2028de4e2372436f76bb059a9fff",
      "parents": [
        "59063afa0afabc68d2b6ca0d106da9165e1c7d39"
      ],
      "author": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Wed Jun 03 09:45:55 2009 +0800"
      },
      "committer": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Thu Jun 11 03:30:23 2009 -0700"
      },
      "message": "wimax/i2400m: if a device reboot happens during probe, handle it\n\nWhen a device reboot happens when we are under probe, with init_mutex\ntaken, make sure we can recover. Have dev_reset_handle set boot mode\nand i2400m_msg_to_dev() will see it and fail gracefully instead of\ntiming out.\n\nFound and diagnosed by Cindy H. Kao.\n\nSigned-off-by: Inaky Perez-Gonzalez \u003cinaky@linux.intel.com\u003e\n"
    },
    {
      "commit": "59063afa0afabc68d2b6ca0d106da9165e1c7d39",
      "tree": "4fda5f5feaa11a8d311661cd0630d06ad29c8aa7",
      "parents": [
        "b4bd07e3b13e3c848c7678c4fc870cca1d22ed4e"
      ],
      "author": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Wed May 27 01:04:40 2009 -0700"
      },
      "committer": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Thu Jun 11 03:30:22 2009 -0700"
      },
      "message": "wimax/i2400m: fix oops when the TX FIFO fills up due to a missing check\n\nWhen the TX FIFO filled up and i2400m_tx_new() failed to allocate a\nnew TX message header, a missing check for said condition was causing a\nkernel oops when trying to dereference a NULL i2400m-\u003etx_msg pointer.\n\nFound and diagnosed by Cindy H. Kao.\n\nSigned-off-by: Inaky Perez-Gonzalez \u003cinaky@linux.intel.com\u003e\n"
    },
    {
      "commit": "b4bd07e3b13e3c848c7678c4fc870cca1d22ed4e",
      "tree": "56913e329212b41525d581443bb7329c4eaf8570",
      "parents": [
        "2971a5bac8cab3cb56f19e9c494ecb3b120c5199"
      ],
      "author": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Thu May 21 19:46:45 2009 -0700"
      },
      "committer": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Thu Jun 11 03:30:22 2009 -0700"
      },
      "message": "wimax/i2400m: don\u0027t reset device on i2400m_dev_shutdown()\n\ni2400m_dev_shutdown() tried to reset the device to put it in a known\nstate before shutting down.\n\nBut that turned out to be pointless. We reach this case in two paths:\n\n 1 - when the device resets, to clean up state\n 2 - when the driver is unloaded, for the same\n\nhowever, in both cases it is pointless; in (1) the device is already\nreset, why do it again? in (2) we can\u0027t -- the USB stack, for example,\ndoesn\u0027t allow communicating with the device when the driver is being\nunbound and if the device is disconnected, the device is gone already.\n\nSo just remove it. Leave the function as a placeholder for future\ncleanups that will be done from data allocated by the driver during\ndevice operation.\n\nSigned-off-by: Inaky Perez-Gonzalez \u003cinaky@linux.intel.com\u003e\n"
    },
    {
      "commit": "2971a5bac8cab3cb56f19e9c494ecb3b120c5199",
      "tree": "aa01c08f44f337304984fac35d60cd940c112a45",
      "parents": [
        "c56affafdd29eb9764b0e35e3434cc06f6bc3781"
      ],
      "author": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Wed May 20 17:40:35 2009 -0700"
      },
      "committer": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Thu Jun 11 03:30:21 2009 -0700"
      },
      "message": "wimax/i2400m: fix panic due to missed corner cases on tail_room calculation\n\ni2400m_tx_skip_tail() needs to handle the special case of being called\nwhen the tail room that is left over in the FIFO is zero.\n\nThis happens when a TX message header was opened at the very end of\nthe FIFO (without payloads). The i2400m_tx_close() code already marked\nsaid TX message (header) to be skipped and this function should be\ndoing nothing.\n\nIt is called anyway because it is part of a common \"corner case\" path\nhandling which takes care of more cases than only this one.\n\nThe tail room computation was also improved to take care of the case\nwhen tx_in is at the end of the buffer boundary; tail_room has to be\nmodded (%) to the buffer size. To do that in a single well-documented\nplace, __i2400m_tx_tail_room() is introduced and used.\n\nTreat i2400m-\u003etx_in \u003d\u003d 0 as a corner case and handle it accordingly.\n\nFound and diagnosed by Cindy H. Kao.\n\nSigned-off-by: Inaky Perez-Gonzalez \u003cinaky@linux.intel.com\u003e\n"
    },
    {
      "commit": "c56affafdd29eb9764b0e35e3434cc06f6bc3781",
      "tree": "b79de2da47cba80882ae85cf7f271cc7f574a27e",
      "parents": [
        "8593a1967fb9746d318dde88a0a39a36dbfc3445"
      ],
      "author": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Wed May 20 17:16:05 2009 -0700"
      },
      "committer": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Thu Jun 11 03:30:21 2009 -0700"
      },
      "message": "wimax/i2400m: fix panic/warnings caused by missed check on empty TX message\n\nIn some situations, when a new TX message header is started, there\nmight be no space for data payloads. In this case the message is left\nwith zero payloads and the i2400m_tx_close() function has just to mark\nit as \"to skip\". If it tries to go ahead it will overwrite things\nbecause there is no space to add padding as defined by the\nbus-specific layer. This can cause buffer overruns and in some stress\ncases, panics.\n\nFound and diagnosed by Cindy H. Kao.\n\nSigned-off-by: Inaky Perez-Gonzalez \u003cinaky@linux.intel.com\u003e\n"
    },
    {
      "commit": "8593a1967fb9746d318dde88a0a39a36dbfc3445",
      "tree": "6e3d5e259ae08eab71c8442b2f7fa66bd1d39867",
      "parents": [
        "10b1de6b774a531c9054ee01e734a85ffbab179e"
      ],
      "author": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Wed May 20 16:53:30 2009 -0700"
      },
      "committer": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Thu Jun 11 03:30:20 2009 -0700"
      },
      "message": "wimax/i2400m: rename misleading I2400M_PL_PAD to I2400M_PL_ALIGN\n\nThe constant is being use as an alignment factor, not as a padding\nfactor; made reading/reviewing the code quite confusing.\n\nSigned-off-by: Inaky Perez-Gonzalez \u003cinaky@linux.intel.com\u003e\n"
    },
    {
      "commit": "10b1de6b774a531c9054ee01e734a85ffbab179e",
      "tree": "b56c38c7953faca21b1f4aee6709d5d3acfd3956",
      "parents": [
        "ead68239913cb9c19150facf1656517f81d66fcb"
      ],
      "author": {
        "name": "Dirk Brandewie",
        "email": "dirk.j.brandewie@intel.com",
        "time": "Tue May 12 07:54:00 2009 -0700"
      },
      "committer": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Thu Jun 11 03:30:20 2009 -0700"
      },
      "message": "wimax/i2400m/sdio: Implement I2400M_RT_BUS reset type\n\nThis reset type causes the WiMAX function to be disabled and\nre-enabled, which will force the WiMAX device to reset and enter boot\nmode.\n\nSigned-off-by: Inaky Perez-Gonzalez \u003cinaky@linux.intel.com\u003e\nSigned-off-by: Dirk Brandewie \u003cdirk.j.brandewie@intel.com\u003e\n"
    },
    {
      "commit": "ead68239913cb9c19150facf1656517f81d66fcb",
      "tree": "2a84b9b21cef71b543d117c461231e771d071e43",
      "parents": [
        "16eafba8defcd507831eec926b61db474af0aabb"
      ],
      "author": {
        "name": "Dirk Brandewie",
        "email": "dirk.j.brandewie@intel.com",
        "time": "Tue May 12 06:22:27 2009 -0700"
      },
      "committer": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Thu Jun 11 03:30:19 2009 -0700"
      },
      "message": "wimax/i2400m: Change d_printf() level for secure boot messages\n\nChanging debug level of print out to support validation engineers\ngetting the messages they need.\n\nSigned-off-by:  \u003cdirk.j.brandewie@intel.com\u003e\n"
    },
    {
      "commit": "16eafba8defcd507831eec926b61db474af0aabb",
      "tree": "d9350c8f76d700afa26fcb5e4aad8942594a9fd2",
      "parents": [
        "e9a6b45be580d648ed2f21646214733504bd4d6f"
      ],
      "author": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Fri May 08 12:46:26 2009 -0700"
      },
      "committer": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Thu Jun 11 03:30:19 2009 -0700"
      },
      "message": "wimax/i2400m: i2400m_schedule_work() doesn\u0027t need i2400m-\u003ework_queue\n\nBy mistake, the BUG_ON() check was left in there and it will fail when\ncalled if i2400m-\u003ework_queue is still not setup.\n\nSigned-off-by: Inaky Perez-Gonzalez \u003cinaky@linux.intel.com\u003e\n"
    },
    {
      "commit": "e9a6b45be580d648ed2f21646214733504bd4d6f",
      "tree": "e8dccd2ef276a4725ee9f1bfaad8b3ce5d0f6cf1",
      "parents": [
        "fff1068559a2ae00a036b80c5df3c564fc6c6305"
      ],
      "author": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Fri May 08 13:02:41 2009 -0700"
      },
      "committer": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Thu Jun 11 03:30:18 2009 -0700"
      },
      "message": "wimax/i2400m: i2400m\u0027s work queue should be initialized before RX support\n\nRX support is the only user of the work-queue, to process\nreports/notifications from the device. Thus, it needs the work queue\nto be initialized first.\n\nSigned-off-by: Inaky Perez-Gonzalez \u003cinaky@linux.intel.com\u003e\n"
    },
    {
      "commit": "fff1068559a2ae00a036b80c5df3c564fc6c6305",
      "tree": "be56841153c1bb258e7d535a9c84a851336c4ffa",
      "parents": [
        "fb10167478a3a8e29fe122a7bf4c67b5cfc48a1b"
      ],
      "author": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Fri May 08 08:58:51 2009 -0700"
      },
      "committer": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Thu Jun 11 03:30:18 2009 -0700"
      },
      "message": "wimax/i2400m: don\u0027t call netif_start_queue() in _tx_msg_sent()\n\nReported and fixed by Cindy H Kao.\n\nWhen the device is stopped __i2400m_dev_stop() stops the network\nqueue.\n\nHowever, when this is done in the middle of heavy network operation,\nwhen the bus-specific subdriver is still wrapping up and it reports a\nsent TX transaction with _tx_msg_sent() right after the device was\nstopped, the queue was being started again, which was causing a stream\nof oopsen and finally a panic.\n\nIn any case, said call has no place there. It\u0027s a left over from an\nearly implementation that was discarded later on.\n\nSigned-off-by: Inaky Perez-Gonzalez \u003cinaky@linux.intel.com\u003e\n"
    },
    {
      "commit": "fb10167478a3a8e29fe122a7bf4c67b5cfc48a1b",
      "tree": "c71f8cbfb7e1cb3425d0ed1aa70de2a333a59aa9",
      "parents": [
        "0ed586d075ef65c0268982e5b7f36d0ffaa95547"
      ],
      "author": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Thu May 07 10:27:42 2009 -0700"
      },
      "committer": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Thu Jun 11 03:30:17 2009 -0700"
      },
      "message": "wimax/i2400m: introduce module parameter to disable entering power save\n\nThe i2400m driver waits for the device to report being ready for\nentering power save before asking it to do so. This module parameter\nallows control of said operation; if disabled, the driver won\u0027t ask\nthe device to enter power save mode.\n\nThis is useful in setups where power saving is not so important or\nwhen the overhead imposed by network reentry after power save is not\nacceptable; by combining this with parameter \u0027idle_mode_disabled\u0027, the\ndriver will always maintain both the connection and the device in\nactive state.\n\nSigned-off-by: Inaky Perez-Gonzalez \u003cinaky@linux.intel.com\u003e\n"
    },
    {
      "commit": "2b85a34e911bf483c27cfdd124aeb1605145dc80",
      "tree": "3cea3e8a27b62de2f92e759641c27200d8bde421",
      "parents": [
        "f2333a014c1e13ac8e1b73a6fd77731c524eff78"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Jun 11 02:55:43 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 02:55:43 2009 -0700"
      },
      "message": "net: No more expensive sock_hold()/sock_put() on each tx\n\nOne of the problem with sock memory accounting is it uses\na pair of sock_hold()/sock_put() for each transmitted packet.\n\nThis slows down bidirectional flows because the receive path\nalso needs to take a refcount on socket and might use a different\ncpu than transmit path or transmit completion path. So these\ntwo atomic operations also trigger cache line bounces.\n\nWe can see this in tx or tx/rx workloads (media gateways for example),\nwhere sock_wfree() can be in top five functions in profiles.\n\nWe use this sock_hold()/sock_put() so that sock freeing\nis delayed until all tx packets are completed.\n\nAs we also update sk_wmem_alloc, we could offset sk_wmem_alloc\nby one unit at init time, until sk_free() is called.\nOnce sk_free() is called, we atomic_dec_and_test(sk_wmem_alloc)\nto decrement initial offset and atomicaly check if any packets\nare in flight.\n\nskb_set_owner_w() doesnt call sock_hold() anymore\n\nsock_wfree() doesnt call sock_put() anymore, but check if sk_wmem_alloc\nreached 0 to perform the final freeing.\n\nDrawback is that a skb-\u003etruesize error could lead to unfreeable sockets, or\neven worse, prematurely calling __sk_free() on a live socket.\n\nNice speedups on SMP. tbench for example, going from 2691 MB/s to 2711 MB/s\non my 8 cpu dev machine, even if tbench was not really hitting sk_refcnt\ncontention point. 5 % speedup on a UDP transmit workload (depends\non number of flows), lowering TX completion cpu usage.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f2333a014c1e13ac8e1b73a6fd77731c524eff78",
      "tree": "4e3b5dfb59a9c8a62e36e75e54a6fae6555fb428",
      "parents": [
        "934037bc2ed29a94bbde72aa6a2e66bdc5861b98"
      ],
      "author": {
        "name": "Figo.zhang",
        "email": "figo1802@gmail.com",
        "time": "Thu Jun 11 02:49:10 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 02:49:10 2009 -0700"
      },
      "message": "netxen: No need to check vfree() pointer.\n\nvfree() does its own \u0027NULL\u0027 check, so no need for check before\ncalling it.\n\nSigned-off-by: Figo.zhang \u003cfigo1802@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "934037bc2ed29a94bbde72aa6a2e66bdc5861b98",
      "tree": "45104a213708003c341a3b10d3c9cb9b4503adea",
      "parents": [
        "a7a0ef31def6b6badd94fc96c8f17c2e18d91513"
      ],
      "author": {
        "name": "Sathya Perla",
        "email": "sathyap@serverengines.com",
        "time": "Wed Jun 10 02:23:50 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 02:47:19 2009 -0700"
      },
      "message": "be2net: Fix be_tx_q_clean() being called on freed queues\n\nIn the tx queue destroy path, be_tx_q_clean() is currently called after the tx queues are freed; it must be called before.\n\nSigned-off-by: Sathya Perla \u003csathyap@serverengines.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a7a0ef31def6b6badd94fc96c8f17c2e18d91513",
      "tree": "92fe215db7404bf3c112ddc4ea371d849338408e",
      "parents": [
        "76fbb42919396b9bf68c9a03ceb037c971a02e2f"
      ],
      "author": {
        "name": "Sathya Perla",
        "email": "sathyap@serverengines.com",
        "time": "Wed Jun 10 02:23:28 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 02:47:18 2009 -0700"
      },
      "message": "be2net: Fix early reset of rx-completion\n\nbe_rx_compl_get() must not reset(via the valid word) the rx_compl as the rx_compl is not processed yet; it must be reset after it is processed.\n\nSigned-off-by: Sathya Perla \u003csathyap@serverengines.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "76fbb42919396b9bf68c9a03ceb037c971a02e2f",
      "tree": "780f561949c82da4e2be24c4caa539ca2d9823ac",
      "parents": [
        "6811086899f2740c08d0ade26f8b9d705708e0cc"
      ],
      "author": {
        "name": "Sathya Perla",
        "email": "sathyap@serverengines.com",
        "time": "Wed Jun 10 02:21:56 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 02:47:16 2009 -0700"
      },
      "message": "be2net: Fix rx stats updation in non-lro path\n\nrx stats are not getting updated when an rx_compl with only one frag is rcvd in non-lro path.\n\nSigned-off-by: Sathya Perla \u003csathyap@serverengines.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6811086899f2740c08d0ade26f8b9d705708e0cc",
      "tree": "2dacb7018e7db2d710ad8e4203f202d46afee150",
      "parents": [
        "b305be78a044c5f6a9d146229a280d08db0c630a"
      ],
      "author": {
        "name": "Sathya Perla",
        "email": "sathyap@serverengines.com",
        "time": "Wed Jun 10 02:21:16 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 02:47:16 2009 -0700"
      },
      "message": "be2net: fix netdev stats rx_errors and rx_dropped\n\nFix netdev stat rx_errors to cover length related errors and checksum errors and rx_dropped to the pkts dropped due to lack of buffers\n\nSigned-off-by: Sathya Perla \u003csathyap@serverengines.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b305be78a044c5f6a9d146229a280d08db0c630a",
      "tree": "f047ec1f8a5c9999d5870e58a6b0b2b0de2f58ad",
      "parents": [
        "c0feed87fe452c20681ae29909adaecedd1ec9f3"
      ],
      "author": {
        "name": "Sathya Perla",
        "email": "sathyap@serverengines.com",
        "time": "Wed Jun 10 02:18:35 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 02:47:15 2009 -0700"
      },
      "message": "be2net: Use cancel_delayed_work_sync instead of cancel_delayed_work()\n\nUse cancel_delayed_work_sycn instead of cancel_delayed_work() to reliably kill be_worker() as it rearms itself.\n\nSigned-off-by: Sathya Perla \u003csathyap@serverengines.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c0feed87fe452c20681ae29909adaecedd1ec9f3",
      "tree": "29e99cd46d95e9a123c144fdb0b56c7fd168966f",
      "parents": [
        "50d36a93dc2c773c9625c62275b88ac936d9c4ba"
      ],
      "author": {
        "name": "Figo.zhang",
        "email": "figo1802@gmail.com",
        "time": "Wed Jun 10 04:18:38 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 02:47:14 2009 -0700"
      },
      "message": "tehuti: No need check vfree() pointer.\n\nvfree() does its own \u0027NULL\u0027 check, so no need for check before\ncalling it.\n\nSigned-off-by: Figo.zhang \u003cfigo1802@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "50d36a93dc2c773c9625c62275b88ac936d9c4ba",
      "tree": "a64d5a8908da8b9b5e349e60858f4498fb5ea4fc",
      "parents": [
        "74b793e1ef79edc49bc031a88d62f1e93fc6b30f"
      ],
      "author": {
        "name": "Figo.zhang",
        "email": "figo1802@gmail.com",
        "time": "Wed Jun 10 04:21:55 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 02:47:14 2009 -0700"
      },
      "message": "vxge: No need for check vfree() pointer.\n\nvfree() does its own \u0027NULL\u0027 check, so no need for check before\ncalling it.\n\nSigned-off-by: Figo.zhang \u003cfigo1802@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "74b793e1ef79edc49bc031a88d62f1e93fc6b30f",
      "tree": "dc32a12c1883f882f524e6a79561787aa36cc9ec",
      "parents": [
        "87433bfc75f34599c38137e172b6bf8fd41971ba"
      ],
      "author": {
        "name": "Divy Le Ray",
        "email": "divy@chelsio.com",
        "time": "Tue Jun 09 23:25:21 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 02:47:13 2009 -0700"
      },
      "message": "cxgb3: remove __GFP_NOFAIL usage\n\nPre-allocate a skb at init time to be used for control messages to the HW\nif skb allocation fails.\n\nTolerate failures to send messages initializing some memories at the cost of\nparity error detection for these memories.\nRetry sending connection id release messages if both alloc_skb(GFP_ATOMIC)\nand alloc_skb(GFP_KERNEL) fail.\nDo not bring the interface up if messages binding queue set to port fail to\nbe sent.\n\nSigned-off-by: Divy Le Ray \u003cdivy@chelsio.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "87433bfc75f34599c38137e172b6bf8fd41971ba",
      "tree": "3398596509adbfefccdf180deb8a9784e1b66179",
      "parents": [
        "e762cd70efad6b6236b084ff7e5ce54a5f524320"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Jun 09 22:55:53 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 02:47:12 2009 -0700"
      },
      "message": "r8169: use dev_kfree_skb() instead of dev_kfree_skb_irq()\n\nrtl8169_tx_interrupt() is used from NAPI context, it can\ndirectly free skbs. dev_kfree_skb_irq() is a leftover from\npre-NAPI times of this driver.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e762cd70efad6b6236b084ff7e5ce54a5f524320",
      "tree": "7b229749f3aafa8ba5f307721d39df633b08f284",
      "parents": [
        "d005ba6cc82440d9ebf96f3ec8f79c54578b898f"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "bhutchings@solarflare.com",
        "time": "Wed Jun 10 05:30:05 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 02:47:11 2009 -0700"
      },
      "message": "sfc: Expose 100/1000BASE-T MDI-X status via ethtool\n\nSigned-off-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d005ba6cc82440d9ebf96f3ec8f79c54578b898f",
      "tree": "871a9a75e1fcb6dbf9c8f3aa6944fe6a7baf2068",
      "parents": [
        "b8facca01ba381c3f8ff2391fbe3860ebc6a6bdc"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "bhutchings@solarflare.com",
        "time": "Wed Jun 10 05:28:04 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 02:47:10 2009 -0700"
      },
      "message": "mdio: Expose 10GBASE-T MDI-X status via ethtool\n\nThis is available in a standard MDIO register in 10GBASE-T PHYs.\n\nSigned-off-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b8facca01ba381c3f8ff2391fbe3860ebc6a6bdc",
      "tree": "11e7b481ab9436d5cbaf616101b46aa67cb4bc36",
      "parents": [
        "88c55e3cbd1bd4e8f52dcda67456763710a025a5"
      ],
      "author": {
        "name": "Ron Mercer",
        "email": "ron.mercer@qlogic.com",
        "time": "Wed Jun 10 15:49:34 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 02:37:05 2009 -0700"
      },
      "message": "qlge: Allow RX buf rings to be \u003e than 4096 bytes.\n\nRX buffer rings can be comprised of non-contiguous fixed\nsize chunks of memory. The ring is given to the hardware\nas a pointer to a location that stores the location of\nthe queue.  If the queue is greater than 4096 bytes then\nthe hardware gets a list of said pointers.\nThis patch addes the necessary logic to generate the list if\nthe queue size exceeds 4096.\n\nSigned-off-by: Ron Mercer \u003cron.mercer@qlogic.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "88c55e3cbd1bd4e8f52dcda67456763710a025a5",
      "tree": "d038c7d993f6d24baf6ba7928877b2e259f444a8",
      "parents": [
        "0ed586d075ef65c0268982e5b7f36d0ffaa95547"
      ],
      "author": {
        "name": "Ron Mercer",
        "email": "ron.mercer@qlogic.com",
        "time": "Wed Jun 10 15:49:33 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 02:37:04 2009 -0700"
      },
      "message": "qlge: Relax alignment on TX harware queue.\n\nThe alignment was on size of queue boundary, but the hardware\nonly requires 4-byte alignment.\n\nSigned-off-by: Ron Mercer \u003cron.mercer@qlogic.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0ed586d075ef65c0268982e5b7f36d0ffaa95547",
      "tree": "a5dee54175f55ebb39bb0861c36393c1b829a98b",
      "parents": [
        "b77e5228849fdcd7a5d73beb16b9ad99395236ec"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Wed Jun 10 09:55:03 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 02:32:41 2009 -0700"
      },
      "message": "atl1c: WAKE_MCAST tested twice, not WAKE_UCAST\n\nThe WAKE_MCAST bit is tested twice, the first should be WAKE_UCAST.\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nCc: Jie Yang \u003cjie.yang@atheros.com\u003e\nCc: Jay Cliburn \u003cjcliburn@gmail.com\u003e\nCc: Chris Snook \u003ccsnook@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b77e5228849fdcd7a5d73beb16b9ad99395236ec",
      "tree": "3a5bc41d328882fab6fd6e2f48fd72f6bda3b308",
      "parents": [
        "ef5c89967d50042b29937fb724e057c1aa3c5207"
      ],
      "author": {
        "name": "Risto Suominen",
        "email": "risto.suominen@gmail.com",
        "time": "Wed Jun 10 09:55:00 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 02:32:41 2009 -0700"
      },
      "message": "de2104x: support for systems lacking cache coherence\n\nAdd a configurable Descriptor Skip Length for systems that lack cache\ncoherence.\n\n(akpm: I think this should be done as a module parameter, not a\ncompile-tinme option)\n\nSigned-off-by: Risto Suominen \u003cRisto.Suominen@gmail.com\u003e\nCc: Grant Grundler \u003cgrundler@parisc-linux.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ef5c89967d50042b29937fb724e057c1aa3c5207",
      "tree": "572d5fc5a712ae0ae81f14151d8ff858bc05d8a0",
      "parents": [
        "720017623ab294b66c8a95d7bc5ccf75a581ebe4"
      ],
      "author": {
        "name": "sg.tweak@gmail.com",
        "email": "sg.tweak@gmail.com",
        "time": "Wed Jun 10 09:55:02 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 02:32:39 2009 -0700"
      },
      "message": "drivers/net/macvlan.c: fix cloning of tagged VLAN interfaces\n\nAddresses http://bugzilla.kernel.org/show_bug.cgi?id\u003d13348\n\nakpm: the reporter disappeared, so I typed it in again.\n\nIt is not possible to make clone of tagged VLAN interface to be used as\nmac-based vlan interfave.\n\nHow reproducible:\nUse any 802.1q tagged vlan interface, e.g. eth2.700 and clone it:\n\n  ip link add link eth2.700 address 00:04:75:cb:38:09 macvlan0 type macvlan\n  ip link set dev macvlan0 up\n  ip addr add 10.195.1.1/24 dev macvlan0\n\nSo far, so good. Now try to ping anything via macvlan0:\n\n  ping 10.195.1.2\n\nActual results:\nFor every attempted packet tx kernel writes to console:\n\n------------[ cut here ]------------\nWARNING: at net/8021q/vlan_dev.c:254 vlan_dev_hard_header+0x36/0x126 [8021q]()\nHardware name: M22ES\nModules linked in: arptable_filter arp_tables bridge veth macvlan arc4 ecb\nppp_mppe ppp_async crc_ccitt ppp_generic slhc autofs4 sunrpc 8021q garp stp\nipt_REJECT nf_conntrack_ipv4 nf_defrag_ipv4 xt_state nf_conntrack xt_tcpudp\nx_tables dm_mirror dm_region_hash dm_log dm_multipath dm_mod sbs sbshc lp\nfloppy snd_intel8x0 joydev snd_seq_dummy snd_intel8x0m snd_ac97_codec\nide_cd_mod ac97_bus snd_seq_oss cdrom snd_seq_midi_event serio_raw snd_seq\nsnd_seq_device snd_pcm_oss snd_mixer_oss parport_pc snd_pcm parport battery\n8139cp snd_timer i2c_sis96x ac button snd rtc_cmos rtc_core 8139too soundcore\nrtc_lib mii i2c_core pcspkr snd_page_alloc pata_sis libata sd_mod scsi_mod ext3\njbd ehci_hcd ohci_hcd uhci_hcd [last unloaded: ip_tables]\nPid: 0, comm: swapper Tainted: G        W  2.6.29.3 #1\nCall Trace:\n [\u003cc0425f48\u003e] warn_slowpath+0x60/0x9f\n [\u003cc0425f6f\u003e] warn_slowpath+0x87/0x9f\n [\u003cdffb850d\u003e] vlan_dev_hard_header+0x0/0x126 [8021q]\n [\u003cdffb8543\u003e] vlan_dev_hard_header+0x36/0x126 [8021q]\n [\u003cdffb850d\u003e] vlan_dev_hard_header+0x0/0x126 [8021q]\n [\u003cdf83155d\u003e] macvlan_hard_header+0x3c/0x47 [macvlan]\n [\u003cdf831521\u003e] macvlan_hard_header+0x0/0x47 [macvlan]\n [\u003cc062bf3f\u003e] arp_create+0xef/0x1ff\n [\u003cc062c08c\u003e] arp_send+0x3d/0x54\n [\u003cc062c916\u003e] arp_solicit+0x16c/0x177\n [\u003cc05fadd2\u003e] neigh_timer_handler+0x227/0x269\n [\u003cc05fabab\u003e] neigh_timer_handler+0x0/0x269\n [\u003cc042ce4d\u003e] run_timer_softirq+0xf0/0x141\n [\u003cc0429e5a\u003e] __do_softirq+0x76/0xf8\n [\u003cc0429de4\u003e] __do_softirq+0x0/0xf8\n \u003cIRQ\u003e  [\u003cc044fb67\u003e] handle_level_irq+0x0/0xad\n [\u003cc0429db7\u003e] irq_exit+0x35/0x62\n [\u003cc04046bb\u003e] do_IRQ+0xdf/0xf4\n [\u003cc04035a7\u003e] common_interrupt+0x27/0x2c\n [\u003cc04079c5\u003e] default_idle+0x2a/0x3d\n [\u003cc0401bb6\u003e] cpu_idle+0x57/0x70\n\nMacvlan driver always uses standard ethernet header length for all types\nof interface to which it is linked.  This patch fixes this problem.\n\nReported-by: \u003csg.tweak@gmail.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "720017623ab294b66c8a95d7bc5ccf75a581ebe4",
      "tree": "b5603217826267eaff7022dca689169b29bf8d36",
      "parents": [
        "e5241c448f94feee40b2a285c8bf55d066420073"
      ],
      "author": {
        "name": "Andreas Mohr",
        "email": "andim2@users.sourceforge.net",
        "time": "Wed Jun 10 09:55:04 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 02:32:39 2009 -0700"
      },
      "message": "e100: add non-MII PHY support\n\nRestore support for cards with MII-lacking PHYs as compared to removed\npre-2.6.29 eepro100 driver: use full low-level MII I/O access abstraction\nby providing clean PHY-specific mdio_ctrl() functions for either standard\nMII-compliant cards, slightly special ones or non-MII PHY ones.\n\nWe now have another netdev_priv member for mdio_ctrl(), thus we have some\narray indirection, but we save some additional opcodes for specific\nphy_82552_v handling in the common case.\n\n[akpm@linux-foundation.org: cleanups]\nSigned-off-by: Andreas Mohr \u003candi@lisas.de\u003e\nCc: Jeff Kirsher \u003cjeffrey.t.kirsher@intel.com\u003e\nCc: Jesse Brandeburg \u003cjesse.brandeburg@intel.com\u003e\nCc: Bruce Allan \u003cbruce.w.allan@intel.com\u003e\nCc: PJ Waskiewicz \u003cpeter.p.waskiewicz.jr@intel.com\u003e\nCc: John Ronciak \u003cjohn.ronciak@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e5241c448f94feee40b2a285c8bf55d066420073",
      "tree": "9dbcdb63524be15dc346cc22ea7eac4a95356114",
      "parents": [
        "84503ddd65e804ccdeedee3f307b40d80ff793e6"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 02:10:19 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 02:10:19 2009 -0700"
      },
      "message": "ieee802154: Use \u0027%Zu\u0027 printf format for size_t.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "84503ddd65e804ccdeedee3f307b40d80ff793e6",
      "tree": "c7b805f441b1d8cb2e86b8411cf2302ff46186b4",
      "parents": [
        "51611a120e8120290152edd7d0020d22a7f4b4a3",
        "2f0accc13520b2644b85f80aedce10d10d88b0ca"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 10 23:41:43 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 10 23:41:43 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6\n"
    },
    {
      "commit": "2f0accc13520b2644b85f80aedce10d10d88b0ca",
      "tree": "7c5ce603af5b3e3e738737f464684ce121cc7fdd",
      "parents": [
        "4e751843d406a4d0471c207872b9e24957de8357"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Jun 10 16:50:29 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 10 13:28:41 2009 -0400"
      },
      "message": "cfg80211: fix rfkill locking problem\n\nrfkill currently requires a global lock within the\nrfkill_register() function, and holds that lock over\ncalls to the set_block() methods. This means that we\ncannot hold a lock around rfkill_register() that we\nalso require in set_block(), directly or indirectly.\nFix cfg80211 to register rfkill outside the block\nlocked by its global lock. Much of what cfg80211 does\nin the locked block doesn\u0027t need to be locked anyway.\n\nReported-by: Vasanthakumar Thiagarajan \u003cvasanth@atheros.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4e751843d406a4d0471c207872b9e24957de8357",
      "tree": "0f3aec11337d37d45215a8a498bd5ce6b6edc507",
      "parents": [
        "43f7853180ed522944b3b1d4979cdb9f2b103ca3"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Jun 10 15:16:52 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 10 13:28:41 2009 -0400"
      },
      "message": "mac80211: disable PS while probing AP\n\nWhen associated, but probing the AP because we detected\nbeacon loss, we need to disable powersave to be able to\nreceive the probe response. Change the code to do that by\nchecking whether we\u0027re trying to probe when determining\nthe possibility of going into PS, and recalculate the PS\nability at the necessary spots.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "43f7853180ed522944b3b1d4979cdb9f2b103ca3",
      "tree": "f0df610f63a78b34a9e1df479b615ac5213b188f",
      "parents": [
        "a6ae0716e5c3b5f9dbe5ed8f473a6c7b89692365"
      ],
      "author": {
        "name": "Luis R. Rodriguez",
        "email": "lrodriguez@atheros.com",
        "time": "Wed Jun 10 15:16:15 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 10 13:28:40 2009 -0400"
      },
      "message": "mac80211: disable moving between PS modes during scan\n\nWe don\u0027t want to trigger moving between PS mode during scan,\nbecause then we will sometimes end up sending nullfunc frames\nduring scan. We\u0027re supposed to only send one prior to scan\nand after scan.\n\nThis fixes an oops which occured due to an assert in ath9k:\n\nhttp://marc.info/?l\u003dlinux-wireless\u0026m\u003d124277331319024\n\nThe assert was happening because the rate control algorithm\nfigures it should find at least one valid dual stream or\nsingle stream rate. Since we allow mac80211 to send nullfunc\nframes during scan and dynamic PS was enabled at times we ended\nup trying to send nullfunc frames for the target sta on the\nwrong band for which we have no valid rate to communicate with\nit. This breaks the assumptions in rate control.\n\nWe determine we also need to disable moving between PS modes\nwhen not associated so lets just add that now as well, and we\nshould not have a ps_sdata when that interface cannot actually\ngo into PS because it\u0027s not associated.\n\nSigned-off-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a6ae0716e5c3b5f9dbe5ed8f473a6c7b89692365",
      "tree": "03cb4056959ccf538b26f565c1e4509e4e0a5250",
      "parents": [
        "27004b10ce56985d8a010ce966af179f1b34193f"
      ],
      "author": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Tue Jun 09 23:43:11 2009 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 10 13:28:39 2009 -0400"
      },
      "message": "ath5k: minor rfkill cleanup\n\nAlways enable rfkill since the ifdefs in the code is not really worth\nthe Kconfig option.  Also fix a few code style things, and remove the\nusage of the ah_gpio[] array so we can remove it later.\n\nSigned-off-by: Bob Copeland \u003cme@bobcopeland.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "27004b10ce56985d8a010ce966af179f1b34193f",
      "tree": "4646125665fa26e4ac00014d11c0b12c1a7f0952",
      "parents": [
        "0bffe40f21e2ddc5215b1faec4e8dbbc215e7d4d"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jun 09 19:48:25 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 10 13:28:39 2009 -0400"
      },
      "message": "mac80211: clean up return value of __ieee80211_parse_tx_radiotap\n\nThe return type has more than two values, but it can validly\nonly ever return TX_DROP and TX_CONTINUE, so use a bool\ninstead of ieee80211_tx_result.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "0bffe40f21e2ddc5215b1faec4e8dbbc215e7d4d",
      "tree": "48d1de44f8f8aa155713ff38f038ec35326d27bf",
      "parents": [
        "5eae6592e9bdc989151171828ee97e0ad9e1b1ac"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jun 09 16:18:32 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 10 13:28:39 2009 -0400"
      },
      "message": "mac80211: don\u0027t use master netdev name\n\nAlways use the wiphy name instead.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5eae6592e9bdc989151171828ee97e0ad9e1b1ac",
      "tree": "bda15e3f62747c889f35a4d648c2a714319f5ec0",
      "parents": [
        "736708bd04b7a8941fddda32211982cab5d14431"
      ],
      "author": {
        "name": "Vasanthakumar Thiagarajan",
        "email": "vasanth@atheros.com",
        "time": "Tue Jun 09 15:28:21 2009 +0530"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 10 13:28:38 2009 -0400"
      },
      "message": "ath9k: Fix tx stuck when connected to aggr disabled HT AP\n\nThis patch along with my previous patch in mac80211 \"Fix the\nway ADDBA count..\", fixes hang in tx when connected to an HT\nAP which rejects/times out on addba req.\n\nAGGR_ADDBA_PROGRESS should be cleared in aggr state when addba\nnegotiation is terminated due to either addba response is timed out\nor addba is denied by the AP. With out clearing this bit,\nall frames are queued onto s/w queue for getting tx\u0027d as aggr and\nwill never be scheduled onto hw queue.\n\nSigned-off-by: Vasanthakumar Thiagarajan \u003cvasanth@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "736708bd04b7a8941fddda32211982cab5d14431",
      "tree": "c80f9c15307caf20ed7c11916138719fc2c206d6",
      "parents": [
        "558f6d3229ddb9f11ca4ffee0439046c283882ff"
      ],
      "author": {
        "name": "Vasanthakumar Thiagarajan",
        "email": "vasanth@atheros.com",
        "time": "Tue Jun 09 14:11:46 2009 +0530"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 10 13:28:38 2009 -0400"
      },
      "message": "mac80211: Fix the way ADDBA request count being modified\n\naddba_req_num[tid] is supposed to have the count of consecutive\naddba request attempts on \u0027tid\u0027 which failed. This count is checked\nagainst a retry threshold (3 times) before starting the addba negotiation.\nThis patch fixes the way this addba count is incremented/reset and thereby\navoids indefinite addba attempts.\n\nSigned-off-by: Vasanthakumar Thiagarajan \u003cvasanth@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "558f6d3229ddb9f11ca4ffee0439046c283882ff",
      "tree": "cc20cb0aafe414dd94b9988e3609deb626a3b676",
      "parents": [
        "403a3a136122457165321e90b7569a321cc9ac12"
      ],
      "author": {
        "name": "Luis R. Rodriguez",
        "email": "lrodriguez@atheros.com",
        "time": "Mon Jun 08 18:54:37 2009 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 10 13:28:37 2009 -0400"
      },
      "message": "cfg80211: fix for duplicate response for driver reg request\n\nAs Pavel puts userspace can be stupid and should not\ncause kernel crashes. In this case Pavel was able to\nfind a crash here but unable to reproduce. Either way\nlets deal with this.\n\nThis should fix:\n\n------------[ cut here ]------------\nkernel BUG at /home/proski/src/linux-2.6/net/wireless/reg.c:2132!\nOops: Exception in kernel mode, sig: 5 [#1]\nPowerMac\nModules linked in: ath5k ath [last unloaded: scsi_wait_scan]\nNIP: c02f3eac LR: c02f3d08 CTR: 00000000\nREGS: ef107aa0 TRAP: 0700   Not tainted  (2.6.30-rc8-wl)\nMSR: 00029032 \u003cEE,ME,CE,IR,DR\u003e  CR: 88002442  XER: 20000000\nTASK \u003d ef84acb0[834] \u0027crda\u0027 THREAD: ef106000\nGPR00: ef953840 ef107b50 ef84acb0 ef1380bc 00000006 c035a5c8 ef107b90 c035a5c8\nGPR08: 00080005 efb68980 c0445628 ef130004 28002422 10019ce0 10012d3c 00000001\nGPR16: 1070b2ac 00000005 48023558 1070b380 4802304c 00000000 ef107ddc c035a5c8\nGPR24: ef107b78 c0443350 ef8bcb00 00000005 ef138080 c04a6a70 c04a0000 ef8bcb00\nNIP [c02f3eac] set_regdom+0x4c4/0x4ec\nLR [c02f3d08] set_regdom+0x320/0x4ec\nCall Trace:\n[ef107b50] [c02f3d08] set_regdom+0x320/0x4ec (unreliable)\n[ef107b70] [c02f9d10] nl80211_set_reg+0x140/0x2d0\n[ef107bc0] [c02aa2b8] genl_rcv_msg+0x204/0x228\n[ef107c10] [c02a97cc] netlink_rcv_skb+0xe8/0x10c\n[ef107c30] [c02aa094] genl_rcv+0x3c/0x5c\n[ef107c40] [c02a9050] netlink_unicast+0x308/0x36c\n[ef107c80] [c02a92bc] netlink_sendmsg+0x208/0x2f0\n[ef107cd0] [c0282048] sock_sendmsg+0xac/0xe4\n[ef107db0] [c02822b4] sys_sendmsg+0x234/0x2d8\n[ef107f00] [c0283a88] sys_socketcall+0x108/0x258\n[ef107f40] [c0012790] ret_from_syscall+0x0/0x38\n\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "403a3a136122457165321e90b7569a321cc9ac12",
      "tree": "55eafd8ccb989d19937d884993326c7d8e135be7",
      "parents": [
        "908209c160da8ecb68052111972b7a21310eac3f"
      ],
      "author": {
        "name": "Michael Buesch",
        "email": "mb@bu3sch.de",
        "time": "Mon Jun 08 21:04:57 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 10 13:28:37 2009 -0400"
      },
      "message": "b43: Add fw capabilities\n\nAdd automagic feature flags, so the firmware can tell the driver\nabout supported features and the driver can switch features on/off as\nneeded.\n\nSigned-off-by: Michael Buesch \u003cmb@bu3sch.de\u003e\nSigned-off-by: Stefan Lippers-Hollmann \u003cs.l-h@gmx.de\u003e\nTested-by: Stefan Lippers-Hollmann \u003cs.l-h@gmx.de\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "908209c160da8ecb68052111972b7a21310eac3f",
      "tree": "a888e1a29212e88d7182fa3f438c6f348362c432",
      "parents": [
        "869fb3a46cd18235e6f176328a2d8085ffe2c704"
      ],
      "author": {
        "name": "Alan Jenkins",
        "email": "alan-jenkins@tuffmail.co.uk",
        "time": "Mon Jun 08 13:12:23 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 10 13:28:37 2009 -0400"
      },
      "message": "rfkill: don\u0027t impose global states on resume (just restore the previous states)\n\nOnce rfkill-input is disabled, the \"global\" states will only be used as\ndefault initial states.\n\nSince the states will always be the same after resume, we shouldn\u0027t\ngenerate events on resume.\n\nSigned-off-by: Alan Jenkins \u003calan-jenkins@tuffmail.co.uk\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "869fb3a46cd18235e6f176328a2d8085ffe2c704",
      "tree": "2ee3dcb0975b27cac8e238403fd449dcac7772cc",
      "parents": [
        "b3fa1329eaf2a7b97124dacf5b663fd51346ac19"
      ],
      "author": {
        "name": "Alan Jenkins",
        "email": "alan-jenkins@tuffmail.co.uk",
        "time": "Mon Jun 08 11:31:11 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 10 13:28:37 2009 -0400"
      },
      "message": "sony-laptop: no need to unblock rfkill on load\n\nThe re-written rfkill core ensures rfkill devices are initialized to\nthe system default state.  The core calls set_block after registration\nso the driver shouldn\u0027t need to.\n\nSigned-off-by: Alan Jenkins \u003calan-jenkins@tuffmail.co.uk\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "b3fa1329eaf2a7b97124dacf5b663fd51346ac19",
      "tree": "93fd6a76af00568e8317e3e4f084135379ec6c25",
      "parents": [
        "8f77f3849cc3ae2d6df9301785a3d316ea7d7ee1"
      ],
      "author": {
        "name": "Alan Jenkins",
        "email": "alan-jenkins@tuffmail.co.uk",
        "time": "Mon Jun 08 13:27:27 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 10 13:28:37 2009 -0400"
      },
      "message": "rfkill: remove set_global_sw_state\n\nrfkill_set_global_sw_state() (previously rfkill_set_default()) will no\nlonger be exported by the rewritten rfkill core.\n\nInstead, platform drivers which can provide persistent soft-rfkill state\nacross power-down/reboot should indicate their initial state by calling\nrfkill_set_sw_state() before registration.  Otherwise, they will be\ninitialized to a default value during registration by a set_block call.\n\nWe remove existing calls to rfkill_set_sw_state() which happen before\nregistration, since these had no effect in the old model.  If these\ndrivers do have persistent state, the calls can be put back (subject\nto testing :-).  This affects hp-wmi and acer-wmi.\n\nDrivers with persistent state will affect the global state only if\nrfkill-input is enabled.  This is required, otherwise booting with\nwireless soft-blocked and pressing the wireless-toggle key once would\nhave no apparent effect.  This special case will be removed in future\nalong with rfkill-input, in favour of a more flexible userspace daemon\n(see Documentation/feature-removal-schedule.txt).\n\nNow rfkill_global_states[n].def is only used to preserve global states\nover EPO, it is renamed to \".sav\".\n\nSigned-off-by: Alan Jenkins \u003calan-jenkins@tuffmail.co.uk\u003e\nAcked-by: Henrique de Moraes Holschuh \u003chmh@hmh.eng.br\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8f77f3849cc3ae2d6df9301785a3d316ea7d7ee1",
      "tree": "02143d1e81c85f64900546e3e9c2b820f72745d1",
      "parents": [
        "fc240e3fc5791c572402b0857948da7b1e68d77f"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sun Jun 07 21:58:37 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 10 13:28:37 2009 -0400"
      },
      "message": "mac80211: do not pass PS frames out of mac80211 again\n\nIn order to handle powersave frames properly we had needed\nto pass these out to the device queues again, and introduce\nthe skb-\u003erequeue bit. This, however, also has unnecessary\noverhead by needing to \u0027clean up\u0027 already tried frames, and\nthis clean-up code is also buggy when software encryption\nis used.\n\nInstead of sending the frames via the master netdev queue\nagain, simply put them into the pending queue. This also\nfixes a problem where frames for that particular station\ncould be reordered when some were still on the software\nqueues and older ones are re-injected into the software\nqueue after them.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "fc240e3fc5791c572402b0857948da7b1e68d77f",
      "tree": "8b3feae524e121796021f618abeae5c4cd0d9e02",
      "parents": [
        "b91d0e364077fad401454699143ad6a78902c20a"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sun Jun 07 21:57:08 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 10 13:27:55 2009 -0400"
      },
      "message": "sony: fix rfkill code\n\nDuring the rfkill conversion I added code to call\nsony_nc_rfkill_set with the wrong argument, causing\na segfault Reinette reported. The compiler could not\ncatch that because the argument is, and needs to be,\nvoid *.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nReported-by: Reinette Chatre \u003creinette.chatre@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "b91d0e364077fad401454699143ad6a78902c20a",
      "tree": "9cff43a299e31011b67eea1e58673a11ad284d1d",
      "parents": [
        "f41f3f373dd72344c65d801d6381fe83ef3a2c54"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Jun 08 08:14:28 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 10 13:27:54 2009 -0400"
      },
      "message": "rfkill: remove input Kconfig\n\nNow that we added the ioctl, there\u0027s no need to ask\nthe user to configure this. We will keep it enabled\nfor now, and eventually swap the default to n. Also\nlet embedded users select it only if they need it.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f41f3f373dd72344c65d801d6381fe83ef3a2c54",
      "tree": "fd5a9da51f07d2128fa741032d9f09ce1fa96cfb",
      "parents": [
        "e6a3b61681dcb963e6465ffbc4330b44824f35e3"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sun Jun 07 12:30:34 2009 -0500"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 10 13:27:54 2009 -0400"
      },
      "message": "b43/legacy: port to cfg80211 rfkill\n\nThis ports the b43/legacy rfkill code to the new API offered\nby cfg80211 and thus removes a lot of useless stuff.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Larry Finger \u003cLarry.Finger@lwfinger.net\u003e\nCc: Michael Buesch \u003cmb@bu3sch.de\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e6a3b61681dcb963e6465ffbc4330b44824f35e3",
      "tree": "1628eb26f1a79858391686a64e9e72780cd6340a",
      "parents": [
        "207ee1621722876bb79828689582bf77fd1be200"
      ],
      "author": {
        "name": "Tobias Doerffel",
        "email": "tobias.doerffel@gmail.com",
        "time": "Tue Jun 09 17:33:27 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 10 13:27:54 2009 -0400"
      },
      "message": "ath5k: added cfg80211 based rfkill support\n\nThis patch introduces initial rfkill support for the ath5k driver\nbased on rfkill support in the cfg80211 framework.\nAll rfkill related code is separated into newly created rfkill.c.\n\nChanges to existing code are minimal:\n\n* added a new data structure ath5k_rfkill to the ath5k_softc structure\n* inserted calls to HW rfkill init/deinit routines\n* ath5k_intr() has been extended to handle AR5K_INT_GPIO interrupts\n\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "207ee1621722876bb79828689582bf77fd1be200",
      "tree": "93ea2cf095ef571dd89c2510e5b7f4e5e85e64ae",
      "parents": [
        "9b9c5aaeedfda256ed77094303e2a7242c3290da"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sun Jun 07 12:26:52 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 10 13:27:54 2009 -0400"
      },
      "message": "rfkill: print events when input handler is disabled/enabled\n\nIt is useful for debugging when we know if something disabled\nthe in-kernel rfkill input handler.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "9b9c5aaeedfda256ed77094303e2a7242c3290da",
      "tree": "07dc845cc308d9a4b721bf59605217bc884f01b1",
      "parents": [
        "2543a0c4c0fde46f9f206cec1e1cf951a2a63a66"
      ],
      "author": {
        "name": "Christian Lamparter",
        "email": "chunkeey@web.de",
        "time": "Sat Jun 06 05:07:23 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 10 13:27:54 2009 -0400"
      },
      "message": "ar9170: xmit code revamp\n\nThis patch is a back-port from aggregation testing code.\n\nIn the past, we didn\u0027t limit the amount of active tx urbs.\nHowever, ar9170 only has a limited buffer reserved for\npending data frames.\n\nThis wasn\u0027t much of a problem with the slower 802.11b/g.\nWe simply stopped the full queue and moved on to something different\nin the mean time. But - as you guessed it -  this simple approach\nstands in way for a decent aggregation implementation.\n\nSigned-off-by: Christian Lamparter \u003cchunkeey@web.de\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "2543a0c4c0fde46f9f206cec1e1cf951a2a63a66",
      "tree": "a210cc5e152cb432acabf40efffe6344d9ccdb0b",
      "parents": [
        "dacb6f1d8fa5200efc4e609fe63a750b960993b6"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Jun 05 11:47:43 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 10 13:27:54 2009 -0400"
      },
      "message": "ar9170: interpret firmware debug commands\n\nThis adds new commands that the original firmware will not send\nbut we can use them to debug firmware.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "dacb6f1d8fa5200efc4e609fe63a750b960993b6",
      "tree": "aa6be0dbf67ec8b439655441d3bcdae2eb13b320",
      "parents": [
        "b52a033c2c501a8015df3727a4bd73389ccb1641"
      ],
      "author": {
        "name": "matthieu castet",
        "email": "castet.matthieu@free.fr",
        "time": "Thu Jun 04 22:16:18 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 10 13:27:53 2009 -0400"
      },
      "message": "mac80211 : fix unaligned rx skb\n\nmac80211 is checking is the skb is aligned on 32 bit boundary.\nBut it is checking against ethernet header, whereas Linux expect IP\nheader aligned.  And ethernet ether size is 6*2+2\u003d14, so aligning\nethernet header make IP header unaligned.\n\nSigned-off-by: Matthieu CASTET \u003ccastet.matthieu@free.fr\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "b52a033c2c501a8015df3727a4bd73389ccb1641",
      "tree": "57275be394a4031015d7978b3cc11dfd87d4ae9b",
      "parents": [
        "5ee58d7e6ad019675b4090582aec4fa1180d8703"
      ],
      "author": {
        "name": "Matthieu CASTET",
        "email": "castet.matthieu@free.fr",
        "time": "Thu Jun 04 23:18:33 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 10 13:27:53 2009 -0400"
      },
      "message": "b43: Fix possible unaligned u32 access\n\nFix possible unaligned u32 access in b43_generate_plcp_hdr().\nUnaligned data is read/write with a u32 pointer instead of using the\npacked structure. Some versions of gcc ignore the \"packed\" attribute, if the\nstructure element is accessed through a local pointer.\n\nSigned-off-by: Matthieu CASTET \u003ccastet.matthieu@free.fr\u003e\nSigned-off-by: Michael Buesch \u003cmb@bu3sch.de\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5ee58d7e6ad019675b4090582aec4fa1180d8703",
      "tree": "1f6cb14a99e1b629bf9dcba2879feaf62a463af5",
      "parents": [
        "4d1d49858c0a5a4fb1be4bc7972754cd640245ba"
      ],
      "author": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Fri Jun 05 08:21:50 2009 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 10 13:27:51 2009 -0400"
      },
      "message": "mac80211: fix minstrel single-rate memory corruption\n\nThe minstrel rate controller periodically looks up rate indexes in\na sampling table.  When accessing a specific row and column, minstrel\ncorrectly does a bounds check which, on the surface, appears to handle\nthe case where mi-\u003en_rates \u003c 2.  However, mi-\u003esample_idx is actually\ndefined as an unsigned, so the right hand side is taken to be a huge\npositive number when negative, and the check will always fail.\n\nConsequently, the RC will overrun the array and cause random memory\ncorruption when communicating with a peer that has only a single rate.\nThe max value of mi-\u003esample_idx is around 25 so casting to int should\nhave no ill effects.\n\nWithout the change, uptime is a few minutes under load with an AP\nthat has a single hard-coded rate, and both the AP and STA could\npotentially crash.  With the change, both lasted 12 hours with a\nsteady load.\n\nThanks to Ognjen Maric for providing the single-rate clue so I could\nreproduce this.\n\nThis fixes http://bugzilla.kernel.org/show_bug.cgi?id\u003d12490 on the\nregression list (also http://bugzilla.kernel.org/show_bug.cgi?id\u003d13000).\n\nCc: stable@kernel.org\nReported-by: Sergey S. Kostyliov \u003crathamahata@gmail.com\u003e\nReported-by: Ognjen Maric \u003cognjen.maric@gmail.com\u003e\nSigned-off-by: Bob Copeland \u003cme@bobcopeland.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4d1d49858c0a5a4fb1be4bc7972754cd640245ba",
      "tree": "fc481d282b7c7e45972b9d3b6cd2e903cac409e6",
      "parents": [
        "582241a08409c89b086774c60b55c1a1706a7e5d"
      ],
      "author": {
        "name": "Sebastian Andrzej Siewior",
        "email": "bigeasy@linutronix.de",
        "time": "Thu Jun 04 21:57:03 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 10 13:27:50 2009 -0400"
      },
      "message": "net/libertas: remove GPIO-CS handling in SPI interface code\n\nThis removes the dependency on GPIO framework and lets the SPI host\ndriver handle the chip select. The SPI host driver is required to keep\nthe CS active for the entire message unless cs_change says otherwise.\nThis patch collects the two/three single SPI transfers into a message.\nAlso the delay in read path in case use_dummy_writes are not used is\nmoved into the SPI host driver.\n\nTested-by: Mike Rapoport \u003cmike@compulab.co.il\u003e\nTested-by: Andrey Yurovsky \u003candrey@cozybit.com\u003e\nSigned-off-by: Sebastian Andrzej Siewior \u003cbigeasy@linutronix.de\u003e\nAcked-by: Dan Williams \u003cdcbw@redhat.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "582241a08409c89b086774c60b55c1a1706a7e5d",
      "tree": "fc7a3ae5f390a5ee47f954d1863ebd9c7caa5764",
      "parents": [
        "aa18294a289548f45ea6a784f008295ccddf6b14"
      ],
      "author": {
        "name": "Jussi Kivilinna",
        "email": "jussi.kivilinna@mbnet.fi",
        "time": "Thu Jun 04 20:13:25 2009 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 10 13:27:50 2009 -0400"
      },
      "message": "rndis_wlan: cleanup: rename all rndis_wext* objects to rndis_wlan*\n\nDriver used to be named rndis_wext before inclusion to upstream. Since\nrndis_wlan is being converted to cfg80211, use of rndis_wext* names\ncan be confusing. So rename all rndis_wext to rndis_wlan (as should\nhave been when driver was renamed).\n\nSigned-off-by: Jussi Kivilinna \u003cjussi.kivilinna@mbnet.fi\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "aa18294a289548f45ea6a784f008295ccddf6b14",
      "tree": "0bd55070c485a15e599d6f9accf24a90cbc8fbde",
      "parents": [
        "a60e77e5a41330334fd0ca428f18919d1ea6ed62"
      ],
      "author": {
        "name": "Jussi Kivilinna",
        "email": "jussi.kivilinna@mbnet.fi",
        "time": "Thu Jun 04 20:13:19 2009 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 10 13:27:49 2009 -0400"
      },
      "message": "rndis_wlan: cleanup: capitalize enum labels\n\nCapitalize enum labels as told in Documents/CodingStyle.\n\nSigned-off-by: Jussi Kivilinna \u003cjussi.kivilinna@mbnet.fi\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a60e77e5a41330334fd0ca428f18919d1ea6ed62",
      "tree": "74ab8959c0bb0dece119c52db41c55df0926f6ea",
      "parents": [
        "1506e30b5f25f6c3357167a18f0e4ae6f5662a28"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Jun 04 18:26:06 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 10 13:27:49 2009 -0400"
      },
      "message": "iwlwifi: port to cfg80211 rfkill\n\nThis ports the iwlwifi rfkill code to the new API offered by\ncfg80211 and thus removes a lot of useless stuff. The soft-\nrfkill is completely removed since that is now handled by\nsetting the interfaces down.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nTested-by: Reinette Chatre \u003creinette.chatre@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "440f0d588555892601cfe511728a0fc0c8204063",
      "tree": "1b98fe9ec8f7e7337f7eed09af2c36a43a9f92b8",
      "parents": [
        "a31e1ffd2231b8fdf7eda9ed750a4a0df9bcad4e"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Jun 10 14:32:47 2009 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Jun 10 14:32:47 2009 +0200"
      },
      "message": "netfilter: nf_conntrack: use per-conntrack locks for protocol data\n\nIntroduce per-conntrack locks and use them instead of the global protocol\nlocks to avoid contention. Especially tcp_lock shows up very high in\nprofiles on larger machines.\n\nThis will also allow to simplify the upcoming reliable event delivery patches.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "51611a120e8120290152edd7d0020d22a7f4b4a3",
      "tree": "75ed9a66a1282e4d93711f20b7d88310e963a087",
      "parents": [
        "bf12691d846b48fa6e3289810a822687457036cf"
      ],
      "author": {
        "name": "Wolfgang Grandegger",
        "email": "wg@grandegger.com",
        "time": "Wed Jun 10 01:12:39 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 10 01:12:39 2009 -0700"
      },
      "message": "can: sja1000_of_platform: fix build problems with printk format\n\nAccording to \"Documentation/printk-formats.txt\", if the type is\ndependent on a config option for its size, like resource_size_t,\nwe should use a format specifier of its largest possible type and\nexplicitly cast to it.\n\nSigned-off-by: Wolfgang Grandegger \u003cwg@grandegger.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bf12691d846b48fa6e3289810a822687457036cf",
      "tree": "7d57e3459f168a96f2bf0c4cb8668eb35186e041",
      "parents": [
        "eaa184a1a1cda3991420c47bc960ddea6cbacff2"
      ],
      "author": {
        "name": "Jesper Dangaard Brouer",
        "email": "hawk@comx.dk",
        "time": "Mon Jun 08 03:11:48 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 10 01:11:27 2009 -0700"
      },
      "message": "sunrpc/auth_gss: Call rcu_barrier() on module unload.\n\nAs the module uses rcu_call() we should make sure that all\nrcu callback has been completed before removing the code.\n\nSigned-off-by: Jesper Dangaard Brouer \u003chawk@comx.dk\u003e\nAcked-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "eaa184a1a1cda3991420c47bc960ddea6cbacff2",
      "tree": "609a773a114cf2efee117354c66ba2b8da811a90",
      "parents": [
        "382bfeec48e43c416af9b271b9b70d2f61ef32d2"
      ],
      "author": {
        "name": "Jesper Dangaard Brouer",
        "email": "hawk@comx.dk",
        "time": "Mon Jun 08 03:11:43 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 10 01:11:25 2009 -0700"
      },
      "message": "sctp: protocol.c call rcu_barrier() on unload.\n\nOn module unload call rcu_barrier(), this is needed as synchronize_rcu()\nis not strong enough.  The kmem_cache_destroy() does invoke\nsynchronize_rcu() but it does not provide same protection.\n\nSigned-off-by: Jesper Dangaard Brouer \u003chawk@comx.dk\u003e\nAcked-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "382bfeec48e43c416af9b271b9b70d2f61ef32d2",
      "tree": "9b9e400fe75b57f6f09da071306968ed8d12ef98",
      "parents": [
        "67137f3cc727e4da0297ffd7bfade837aa15ecfa"
      ],
      "author": {
        "name": "Jesper Dangaard Brouer",
        "email": "hawk@comx.dk",
        "time": "Mon Jun 08 03:11:38 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 10 01:11:24 2009 -0700"
      },
      "message": "can: af_can.c use rcu_barrier() on module unload.\n\nThis module uses rcu_call() thus it should use rcu_barrier()\non module unload.\n\nSigned-off-by: Jesper Dangaard Brouer \u003chawk@comx.dk\u003e\nAcked-by: Oliver Hartkopp \u003coliver@hartkopp.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "67137f3cc727e4da0297ffd7bfade837aa15ecfa",
      "tree": "c989f7e2e788aa79e105f93b0682d34f1435e1cf",
      "parents": [
        "6e327c11a91d190650df9aabe7d3694d4838bfa1"
      ],
      "author": {
        "name": "Jesper Dangaard Brouer",
        "email": "hawk@comx.dk",
        "time": "Mon Jun 08 03:11:33 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 10 01:11:23 2009 -0700"
      },
      "message": "nfnetlink_queue: Use rcu_barrier() on module unload.\n\nThis module uses rcu_call() thus it should use rcu_barrier() on module unload.\n\nAlso fixed a trivial typo \u0027nfetlink\u0027 -\u003e \u0027nfnetlink\u0027 in comment.\n\nSigned-off-by: Jesper Dangaard Brouer \u003chawk@comx.dk\u003e\nAcked-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nAcked-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6e327c11a91d190650df9aabe7d3694d4838bfa1",
      "tree": "14e1df4f759109548dea22372ad971624e23b8ab",
      "parents": [
        "1abb0de2f89c1f9c454c973356b9e4867722f10a"
      ],
      "author": {
        "name": "Jesper Dangaard Brouer",
        "email": "hawk@comx.dk",
        "time": "Mon Jun 08 03:11:28 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 10 01:11:22 2009 -0700"
      },
      "message": "8021q: Vlan driver should use rcu_barrier() on unload instead of syncronize_net()\n\nThe VLAN 8021q driver needs to call rcu_barrier() when unloading the module,\ninstead of syncronize_net().  This is needed to make sure that outstanding\ncall_rcu() callbacks have completed, before the callback function code is\nremoved on module unload.\n\nSigned-off-by: Jesper Dangaard Brouer \u003chawk@comx.dk\u003e\nReviewed-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nAcked-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1abb0de2f89c1f9c454c973356b9e4867722f10a",
      "tree": "d8805c9559a42a070b24d28f3bf04b9ba9dd7743",
      "parents": [
        "00acd0d2ecac925fdcbe47cbda5ea517f87ad354"
      ],
      "author": {
        "name": "Ron Mercer",
        "email": "ron.mercer@qlogic.com",
        "time": "Tue Jun 09 06:35:12 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 10 01:04:16 2009 -0700"
      },
      "message": "qlge: bugfix: Get rid of errant spin_unlock().\n\nSigned-off-by: Ron Mercer \u003cron.mercer@qlogic.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "00acd0d2ecac925fdcbe47cbda5ea517f87ad354",
      "tree": "52f362a469fbcd861f5596e7e94df9b1ddc0ae68",
      "parents": [
        "e4552f51ceefcf51b79c5bf8dafc7abb4bb7657d"
      ],
      "author": {
        "name": "Ron Mercer",
        "email": "ron.mercer@qlogic.com",
        "time": "Tue Jun 09 05:39:31 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 10 01:04:15 2009 -0700"
      },
      "message": "qlge: Add set TX csum ethtool op.\n\nSigned-off-by: Ron Mercer \u003cron.mercer@qlogic.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e4552f51ceefcf51b79c5bf8dafc7abb4bb7657d",
      "tree": "e151217b00245847863e64f09286bc1d2735d7de",
      "parents": [
        "542512e4824c1cecc05478f279dccbde1d8bf97a"
      ],
      "author": {
        "name": "Ron Mercer",
        "email": "ron.mercer@qlogic.com",
        "time": "Tue Jun 09 05:39:32 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 10 01:04:14 2009 -0700"
      },
      "message": "qlge: Add support for varied pcie function numbers.\n\nCurrently we support only PCIe NIC functions zero and one, and FCoE\nfunctions as 3 and 4. Future configurations can mix these up in any\nfashion.\nThis patch removes the 0-1 dependancy and allows usage of any of the 4\nfunctions. We also find the alternate NIC function (if exist) and\ndetermine our port number based on the comparison of the two functions:\nLower function number gets first port, higher function gets second port.\n\nSigned-off-by: Ron Mercer \u003cron.mercer@qlogic.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "542512e4824c1cecc05478f279dccbde1d8bf97a",
      "tree": "09731618c827d4d07414fcbb2cacb92caf7a7880",
      "parents": [
        "ec33a49135d96df56ef106a49c2434ca81f821f9"
      ],
      "author": {
        "name": "Ron Mercer",
        "email": "ron.mercer@qlogic.com",
        "time": "Tue Jun 09 05:39:33 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 10 01:04:13 2009 -0700"
      },
      "message": "qlge: Add support for using alternate MAC address.\n\nExtract either manufacturer or Bladecenter Open Fabric\nManager (BOFM) MAC address.  BOFM may indicate an\nalternate MAC address.  This patch honors that request\nby extracting the MAC address from a different\nflash location if a flag is set.\n\nSigned-off-by: Ron Mercer \u003cron.mercer@qlogic.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ec33a49135d96df56ef106a49c2434ca81f821f9",
      "tree": "af78eac4273f6e2f830d23c36a38e4e59f3ba62b",
      "parents": [
        "a32959cd9df77423c8b375119ee7f135ff302bc1"
      ],
      "author": {
        "name": "Ron Mercer",
        "email": "ron.mercer@qlogic.com",
        "time": "Tue Jun 09 05:39:28 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 10 01:04:12 2009 -0700"
      },
      "message": "qlge: Drop inbound frames \u003e MTU.\n\nThe max frame size register is set higher than the MTU to\naccomodate FCoE frames.\n\nSigned-off-by: Ron Mercer \u003cron.mercer@qlogic.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a32959cd9df77423c8b375119ee7f135ff302bc1",
      "tree": "3c1b2b26826ea16a02d9dd338cb3d540a62c9d63",
      "parents": [
        "e4059d942a211cc752c145bd46b03386e425be0b"
      ],
      "author": {
        "name": "Ron Mercer",
        "email": "ron.mercer@qlogic.com",
        "time": "Tue Jun 09 05:39:27 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 10 01:04:12 2009 -0700"
      },
      "message": "qlge: Drop inbound error frames.\n\nSigned-off-by: Ron Mercer \u003cron.mercer@qlogic.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "e4059d942a211cc752c145bd46b03386e425be0b"
}
