)]}'
{
  "log": [
    {
      "commit": "8f243af42adef5f589b8e39656284ca9c9374e44",
      "tree": "9da2b6a244968b625c14538aa165615f2ac070c8",
      "parents": [
        "c7fd5bc77e9dc8da74bf833d9312076a86d2823e"
      ],
      "author": {
        "name": "Joe Mario",
        "email": "jmario@redhat.com",
        "time": "Thu Oct 04 17:12:15 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 06 03:04:46 2012 +0900"
      },
      "message": "sections: fix const sections for crc32 table\n\nFix the const sections for the code generated by crc32 table.  There\u0027s\nno ro version of the cacheline aligned section, so we cannot put in\nconst data without a conflict Just don\u0027t make the crc tables const for\nnow.\n\n[ak@linux.intel.com: some fixes and new description]\n[akpm@linux-foundation.org: checkpatch fixes]\nSigned-off-by: Joe Mario \u003cjmario@redhat.com\u003e\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "49ac572b93832210dc1895839692b3a51e5d0e27",
      "tree": "382ec2bd038946e94332f1573db1dbcd47b35988",
      "parents": [
        "b13edf7ff2dd0fef95e981170fa71fa6b60421b0"
      ],
      "author": {
        "name": "Thiago Rafael Becker",
        "email": "trbecker@trbecker.org",
        "time": "Mon Jul 30 14:41:26 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 30 17:25:17 2012 -0700"
      },
      "message": "lib/crc32.c: fix unused variables warnings\n\nVariables t4, t5, t6 and t7 are only used when CRC_LE_BITS !\u003d 32.  Fix\nthe following compilation warnings:\n\n  lib/crc32.c: In function \u0027crc32_body\u0027:\n  lib/crc32.c:77:55: warning: unused variable \u0027t7\u0027\n  lib/crc32.c:77:41: warning: unused variable \u0027t6\u0027\n  lib/crc32.c:77:27: warning: unused variable \u0027t5\u0027\n  lib/crc32.c:77:13: warning: unused variable \u0027t4\u0027\n\nSigned-off-by: Thiago Rafael Becker \u003ctrbecker@trbecker.org\u003e\nCc: \"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": "577eba9e22e872574c466648b46eeb3e0d04372e",
      "tree": "725d141dad7d04d5fc776429eafa82e27fc0a8d2",
      "parents": [
        "6a0962b22eccc70b8421014022c07efcf194a95e"
      ],
      "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: add self-test code for crc32c\n\nAdd self-test code for crc32c.\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": "78dff4189708d07cdcaf7bfd1b04ebe78ac9c041",
      "tree": "be5ac559beab9f582505d8954cb1b67cc5fa7e3b",
      "parents": [
        "0292c497b6b942557d085b37f888ef5865f67d37"
      ],
      "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:38 2012 -0700"
      },
      "message": "crc32: add note about this patchset to crc32.c\n\nAdd a comment at the top of crc32.c\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": "0292c497b6b942557d085b37f888ef5865f67d37",
      "tree": "fe88508060c0ecdf8fb3d5e98ca2c55057cc5068",
      "parents": [
        "324eb0f17d9dcead3c60c133aa244f6b3631fec9"
      ],
      "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: optimize loop counter for x86\n\nAdd two changes that improve the performance of x86 systems\n\n1. replace main loop with incrementing counter this change improves\n   the performance of the selftest by about 5-6% on Nehalem CPUs.  The\n   apparent reason is that the compiler can use the loop index to perform\n   an indexed memory access.  This is reported to make the performance of\n   PowerPC CPUs to get worse.\n\n2. replace the rem_len loop with incrementing counter this change\n   improves the performance of the selftest, which has more than the usual\n   number of occurances, by about 1-2% on x86 CPUs.  In actual work loads\n   the length is most often a multiple of 4 bytes and this code does not\n   get executed as often if at all.  Again this change is reported to make\n   the performance of PowerPC get worse.\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": "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": "ce4320ddda4c2520fe77194d3c801ad4e8a8aa11",
      "tree": "273b405fa1d10a185123d216fd33286d50de74f0",
      "parents": [
        "60e58d5c9d8d698600e8ccb44b5a13cf99d0d90f"
      ],
      "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: fix mixing of endian-specific types\n\ncrc32.c in its original version freely mixed u32, __le32 and __be32 types\nwhich caused warnings from sparse with __CHECK_ENDIAN__.  This patch fixes\nthese by forcing the types to u32.\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": "60e58d5c9d8d698600e8ccb44b5a13cf99d0d90f",
      "tree": "81912b32deaf6edf23a00f0f92f82efa95f6af52",
      "parents": [
        "3863ef31dcf04f977a94402348fec06179db58e0"
      ],
      "author": {
        "name": "Bob Pearson",
        "email": "rpearson@systemfabricworks.com",
        "time": "Fri Mar 23 15:02:22 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 16:58:37 2012 -0700"
      },
      "message": "crc32: miscellaneous cleanups\n\nMisc cleanup of lib/crc32.c and related files.\n\n- remove unnecessary header files.\n\n- straighten out some convoluted ifdef\u0027s\n\n- rewrite some references to 2 dimensional arrays as 1 dimensional\n  arrays to make them correct.  I.e.  replace tab[i] with tab[0][i].\n\n- a few trivial whitespace changes\n\n- fix a warning in gen_crc32tables.c caused by a mismatch in the type of\n  the pointer passed to output table.  Since the table is only used at\n  kernel compile time, it is simpler to make the table big enough to hold\n  the largest column size used.  One cannot make the column size smaller\n  in output_table because it has to be used by both the le and be tables\n  and they can have different column sizes.\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": "3863ef31dcf04f977a94402348fec06179db58e0",
      "tree": "98c50d517472247290b6ccad62b7575d688e0dd6",
      "parents": [
        "fbedceb10066430b925cf43fbf926e8abb9e2359"
      ],
      "author": {
        "name": "Bob Pearson",
        "email": "rpearson@systemfabricworks.com",
        "time": "Fri Mar 23 15:02:22 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 16:58:37 2012 -0700"
      },
      "message": "crc32: simplify unit test code\n\nReplace the unit test provided in crc32.c, which doesn\u0027t have a makefile\nand doesn\u0027t compile with current headers, with a simpler self test\nroutine that also gives a measure of performance and runs at module init\ntime.  The self test option can be enabled through a configuration\noption CONFIG_CRC32_SELFTEST.\n\nThe test stresses the pre and post loops and is thus not very realistic\nsince actual uses will likely have addresses and lengths that are at\nleast 4 byte aligned.  However, the main loop is long enough so that the\nperformance is dominated by that loop.\n\nThe expected values for crc32_le and crc32_be were generated with the\noriginal version of crc32.c using CRC_BITS_LE \u003d 8 and CRC_BITS_BE \u003d 8.\nThese values were then used to check all the values of the BITS\nparameters in both the original and new versions.\n\nThe performance results show some variability from run to run in spite\nof attempts to both warm the cache and reduce the amount of OS noise by\nlimiting interrutps during the test.  To get comparable results and to\nanalyse options wrt performance the best time reported over a small\nsample of runs has been taken.\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": "fbedceb10066430b925cf43fbf926e8abb9e2359",
      "tree": "ea4f9453fd810c82c106df1e5b5932894ddcadd5",
      "parents": [
        "e30c7a8fcf2d5bba53ea07047b1a0f9161da1078"
      ],
      "author": {
        "name": "Bob Pearson",
        "email": "rpearson@systemfabricworks.com",
        "time": "Fri Mar 23 15:02:22 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 16:58:37 2012 -0700"
      },
      "message": "crc32: move long comment about crc32 fundamentals to Documentation/\n\nMove a long comment from lib/crc32.c to Documentation/crc32.txt where it\nwill more likely get read.\n\nEdited the resulting document to add an explanation of the slicing-by-n\nalgorithm.\n\n[djwong@us.ibm.com: minor changelog tweaks]\n[akpm@linux-foundation.org: fix typo, per George]\nSigned-off-by: George Spelvin \u003clinux@horizon.com\u003e\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": "5742332dea5560d6c449b007d9539dbdc8ee531b",
      "tree": "64f4516b733638c966d6e66613e6ae016839d3f2",
      "parents": [
        "bfcb2cc798a14230d22b6dd999e2e680623de622"
      ],
      "author": {
        "name": "Joakim Tjernlund",
        "email": "Joakim.Tjernlund@transmode.se",
        "time": "Tue Jan 10 15:10:18 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 10 16:30:51 2012 -0800"
      },
      "message": "crc32: optimize inner loop\n\nTaking a pointer reference to each row in the crc table matrix, one can\nreduce the inner loop with a few insn\u0027s\n\nSigned-off-by: Joakim Tjernlund \u003cJoakim.Tjernlund@transmode.se\u003e\nCc: Bob Pearson \u003crpearson@systemfabricworks.com\u003e\nCc: Frank Zago \u003cfzago@systemfabricworks.com\u003e\nCc: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "60063497a95e716c9a689af3be2687d261f115b4",
      "tree": "6ce0d68db76982c53df46aee5f29f944ebf2c320",
      "parents": [
        "148817ba092f9f6edd35bad3c6c6b8e8f90fe2ed"
      ],
      "author": {
        "name": "Arun Sharma",
        "email": "asharma@fb.com",
        "time": "Tue Jul 26 16:09:06 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 26 16:49:47 2011 -0700"
      },
      "message": "atomic: use \u003clinux/atomic.h\u003e\n\nThis allows us to move duplicated code in \u003casm/atomic.h\u003e\n(atomic_inc_not_zero() for now) to \u003clinux/atomic.h\u003e\n\nSigned-off-by: Arun Sharma \u003casharma@fb.com\u003e\nReviewed-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nAcked-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0d2daf5cc858bd9305bae187310a1dabaad0a2db",
      "tree": "94c2d457d328ac2f093195ad4de28fecb3ec9d7c",
      "parents": [
        "cc68e3be7412baaa1ea2a2df9e88770f1753da78"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Tue May 25 23:43:03 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 26 08:19:23 2010 -0700"
      },
      "message": "revert \"crc32: use __BYTE_ORDER macro for endian detection\"\n\nIt doesn\u0027t work on big-endian - those architectures don\u0027t define\n__LITTLE_ENDIAN.\n\nCc: Joakim Tjernlund \u003cjoakim.tjernlund@transmode.se\u003e\nReported-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4762bbc1a3a1f22095278b74dd1b8cee04858641",
      "tree": "d80314902f759a2ee1f6bb25384956021c4b2d04",
      "parents": [
        "836e2af92503f1642dbc3c3281ec68ec1dd39d2e"
      ],
      "author": {
        "name": "Joakim Tjernlund",
        "email": "Joakim.Tjernlund@transmode.se",
        "time": "Mon May 24 14:33:31 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 25 08:07:06 2010 -0700"
      },
      "message": "crc32: use __BYTE_ORDER macro for endian detection.\n\nSince crc32.c contains a nifty test program that can be executed in user\nspace, make sure endian detection works reliably in user space too.\n\nSigned-off-by: Joakim Tjernlund \u003cJoakim.Tjernlund@transmode.se\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "836e2af92503f1642dbc3c3281ec68ec1dd39d2e",
      "tree": "8b68f906e1ca6f39d159f306623da86f4e02f8cb",
      "parents": [
        "d4977c78e9c7dd042f96f4a21d957bc25a561333"
      ],
      "author": {
        "name": "Joakim Tjernlund",
        "email": "Joakim.Tjernlund@transmode.se",
        "time": "Mon May 24 14:33:31 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 25 08:07:06 2010 -0700"
      },
      "message": "crc32: major optimization\n\nPrecompute more crc32 values(0xcc00, 0xcc0000 and 0xcc000000) into tables.\n This increases the table size from 1KB to 4KB but the performance benfit\nmakes it worth it:\n\n28% faster on MPC8321, 266 MHz\n2x faster on Core 2 Duo, 3.1GHz\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Joakim Tjernlund \u003cJoakim.Tjernlund@transmode.se\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "4f2a9463d18517a9839401c3de6419ee1435875b",
      "tree": "fa19722c8b1a214ef269cb210f73d9c8a35e88da",
      "parents": [
        "5e79d96eed306a8b4af67b3f35f6867edfabeebc"
      ],
      "author": {
        "name": "Joakim Tjernlund",
        "email": "Joakim.Tjernlund@transmode.se",
        "time": "Fri Mar 05 13:43:55 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 06 11:26:45 2010 -0800"
      },
      "message": "crc32: some minor cleanups\n\nSigned-off-by: Joakim Tjernlund \u003cJoakim.Tjernlund@transmode.se\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ddcaccbc17d7d15d0f050519cfeb0e45acbd9b15",
      "tree": "13cd6b7839b9bc012e2c3ccb112f23d7daab8294",
      "parents": [
        "14f1b75b1d31673d7ab6ac6d2f8fe7f23c705229"
      ],
      "author": {
        "name": "Joakim Tjernlund",
        "email": "Joakim.Tjernlund@transmode.se",
        "time": "Mon Dec 14 18:01:33 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:35 2009 -0800"
      },
      "message": "crc32: minor optimizations and cleanup\n\nMove common crc body to new function crc32_body() cleaup and micro\noptimize crc32_body for speed and less size.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Joakim Tjernlund \u003cJoakim.Tjernlund@transmode.se\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "643d1f7fe3aa12c8bdea6fa5b4ba874ff6dd601d",
      "tree": "8e18426b346087618770c576433eb98d7e891617",
      "parents": [
        "0b0a3e7b18b8d9894f3621672ac7bdc5320459c4"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Sun Feb 03 17:48:52 2008 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Sun Feb 03 17:48:52 2008 +0200"
      },
      "message": "lib/: Spelling fixes\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\n"
    },
    {
      "commit": "e8c44319c691dfb4a0b039b095204c040df9b01a",
      "tree": "66e9262f8a2659afc9b88c570fe6980b32974177",
      "parents": [
        "c80544dc0b87bb65038355e7aafdc30be16b26ab"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Thu Oct 18 03:07:07 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:32 2007 -0700"
      },
      "message": "Replace __attribute_pure__ with __pure\n\nTo be consistent with the use of attributes in the rest of the kernel\nreplace all use of __attribute_pure__ with __pure and delete the definition\nof __attribute_pure__.\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nAcked-by: Mauro Carvalho Chehab \u003cmchehab@infradead.org\u003e\nCc: Bryan Wu \u003cbryan.wu@analog.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "906d66df18faa4aac8d898ae6920d1014694a932",
      "tree": "df91905b3c79b7af39091e82655088ad5057379e",
      "parents": [
        "a5cfc1ec58a07074dacb6aa8c79eff864c966d12"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Fri Dec 08 02:36:25 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 08 08:28:39 2006 -0800"
      },
      "message": "[PATCH] crc32: replace bitreverse by bitrev32\n\nThis patch replaces bitreverse() by bitrev32.  The only users of bitreverse()\nare crc32 itself and via-velocity.\n\nCc: Jeff Garzik \u003cjgarzik@pobox.com\u003e\nCc: Matt Domsch \u003cMatt_Domsch@dell.com\u003e\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2f72100c01dd31d769097c58874e8ab1e70b2518",
      "tree": "e8f654f519f56ac37de88533e3d93a3e80cb6454",
      "parents": [
        "28e83baac20e3fe624af89a55eb06c2a7cab6828"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Sun Jun 25 05:48:59 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Jun 25 10:01:20 2006 -0700"
      },
      "message": "[PATCH] kernel-doc for lib/crc*.c\n\nMake kernel-doc corrections \u0026 additions to lib/crc*.c.  Add crc functions to\nkernel-api.tmpl in DocBook.\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "cfc646fa848dfa124fe4d6e0e44ef6940f7f9e6d",
      "tree": "c09bc7dc58be538b5b5f1ccfa40f8a405c0d675f",
      "parents": [
        "4b0271eb9da5170ab5cadf2edf97c84712c82550"
      ],
      "author": {
        "name": "Dominik Hackl",
        "email": "dominik@hackl.dhs.org",
        "time": "Sun Aug 07 09:42:53 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Aug 07 10:00:40 2005 -0700"
      },
      "message": "[PATCH] crc32.c typo fix\n\nThis patch fixes a typo in lib/crc32.c which results in incorrect debug\noutput.\n\nSigned-off-by: Dominik Hackl \u003cdominik@hackl.dhs.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"
    }
  ]
}
