)]}'
{
  "log": [
    {
      "commit": "5cde7656d0dd222170eb0250bd1f70c9018fd438",
      "tree": "6ebd5b76968f84d5fd8545cfe3400162d76d222c",
      "parents": [
        "577eba9e22e872574c466648b46eeb3e0d04372e"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "djwong@us.ibm.com",
        "time": "Fri Mar 23 15:02:26 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 16:58:38 2012 -0700"
      },
      "message": "crc32: select an algorithm via Kconfig\n\nAllow the kernel builder to choose a crc32* algorithm for the kernel.\n\nSigned-off-by: Darrick J. Wong \u003cdjwong@us.ibm.com\u003e\nCc: Bob Pearson \u003crpearson@systemfabricworks.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "46c5801eaf86e83cb3a4142ad35188db5011fff0",
      "tree": "2b8a8f7709aa7dadafdf13f823488cf51e2e2fed",
      "parents": [
        "78dff4189708d07cdcaf7bfd1b04ebe78ac9c041"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "djwong@us.ibm.com",
        "time": "Fri Mar 23 15:02:25 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 16:58:38 2012 -0700"
      },
      "message": "crc32: bolt on crc32c\n\nReuse the existing crc32 code to stamp out a crc32c implementation.\n\nSigned-off-by: Darrick J. Wong \u003cdjwong@us.ibm.com\u003e\nCc: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nCc: Bob Pearson \u003crpearson@systemfabricworks.com\u003e\nCc: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "324eb0f17d9dcead3c60c133aa244f6b3631fec9",
      "tree": "657c564269a0fc1921f4252dbf0184725f5c85fa",
      "parents": [
        "9a1dbf6a29694c9d81b498019f103aee0f8b5b6c"
      ],
      "author": {
        "name": "Bob Pearson",
        "email": "rpearson@systemfabricworks.com",
        "time": "Fri Mar 23 15:02:24 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 16:58:37 2012 -0700"
      },
      "message": "crc32: add slice-by-8 algorithm to existing code\n\nAdd slicing-by-8 algorithm to the existing slicing-by-4 algorithm.  This\nconsists of:\n\n- extend largest BITS size from 32 to 64\n- extend tables from tab[4][256] to up to tab[8][256]\n- Add code for inner loop.\n\n[djwong@us.ibm.com: Minor changelog tweaks]\nSigned-off-by: Bob Pearson \u003crpearson@systemfabricworks.com\u003e\nSigned-off-by: Darrick J. Wong \u003cdjwong@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9a1dbf6a29694c9d81b498019f103aee0f8b5b6c",
      "tree": "1f331fa108ea29ccf06a7b5816da4dbcaa12bf2d",
      "parents": [
        "ce4320ddda4c2520fe77194d3c801ad4e8a8aa11"
      ],
      "author": {
        "name": "Bob Pearson",
        "email": "rpearson@systemfabricworks.com",
        "time": "Fri Mar 23 15:02:23 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 16:58:37 2012 -0700"
      },
      "message": "crc32: make CRC_*_BITS definition correspond to actual bit counts\n\ncrc32.c provides a choice of one of several algorithms for computing the\nLSB and LSB versions of the CRC32 checksum based on the parameters\nCRC_LE_BITS and CRC_BE_BITS.\n\nIn the original version the values 1, 2, 4 and 8 respectively selected\nversions of the alrogithm that computed the crc 1, 2, 4 and 32 bits as a\ntime.\n\nThis patch series adds a new version that computes the CRC 64 bits at a\ntime.  To make things easier to understand the parameter has been\nreinterpreted to actually stand for the number of bits processed in each\nstep of the algorithm so that the old value 8 has been replaced with the\nvalue 32.\n\nThis also allows us to add in a widely used crc algorithm that computes\nthe crc 8 bits at a time called the Sarwate algorithm.\n\n[djwong@us.ibm.com: Minor changelog tweaks]\nSigned-off-by: Bob Pearson \u003crpearson@systemfabricworks.com\u003e\nSigned-off-by: Darrick J. Wong \u003cdjwong@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e30c7a8fcf2d5bba53ea07047b1a0f9161da1078",
      "tree": "bf74fdfade35deb05efc2a639305193964bbe1da",
      "parents": [
        "ca56dc098caf93b5437cd6c4ee49f02aa18f84d6"
      ],
      "author": {
        "name": "Bob Pearson",
        "email": "rpearson@systemfabricworks.com",
        "time": "Fri Mar 23 15:02:21 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 16:58:37 2012 -0700"
      },
      "message": "crc32: remove two instances of trailing whitespaces\n\nThis patchset (re)uses Bob Pearson\u0027s crc32 slice-by-8 code to stamp out\na software crc32c implementation.  It removes the crc32c implementation\nin crypto/ in favor of using the stamped-out one in lib/.  There is also\na change to Kconfig so that the kernel builder can pick an\nimplementation best suited for the hardware.\n\nThe motivation for this patchset is that I am working on adding full\nmetadata checksumming to ext4.  As far as performance impact of adding\nchecksumming goes, I see nearly no change with a standard mail server\nffsb simulation.  On a test that involves only file creation and\ndeletion and extent tree writes, I see a drop of about 50 pcercent with\nthe current kernel crc32c implementation; this improves to a drop of\nabout 20 percent with the enclosed crc32c code.\n\nWhen metadata is usually a small fraction of total IO, this new\nimplementation doesn\u0027t help much because metadata is usually a small\nfraction of total IO.  However, when we are doing IO that is almost all\nmetadata (such as rm -rf\u0027ing a tree), then this patch speeds up the\noperation substantially.\n\nIncidentally, given that iscsi, sctp, and btrfs also use crc32c, this\npatchset should improve their speed as well.  I have not yet quantified\nthat, however.  This latest submission combines Bob\u0027s patches from late\nAugust 2011 with mine so that they can be one coherent patch set.\nPlease excuse my inability to combine some of the patches; I\u0027ve been\nadvised to leave Bob\u0027s patches alone and build atop them instead.  :/\n\nSince the last posting, I\u0027ve also collected some crc32c test results on\na bunch of different x86/powerpc/sparc platforms.  The results can be\nviewed here: http://goo.gl/sgt3i ; the \"crc32-kern-le\" and \"crc32c\"\ncolumns describe the performance of the kernel\u0027s current crc32 and\ncrc32c software implementations.  The \"crc32c-by8-le\" column shows\ncrc32c performance with this patchset applied.  I expect crc32\nperformance to be roughly the same.\n\nThe two _boost columns at the right side of the spreadsheet shows how much\nfaster the new implementation is over the old one.  As you can see, crc32\nrises substantially, and crc32c experiences a huge increase.\n\nThis patch:\n\n- remove trailing whitespace from lib/crc32.c\n- remove trailing whitespace from lib/crc32defs.h\n\n[djwong@us.ibm.com: changelog tweaks]\nSigned-off-by: Bob Pearson \u003crpearson@systemfabricworks.com\u003e\nSigned-off-by: Darrick J. Wong \u003cdjwong@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.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"
    }
  ]
}
