)]}'
{
  "log": [
    {
      "commit": "ae91d60ba88ef0bdb1b5e9b2363bd52fc45d2af7",
      "tree": "728da1949f0a401c48f1bcf81cb4f50ca7a26384",
      "parents": [
        "07fb6f26bab869fc3bb9df0a785ba734f4c51ac3"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Tue Mar 04 14:29:18 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Mar 04 16:35:16 2008 -0800"
      },
      "message": "drivers/isdn: correct use of ! and \u0026\n\nIn commit e6bafba5b4765a5a252f1b8d31cbf6d2459da337 (\"wmi: (!x \u0026 y)\nstrikes again\"), a bug was fixed that involved converting !x \u0026 y to !(x\n\u0026 y).  The code below shows the same pattern, and thus should perhaps be\nfixed in the same way.\n\nThis is not tested and clearly changes the semantics, so it is only\nsomething to consider.\n\nThe semantic patch that makes this change is as follows:\n(http://www.emn.fr/x-info/coccinelle/)\n\n// \u003csmpl\u003e\n@@ expression E1,E2; @@\n(\n  !E1 \u0026 !E2\n|\n- !E1 \u0026 E2\n+ !(E1 \u0026 E2)\n)\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nCc: Karsten Keil \u003ckkeil@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": "eaa0ff15c30dc9799eb4d12660edb73aeb6d32c5",
      "tree": "592ea2010b2e6fb2951e78c21dafc4c2e6fe2134",
      "parents": [
        "551e4fb2465b87de9d4aa1669b27d624435443bb"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Feb 06 01:36:06 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:40:59 2008 -0800"
      },
      "message": "fix ! versus \u0026 precedence in various places\n\nFix various instances of\n\n\tif (!expr \u0026 mask)\n\nwhich should probably have been\n\n\tif (!(expr \u0026 mask))\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Peter Osterlund \u003cpetero2@telia.com\u003e\nCc: Karsten Keil \u003ckkeil@suse.de\u003e\nCc: Mauro Carvalho Chehab \u003cmchehab@infradead.org\u003e\nCc: \"Antonino A. Daplas\" \u003cadaplas@pol.net\u003e\nCc: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2bd7e20e0d24325b0799544bc8105cc57cc8e2aa",
      "tree": "b743234b90f7c8574ae3ae85f7c8f2209484f90a",
      "parents": [
        "9ea6e5d8088096aeba29b6778c3d3d82fb495e9f"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue May 08 00:32:45 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:15:17 2007 -0700"
      },
      "message": "ISDN: Spinlock initializer cleanup\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Karsten Keil \u003ckkeil@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": "d626f62b11e00c16e81e4308ab93d3f13551812a",
      "tree": "fac4af6ced853755e12fc709d55f0c2bec51265d",
      "parents": [
        "2a123b86e2b242a4a6db990d2851d45e192f88e5"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Mar 27 18:55:52 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:28:23 2007 -0700"
      },
      "message": "[SK_BUFF]: Introduce skb_copy_from_linear_data{_offset}\n\nTo clearly state the intent of copying from linear sk_buffs, _offset being a\noverly long variant but interesting for the sake of saving some bytes.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "41f96935b4c41daea2c4dbbf137960375cf764c1",
      "tree": "9af3af5e41f68baf063b5f929797c837169bb9df",
      "parents": [
        "0b2dd130a5a8774a30de1f94266f6b9a9892153c"
      ],
      "author": {
        "name": "Burman Yan",
        "email": "yan_952@hotmail.com",
        "time": "Fri Dec 08 02:39:35 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 08 08:29:01 2006 -0800"
      },
      "message": "[PATCH] isdn: replace kmalloc+memset with kzalloc\n\nAcked-by: Karsten Keil \u003ckkeil@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7786ce192fc4917fb9b789dd823476ff8fd6cf66",
      "tree": "3ec803c1c77ff22bfe6076ea4d90a27f888b4fad",
      "parents": [
        "04518bfe8eac2e82b476fb2b0093527adc2bc791"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Oct 17 00:10:40 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 17 08:18:49 2006 -0700"
      },
      "message": "[PATCH] ISDN: check for userspace copy faults\n\nMost of the ISDN -\u003ereadstat() implementations needed to check\ncopy_to_user() and put_user() return values.\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\nCc: Karsten Keil \u003ckkeil@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "078d396598401dbaa88d5f95ec45579f9d3dce0e",
      "tree": "747f189ffa8a1329b1cab8f048b12992d89e9cd4",
      "parents": [
        "0d9ba869e103d91d471146378ad85bf1fb8e74b4"
      ],
      "author": {
        "name": "Amol Lad",
        "email": "amol@verismonetworks.com",
        "time": "Tue Oct 17 00:10:37 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 17 08:18:48 2006 -0700"
      },
      "message": "[PATCH] drivers/isdn/isdnloop: save_flags()/cli(), restore_flags() replaced appropriately\n\nSigned-off-by: Amol Lad \u003camol@verismonetworks.com\u003e\nAcked-by: Karsten Keil \u003ckkeil@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6ab3d5624e172c553004ecc862bfeac16d9d68b7",
      "tree": "6d98881fe91fd9583c109208d5c27131b93fa248",
      "parents": [
        "e02169b682bc448ccdc819dc8639ed34a23cedd8"
      ],
      "author": {
        "name": "Jörn Engel",
        "email": "joern@wohnheim.fh-wedel.de",
        "time": "Fri Jun 30 19:25:36 2006 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Jun 30 19:25:36 2006 +0200"
      },
      "message": "Remove obsolete #include \u003clinux/config.h\u003e\n\nSigned-off-by: Jörn Engel \u003cjoern@wohnheim.fh-wedel.de\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "8d3b33f67fdc0fb364a1ef6d8fbbea7c2e4e6c98",
      "tree": "7fc48e7544ea6a6c6a7cc7685612a38f5edc25ae",
      "parents": [
        "c721bccece2b3abca4f7b0b95108e68b78445cec"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Mar 25 03:07:05 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:52 2006 -0800"
      },
      "message": "[PATCH] Remove MODULE_PARM\n\nMODULE_PARM was actually breaking: recent gcc version optimize them out as\nunused.  It\u0027s time to replace the last users, which are generally in the\nmost unloved drivers anyway.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "733482e445ca4450cf41381b1c95e2b8c7145114",
      "tree": "d31a2fdaeb8e439fc348a781c780a035d794266d",
      "parents": [
        "c1a0f5e3c01d28b6782457bee5ae5ace3a9958ec"
      ],
      "author": {
        "name": "Olaf Hering",
        "email": "olh@suse.de",
        "time": "Tue Nov 08 21:34:55 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:55:57 2005 -0800"
      },
      "message": "[PATCH] changing CONFIG_LOCALVERSION rebuilds too much, for no good reason\n\nThis patch removes almost all inclusions of linux/version.h.  The 3\n#defines are unused in most of the touched files.\n\nA few drivers use the simple KERNEL_VERSION(a,b,c) macro, which is\nunfortunatly in linux/version.h.\n\nThere are also lots of #ifdef for long obsolete kernels, this was not\ntouched.  In a few places, the linux/version.h include was move to where\nthe LINUX_VERSION_CODE was used.\n\nquilt vi `find * -type f -name \"*.[ch]\"|xargs grep -El \u0027(UTS_RELEASE|LINUX_VERSION_CODE|KERNEL_VERSION|linux/version.h)\u0027|grep -Ev \u0027(/(boot|coda|drm)/|~$)\u0027`\n\nsearch pattern:\n/UTS_RELEASE\\|LINUX_VERSION_CODE\\|KERNEL_VERSION\\|linux\\/\\(utsname\\|version\\).h\n\nSigned-off-by: Olaf Hering \u003colh@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "24763c48a3c9cdf0a138038b51a7fca65859cd78",
      "tree": "01fcb4658b6bf2df08f0d48ef0f58ea215621e63",
      "parents": [
        "4de4ebc6d83de6d9739fa24e49ae4a305d5d1268"
      ],
      "author": {
        "name": "Nishanth Aravamudan",
        "email": "nacc@us.ibm.com",
        "time": "Mon Nov 07 01:01:16 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Nov 07 07:53:57 2005 -0800"
      },
      "message": "[PATCH] isdn: fix-up schedule_timeout() usage\n\nUse schedule_timeout_interruptible() instead of\nset_current_state()/schedule_timeout() to reduce kernel size.\n\nSigned-off-by: Nishanth Aravamudan \u003cnacc@us.ibm.com\u003e\nCc: Karsten Keil \u003ckkeil@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
