)]}'
{
  "log": [
    {
      "commit": "ee41a82fa362449e608c4dab7df261058ffd52c0",
      "tree": "9345eae60266edba9e694eb2aec86b080238614f",
      "parents": [
        "cc2d6596ca79667830a90ca177ba53b0d83262de"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Aug 22 21:37:46 2007 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:51:58 2007 -0700"
      },
      "message": "amd8111e: trivial endianness annotations, NULL noise removal\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "bea3348eef27e6044b6161fd04c3152215f96411",
      "tree": "f0990b263e5ce42505d290a4c346fe990bcd4c33",
      "parents": [
        "dde4e47e8fe333a5649a3fa0e7db1fa7c08d6158"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Wed Oct 03 16:41:36 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:47:45 2007 -0700"
      },
      "message": "[NET]: Make NAPI polling independent of struct net_device objects.\n\nSeveral devices have multiple independant RX queues per net\ndevice, and some have a single interrupt doorbell for several\nqueues.\n\nIn either case, it\u0027s easier to support layouts like that if the\nstructure representing the poll is independant from the net\ndevice itself.\n\nThe signature of the -\u003epoll() call back goes from:\n\n\tint foo_poll(struct net_device *dev, int *budget)\n\nto\n\n\tint foo_poll(struct napi_struct *napi, int budget)\n\nThe caller is returned the number of RX packets processed (or\nthe number of \"NAPI credits\" consumed if you want to get\nabstract).  The callee no longer messes around bumping\ndev-\u003equota, *budget, etc. because that is all handled in the\ncaller upon return.\n\nThe napi_struct is to be embedded in the device driver private data\nstructures.\n\nFurthermore, it is the driver\u0027s responsibility to disable all NAPI\ninstances in it\u0027s -\u003estop() device close handler.  Since the\nnapi_struct is privatized into the driver\u0027s private data structures,\nonly the driver knows how to get at all of the napi_struct instances\nit may have per-device.\n\nWith lots of help and suggestions from Rusty Russell, Roland Dreier,\nMichael Chan, Jeff Garzik, and Jamal Hadi Salim.\n\nBug fixes from Thomas Graf, Roland Dreier, Peter Zijlstra,\nJoseph Fannin, Scott Wood, Hans J. Koch, and Michael Chan.\n\n[ Ported to current tree and all drivers converted.  Integrated\n  Stephen\u0027s follow-on kerneldoc additions, and restored poll_list\n  handling to the old style to fix mutual exclusion issues.  -DaveM ]\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "632155e659449685b719995d7e7081cff7b01aba",
      "tree": "3d6f7f12f89dd3ec7733c09042420cfac9114989",
      "parents": [
        "78b7611c4a1e3ff008abc4751b566cb533d68f3d"
      ],
      "author": {
        "name": "Yoann Padioleau",
        "email": "padator@wanadoo.fr",
        "time": "Fri Jun 01 00:46:35 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Jun 01 08:18:27 2007 -0700"
      },
      "message": "potential parse error in ifdef\n\nI have made a tool to parse the kernel that does not pre-process the\nsource.  That means that my parser tries to parse all the code, including\ncode in the #else branch or code that is not often compiled because the\ndriver is not very used (or not used at all).  So, my parser sometimes\nreports parse error not originally detected by gcc.  Here is my (first)\npatch.\n\n[akpm@linux-foundation.org: fix amd8111e.c]\nSigned-off-by: Yoann Padioleau \u003cpadator@wanadoo.fr\u003e\nAcked-by: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nAcked-by: Wim Van Sebroeck \u003cwim@iguana.be\u003e\nAcked-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nAcked-by: Jeff Garzik \u003cjeff@garzik.org\u003e\nAcked-by: James Bottomley \u003cJames.Bottomley@steeleye.com\u003e\nCc: Russell King \u003crmk@arm.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": "6b4bdde61bd1f8451801e5fb092cbe2d1050984e",
      "tree": "d9d7b854aed6eca49de9d8f600466130bd885efb",
      "parents": [
        "b0a20ded562cfa60b0d45d269e416f541f2d5aaf"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Fri Dec 01 16:10:50 2006 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:22:30 2006 -0500"
      },
      "message": "[PATCH] amd8111e use standard CRC lib\n\nI noticed this driver (and several others) reinvent their own copy of the\nexisting CRC library. Don\u0027t have the hardware, but tested by extracting\ncode and comparing result.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "6aa20a2235535605db6d6d2bd850298b2fe7f31e",
      "tree": "df0b855043407b831d57f2f2c271f8aab48444f4",
      "parents": [
        "7a291083225af6e22ffaa46b3d91cfc1a1ccaab4"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Sep 13 13:24:59 2006 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Sep 13 13:24:59 2006 -0400"
      },
      "message": "drivers/net: Trim trailing whitespace\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "b2795f596932286ef12dc08857960d654f577405",
      "tree": "f17920db9780a8b3feed97fdf4eb5704243e25e9",
      "parents": [
        "24682978eb5316b9e6041c2773e210180a037d05"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Fri Oct 28 16:43:40 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Fri Oct 28 16:43:40 2005 -0400"
      },
      "message": "[git] change permissions on drivers/net/amd8111e.[ch] to 0644,\nremoving executable bits.\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"
    }
  ]
}
