)]}'
{
  "log": [
    {
      "commit": "a5c43dae7ae38c2a6b3e9a819bcf45f010bf6a4a",
      "tree": "b30da7a4541e803e35a6a74ad33e836442c3f6c8",
      "parents": [
        "9d65cb4a1718a072898c7a57a3bc61b2dc4bcd4d"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@sw.ru",
        "time": "Tue May 08 00:28:47 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:15:08 2007 -0700"
      },
      "message": "Fix race between cat /proc/slab_allocators and rmmod\n\nSame story as with cat /proc/*/wchan race vs rmmod race, only\n/proc/slab_allocators want more info than just symbol name.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nAcked-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9d65cb4a1718a072898c7a57a3bc61b2dc4bcd4d",
      "tree": "9e3fd1c9e61e8ed16959d115a9a3f6f7eb0bbf21",
      "parents": [
        "ffb45122766db220d0bf3d01848d575fbbcb6430"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@sw.ru",
        "time": "Tue May 08 00:28:43 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:15:08 2007 -0700"
      },
      "message": "Fix race between cat /proc/*/wchan and rmmod et al\n\nkallsyms_lookup() can go iterating over modules list unprotected which is OK\nfor emergency situations (oops), but not OK for regular stuff like\n/proc/*/wchan.\n\nIntroduce lookup_symbol_name()/lookup_module_symbol_name() which copy symbol\nname into caller-supplied buffer or return -ERANGE.  All copying is done with\nmodule_mutex held, so...\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "42e380832a6911c8a3173ee0172fbc0e4864d80b",
      "tree": "f336312f9476b62bc6f00a85d5506b1cd1c18d4f",
      "parents": [
        "de34ed91c4ffa4727964a832c46e624dd1495cf5"
      ],
      "author": {
        "name": "Robert Peterson",
        "email": "rpeterso@redhat.com",
        "time": "Mon Apr 30 15:09:48 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Apr 30 16:40:39 2007 -0700"
      },
      "message": "Extend print_symbol capability\n\nToday\u0027s print_symbol function dumps a kernel symbol with printk.  This\npatch extends the functionality of kallsyms.c so that the symbol lookup\nfunction may be used without the printk.  This is useful for modules that\nwant to dump symbols elsewhere, for example, to debugfs.  I intend to use\nthe new function call in the GFS2 file system (which will be a separate\npatch).\n\n[akpm@linux-foundation.org: build fix]\n[clameter@sgi.com: sprint_symbol should return length of string like sprintf]\nSigned-off-by: Robert Peterson \u003crpeterso@redhat.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nCc: \"Randy.Dunlap\" \u003crdunlap@xenotime.net\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nAcked-by: Paulo Marques \u003cpmarques@grupopie.com\u003e\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ffc5089196446c08d9a005cf0dd7cab18d119606",
      "tree": "e15925251553152f6859c354e34afe3adfcd1c64",
      "parents": [
        "339b0c0813a257893fa84be999b9b85a50846dd8"
      ],
      "author": {
        "name": "Franck Bui-Huu",
        "email": "vagabon.xyz@gmail.com",
        "time": "Tue Oct 03 01:13:48 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:03:41 2006 -0700"
      },
      "message": "[PATCH] Create kallsyms_lookup_size_offset()\n\nSome uses of kallsyms_lookup() do not need to find out the name of a symbol\nand its module\u0027s name it belongs.  This is specially true in arch specific\ncode, which needs to unwind the stack to show the back trace during oops\n(mips is an example).  In this specific case, we just need to retreive the\nfunction\u0027s size and the offset of the active intruction inside it.\n\nAdds a new entry \"kallsyms_lookup_size_offset()\" This new entry does\nexactly the same as kallsyms_lookup() but does not require any buffers to\nstore any names.\n\nIt returns 0 if it fails otherwise 1.\n\nSigned-off-by: Franck Bui-Huu \u003cvagabon.xyz@gmail.com\u003e\nCc: 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": "8d8fdf5c76816e5263073008f03f097ffc713db3",
      "tree": "2c184b13bead7f72d800bc0dba61b43c8ba9334e",
      "parents": [
        "4d435f9d8ff01ae726a2a84edb9c2457787a337e"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Mon Jul 03 00:24:25 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 03 15:27:00 2006 -0700"
      },
      "message": "[PATCH] lockdep: add print_ip_sym()\n\nProvide a common print_ip_sym() function that prints the passed instruction\npointer as well as the symbol belonging to it.  Avoids adding a bunch of\n#ifdef CONFIG_64BIT in order to get the printk format right on 32/64 bit\nplatforms.\n\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b02454f43578b24bc8b8ab54a239156841f56f6d",
      "tree": "a3d41cde84512360c70916ceb75d0fc89db0df22",
      "parents": [
        "dada0769b95602ae791b9c4cd1cbecfc367f00a9"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Mon Jul 03 00:24:06 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 03 15:26:58 2006 -0700"
      },
      "message": "[PATCH] lockdep: special s390 print_symbol() version\n\nHave a special version of print_symbol() for s390 which clears the most\nsignificant bit of addr before calling __print_symbol().  This seems to be\nbetter than checking/changing each place in the kernel that saves an\ninstruction pointer.\n\nWithout this the output would look like:\n\nhardirqs last  enabled at (30907): [\u003c80018c6a\u003e] 0x80018c6a\nhardirqs last disabled at (30908): [\u003c8001e48c\u003e] 0x8001e48c\nsoftirqs last  enabled at (30904): [\u003c8001dc96\u003e] 0x8001dc96\nsoftirqs last disabled at (30897): [\u003c8001dc50\u003e] 0x8001dc50\n\ninstead of this:\n\nhardirqs last  enabled at (19421): [\u003c80018c72\u003e] cpu_idle+0x176/0x1c4\nhardirqs last disabled at (19422): [\u003c8001e494\u003e] io_no_vtime+0xa/0x1a\nsoftirqs last  enabled at (19418): [\u003c8001dc9e\u003e] do_softirq+0xa6/0xe8\nsoftirqs last disabled at (19411): [\u003c8001dc58\u003e] do_softirq+0x60/0xe8\n\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "62c4f0a2d5a188f73a94f2cb8ea0dba3e7cf0a7f",
      "tree": "e85ca2d0dd43f90dccf758338764c3caa55f333f",
      "parents": [
        "089f26d5e31b7bf42a9a8fefec08b30cd27f4b0e"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Apr 26 12:56:16 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Apr 26 12:56:16 2006 +0100"
      },
      "message": "Don\u0027t include linux/config.h from anywhere else in include/\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.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"
    }
  ]
}
