)]}'
{
  "log": [
    {
      "commit": "7ec7fb394298c212c30e063c57e0aa895efe9439",
      "tree": "f2aa6cf2ff5d66595d5acb7d985bb157f67c6b29",
      "parents": [
        "9fe06081ef145d6582c39e18203b5fffe6f3abc2"
      ],
      "author": {
        "name": "Qinghuang Feng",
        "email": "qhfeng.kernel@gmail.com",
        "time": "Tue Jan 06 14:40:52 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 06 15:59:12 2009 -0800"
      },
      "message": "samples: mark {static|__init|__exit} for {init|exit} functions\n\nNone of these (init|exit) functions is called from other functions which\nis outside the kernel module mechanism or kernel itself, so mark them as\n{static|__init|__exit}.\n\nSigned-off-by: Qinghuang Feng \u003cqhfeng.kernel@gmail.com\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "185000fc556372b7fb7f26516c325f212030dbd3",
      "tree": "522e1a72bcf51c8160f48eb02e79c064ee7d7c9a",
      "parents": [
        "a231934bdf086a4fefc0df06e669499125a9db6f"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Jun 13 11:09:16 2008 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 21:54:56 2008 -0700"
      },
      "message": "kobject: should use kobject_put() in kset-example\n\nWe should call kobject_put() instead of kfree() if kobject_init_and_add()\nreturns an error, shouldn\u0027t we? Don\u0027t set up a bad example ;)\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "44bfe16e1083d66f97a5289e359c52ee2c8b19a7",
      "tree": "ee126f3c4a768e0f6e942132cf683f4ddaa81f55",
      "parents": [
        "40efcb05f213180b7cc8fd8d963377305f236c28"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Nov 27 11:28:26 2007 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:41 2008 -0800"
      },
      "message": "kobject: add sample code for how to use ksets/ktypes/kobjects\n\nThis is a more complex example showing how to create a kset and a ktype\nand some default attributes for a group of kobjects.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    }
  ]
}
