)]}'
{
  "log": [
    {
      "commit": "841f1d92fb8ca6aa70b56003d1da8874c593e820",
      "tree": "c161f16d86525f4256253045c01307c329d3e4da",
      "parents": [
        "016c2177918301c9a2557c675c12ab88667a27bb"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Fri Dec 23 18:39:27 2011 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jan 04 14:30:46 2012 -0500"
      },
      "message": "net/rfkill/rfkill-gpio.c: introduce missing kfree\n\nError handling code following a kmalloc should free the allocated data.\nThe label fail_alloc already does this for rfkill.\n\nA simplified version of the semantic match that finds the problem is as\nfollows: (http://coccinelle.lip6.fr)\n\n// \u003csmpl\u003e\n@r exists@\nlocal idexpression x;\nstatement S;\nidentifier f1;\nposition p1,p2;\nexpression *ptr !\u003d NULL;\n@@\n\nx@p1 \u003d \\(kmalloc\\|kzalloc\\|kcalloc\\)(...);\n...\nif (x \u003d\u003d NULL) S\n\u003c... when !\u003d x\n     when !\u003d if (...) { \u003c+...x...+\u003e }\nx-\u003ef1\n...\u003e\n(\n return \\(0\\|\u003c+...x...+\u003e\\|ptr\\);\n|\n return@p2 ...;\n)\n\n@script:python@\np1 \u003c\u003c r.p1;\np2 \u003c\u003c r.p2;\n@@\n\nprint \"* file: %s kmalloc %s return %s\" % (p1[0].file,p1[0].line,p2[0].line)\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "98ef55f66f791a04877c9e0a272a8c50cceaf9a5",
      "tree": "0c93263b27d1b5f4da81558763d796c59021936a",
      "parents": [
        "264827555bff54bc2c896b51777e89bd22d01c21"
      ],
      "author": {
        "name": "Axel Lin",
        "email": "axel.lin@gmail.com",
        "time": "Mon Nov 28 17:15:04 2011 +0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Nov 30 15:08:27 2011 -0500"
      },
      "message": "net: rfkill: convert net/rfkill/* to use module_platform_driver()\n\nThis patch converts the drivers in net/rfkill/* to use the\nmodule_platform_driver() macro which makes the code smaller and a bit\nsimpler.\n\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: \"John W. Linville\" \u003clinville@tuxdriver.com\u003e\nCc: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nCc: Antonio Ospite \u003cospite@studenti.unina.it\u003e\nCc: Rhyland Klein \u003crklein@nvidia.com\u003e\nSigned-off-by: Axel Lin \u003caxel.lin@gmail.com\u003e\nAcked-by: Rhyland Klein \u003crklein@nvidia.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e209c5a7ed1870ab7f112ad47083b5d616e8b6a4",
      "tree": "e7f519c0946eca6f1c8f9a818352303e7fb25f42",
      "parents": [
        "893d73f4a15bda966cb72f84897898eb235e134c"
      ],
      "author": {
        "name": "Sangwook Lee",
        "email": "sangwook.lee@linaro.org",
        "time": "Thu Sep 29 12:57:17 2011 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Oct 03 15:19:19 2011 -0400"
      },
      "message": "net:rfkill: add a gpio setup function into GPIO rfkill\n\nAdd a gpio setup function which gives a chance to set up\nplatform specific configuration such as pin multiplexing,\ninput/output direction at the runtime or booting time.\n\nSigned-off-by: Sangwook Lee \u003csangwook.lee@linaro.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "7176ba23f8b589b1df3229574ff46fb904ce9ec5",
      "tree": "e0811eed20f2f636c217f719862a63b6652543b8",
      "parents": [
        "c6820f1e6c8273ca4b8f94c2354193d19e1a5c47"
      ],
      "author": {
        "name": "Rhyland Klein",
        "email": "rklein@nvidia.com",
        "time": "Mon May 16 14:41:48 2011 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu May 19 13:53:54 2011 -0400"
      },
      "message": "net: rfkill: add generic gpio rfkill driver\n\nThis adds a new generic gpio rfkill driver to support rfkill switches\nwhich are controlled by gpios. The driver also supports passing in\ndata about the clock for the radio, so that when rfkill is blocking,\nit can disable the clock.\n\nThis driver assumes platform data is passed from the board files to\nconfigure it for specific devices.\n\nOriginal-patch-by: Anantha Idapalapati \u003caidapalapati@nvidia.com\u003e\nSigned-off-by: Rhyland Klein \u003crklein@nvidia.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    }
  ]
}
