)]}'
{
  "log": [
    {
      "commit": "165125e1e480f9510a5ffcfbfee4e3ee38c05f23",
      "tree": "8009c8a5ff09e26dc2418d42f66ecafb055c52a2",
      "parents": [
        "f695baf2df9e0413d3521661070103711545207a"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 24 09:28:11 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 24 09:28:11 2007 +0200"
      },
      "message": "[BLOCK] Get rid of request_queue_t typedef\n\nSome of the code has been gradually transitioned to using the proper\nstruct request_queue, but there\u0027s lots left. So do a full sweet of\nthe kernel and get rid of this typedef and replace its uses with\nthe proper type.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "53d5ed627df852ba8bab7f70df25290bd733792c",
      "tree": "58bb781ce111451281ed24d858020b49c278d0a5",
      "parents": [
        "8c58165108e26d18849a0138c719e680f281197a"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Wed Oct 11 01:22:01 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Oct 11 11:14:23 2006 -0700"
      },
      "message": "[PATCH] Use linux/io.h instead of asm/io.h\n\nIn preparation for moving check_signature, change these users from asm/io.h\nto linux/io.h\n\nSigned-off-by: Matthew Wilcox \u003cwilly@parisc-linux.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7d12e780e003f93433d49ce78cfedf4b4c52adc5",
      "tree": "6748550400445c11a306b132009f3001e3525df8",
      "parents": [
        "da482792a6d1a3fbaaa25fae867b343fb4db3246"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Oct 05 14:55:46 2006 +0100"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@warthog.cambridge.redhat.com",
        "time": "Thu Oct 05 15:10:12 2006 +0100"
      },
      "message": "IRQ: Maintain regs pointer globally rather than passing to IRQ handlers\n\nMaintain a per-CPU global \"struct pt_regs *\" variable which can be used instead\nof passing regs around manually through all ~1800 interrupt handlers in the\nLinux kernel.\n\nThe regs pointer is used in few places, but it potentially costs both stack\nspace and code to pass it around.  On the FRV arch, removing the regs parameter\nfrom all the genirq function results in a 20% speed up of the IRQ exit path\n(ie: from leaving timer_interrupt() to leaving do_IRQ()).\n\nWhere appropriate, an arch may override the generic storage facility and do\nsomething different with the variable.  On FRV, for instance, the address is\nmaintained in GR28 at all times inside the kernel as part of general exception\nhandling.\n\nHaving looked over the code, it appears that the parameter may be handed down\nthrough up to twenty or so layers of functions.  Consider a USB character\ndevice attached to a USB hub, attached to a USB controller that posts its\ninterrupts through a cascaded auxiliary interrupt controller.  A character\ndevice driver may want to pass regs to the sysrq handler through the input\nlayer which adds another few layers of parameter passing.\n\nI\u0027ve build this code with allyesconfig for x86_64 and i386.  I\u0027ve runtested the\nmain part of the code on FRV and i386, though I can\u0027t test most of the drivers.\nI\u0027ve also done partial conversion for powerpc and MIPS - these at least compile\nwith minimal configurations.\n\nThis will affect all archs.  Mostly the changes should be relatively easy.\nTake do_IRQ(), store the regs pointer at the beginning, saving the old one:\n\n\tstruct pt_regs *old_regs \u003d set_irq_regs(regs);\n\nAnd put the old one back at the end:\n\n\tset_irq_regs(old_regs);\n\nDon\u0027t pass regs through to generic_handle_irq() or __do_IRQ().\n\nIn timer_interrupt(), this sort of change will be necessary:\n\n\t-\tupdate_process_times(user_mode(regs));\n\t-\tprofile_tick(CPU_PROFILING, regs);\n\t+\tupdate_process_times(user_mode(get_irq_regs()));\n\t+\tprofile_tick(CPU_PROFILING);\n\nI\u0027d like to move update_process_times()\u0027s use of get_irq_regs() into itself,\nexcept that i386, alone of the archs, uses something other than user_mode().\n\nSome notes on the interrupt handling in the drivers:\n\n (*) input_dev() is now gone entirely.  The regs pointer is no longer stored in\n     the input_dev struct.\n\n (*) finish_unlinks() in drivers/usb/host/ohci-q.c needs checking.  It does\n     something different depending on whether it\u0027s been supplied with a regs\n     pointer or not.\n\n (*) Various IRQ handler function pointers have been moved to type\n     irq_handler_t.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\n(cherry picked from 1b16e7ac850969f38b375e511e3fa2f474a33867 commit)\n"
    },
    {
      "commit": "4aff5e2333c9a1609662f2091f55c3f6fffdad36",
      "tree": "b73d8c2b7c1bdc03d3313c108da7dfc95ee95525",
      "parents": [
        "77ed74da26f50fa28471571ee7a2251b77526d84"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Aug 10 08:44:47 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:23:37 2006 +0200"
      },
      "message": "[PATCH] Split struct request -\u003eflags into two parts\n\nRight now -\u003eflags is a bit of a mess: some are request types, and\nothers are just modifiers. Clean this up by splitting it into\n-\u003ecmd_type and -\u003ecmd_flags. This allows introduction of generic\nLinux block message types, useful for sending generic Linux commands\nto block devices.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "ce7b0f46bbf4bff8daab2dd3d878b9e72a623d09",
      "tree": "7a860cf52fbf1ff768197702af60a8329d296dff",
      "parents": [
        "96192ff1a9d0c6ef365d21667080259d83ea2f5b"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 21:15:16 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 26 12:25:08 2006 -0700"
      },
      "message": "[PATCH] devfs: Remove the gendisk devfs_name field as it\u0027s no longer needed\n\nAnd remove the now unneeded number field.\nAlso fixes all drivers that set these fields.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "945f390f02ce44a13aefc6d9449c99f33c9286a5",
      "tree": "be5685ed17677b4c076b69e7d4d77eae4cbe718c",
      "parents": [
        "ef9ceab28203690a42d7d3915ccf6e208f0762bc"
      ],
      "author": {
        "name": "Tobias Klauser",
        "email": "tklauser@nuerscht.ch",
        "time": "Sun Jan 08 01:05:11 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Jan 08 20:14:08 2006 -0800"
      },
      "message": "[PATCH] drivers/block: Use ARRAY_SIZE macro\n\nUse ARRAY_SIZE macro instead of sizeof(x)/sizeof(x[0]) and remove a\nduplicate of ARRAY_SIZE. Some trailing whitespaces are also removed.\n\ndrivers/block/acsi* has been left out as it\u0027s marked BROKEN.\n\nSigned-off-by: Tobias Klauser \u003ctklauser@nuerscht.ch\u003e\nCc: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a885c8c4316e1c1d2d2c8755da3f3d14f852528d",
      "tree": "e4f4e7a7657c0944d11c259f8f17ffcd6b2da0f5",
      "parents": [
        "5b0ed2c64d8fdafb5fcfb3baabdd288628b1ff9b"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Sun Jan 08 01:02:50 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Jan 08 20:13:54 2006 -0800"
      },
      "message": "[PATCH] Add block_device_operations.getgeo block device method\n\nHDIO_GETGEO is implemented in most block drivers, and all of them have to\nduplicate the code to copy the structure to userspace, as well as getting\nthe start sector.  This patch moves that to common code [1] and adds a\n-\u003egetgeo method to fill out the raw kernel hd_geometry structure.  For many\ndrivers this means -\u003eioctl can go away now.\n\n[1] the s390 block drivers are odd in this respect.  xpram sets -\u003estart\n    to 4 always which seems more than odd, and the dasd driver shifts\n    the start offset around, probably because of it\u0027s non-standard\n    sector size.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Jens Axboe \u003caxboe@suse.de\u003e\nCc: \u003cmike.miller@hp.com\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo Giarrusso \u003cblaisorblade@yahoo.it\u003e\nCc: Bartlomiej Zolnierkiewicz \u003cB.Zolnierkiewicz@elka.pw.edu.pl\u003e\nCc: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nCc: Markus Lidel \u003cMarkus.Lidel@shadowconnect.com\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: James Bottomley \u003cJames.Bottomley@steeleye.com\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "86e8486245a01f05a3267b2e8b5c02c2303b670d",
      "tree": "4d9f90d8d3f34461f6dddacae708eb31753c7bb6",
      "parents": [
        "310b587e011ce02328c8e4c29eccd9f14d9007c5"
      ],
      "author": {
        "name": "Nishanth Aravamudan",
        "email": "nacc@us.ibm.com",
        "time": "Sat Sep 10 00:27:28 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 10 10:06:38 2005 -0700"
      },
      "message": "[PATCH] drivers/block: fix-up schedule_timeout() usage\n\nUse schedule_timeout_{un,}interruptible() instead of\nset_current_state()/schedule_timeout() to reduce kernel size.\n\nSigned-off-by: Nishanth Aravamudan \u003cnacc@us.ibm.com\u003e\nCc: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f6a2f3404a3b09281a264058fa8dd318bac51178",
      "tree": "2cb7925192d25932cade9dab4715fd13ad499c83",
      "parents": [
        "31a34571e5eed7cb1d70d5e7edd013261fe602e9"
      ],
      "author": {
        "name": "Nishanth Aravamudan",
        "email": "nacc@us.ibm.com",
        "time": "Sat Sep 10 00:27:14 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 10 10:06:34 2005 -0700"
      },
      "message": "[PATCH] janitor: block/xd: replace schedule_timeout() with msleep()/msleep_interruptible()\n\nUse msleep() or msleep_interruptible() [as appropriate] instead of\nschedule_timeout() to gurantee the task delays as expected.  As a result\nchanged the units of the timeout variable from jiffies to msecs.\n\nSigned-off-by: Nishanth Aravamudan \u003cnacc@us.ibm.com\u003e\nSigned-off-by: Maximilian Attems \u003cjanitor@sternwelten.at\u003e\nSigned-off-by: Domen Puncer \u003cdomen@coderock.org\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"
    }
  ]
}
