)]}'
{
  "log": [
    {
      "commit": "0f58189d4a3ca96d7959501ecb203177efdbc5bd",
      "tree": "b5ad2f63da4c1caa5d20487cf370d51e4392111c",
      "parents": [
        "6ec274750c99448c3412bbc10c97ce0c993f8a4e"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 18 22:53:26 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 18 22:53:26 2010 -0700"
      },
      "message": "sparc64: Make lock backoff really a NOP on UP builds.\n\nAs noticed by Mikulas Patocka, the backoff macros don\u0027t\ncompletely nop out for UP builds, we still get a\nbranch always and a delay slot nop.\n\nFix this by making the branch to the backoff spin loop\nselective, then we can nop out the spin loop completely.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6ec274750c99448c3412bbc10c97ce0c993f8a4e",
      "tree": "1ec5f1b5a964d893dee6f2b4ba3eb691a3dc78a7",
      "parents": [
        "9b3bb86acabe0c05923cea1ed3b0bee9439fef4b"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mpatocka@redhat.com",
        "time": "Wed Aug 18 08:03:37 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 18 22:51:08 2010 -0700"
      },
      "message": "sparc64: simple microoptimizations for atomic functions\n\nSimple microoptimizations for sparc64 atomic functions:\nSave one instruction by using a delay slot.\nUse %g1 instead of %g7, because %g1 is written earlier.\n\nSigned-off-by: Mikulas Patocka \u003cmpatocka@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9b3bb86acabe0c05923cea1ed3b0bee9439fef4b",
      "tree": "44095535e5f2634c319122b718c8998ee3b52511",
      "parents": [
        "b10f997bb0f4e5b34d447f498fb85834a40d3acb"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Aug 17 22:49:26 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Aug 17 22:49:26 2010 -0700"
      },
      "message": "sparc64: Make rwsems 64-bit.\n\nBasically tip-off the powerpc code, use a 64-bit type and atomic64_t\ninterfaces for the implementation.\n\nThis gets us off of the by-hand asm code I wrote, which frankly I\nthink probably ruins I-cache hit rates.\n\nThe idea was the keep the call chains less deep, but anything taking\nthe rw-semaphores probably is also calling other stuff and therefore\nalready has allocated a stack-frame.  So no real stack frame savings\never.\n\nBen H. has posted patches to make powerpc use 64-bit too and with some\nabstractions we can probably use a shared header file somewhere.\n\nWith suggestions from Sam Ravnborg.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "035df35d968323f6f463c8789553e8589efcbcd4",
      "tree": "6932aa9c85e37cf7d2e910a171b46ffacdb834a8",
      "parents": [
        "2e2dc1d755cc5609d0c46d47f7d171318b3bffcd"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 13 18:59:02 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 13 18:59:02 2010 -0700"
      },
      "message": "sparc64: Allocate sufficient stack space in ftrace stubs.\n\n128 bytes is sufficient for the register window save area, but the\ncalling conventions allow the callee to save up to 6 incoming argument\nregisters into the stack frame after the register window save area.\n\nThis means a minimal stack frame is 176 bytes (128 + (6 * 8)).\n\nThis fixes random crashes when using the function tracer.\n\nReported-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9960e9e8944f9b1ca6af5f7d26400ca45b429600",
      "tree": "2483b4c55f54663a8cc358fae5837e7d8232c554",
      "parents": [
        "a71d1d6bb1b26e566e5c06c37857f4cdc1664780"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 07 04:41:33 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 12 22:37:26 2010 -0700"
      },
      "message": "sparc64: Add function graph tracer support.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a71d1d6bb1b26e566e5c06c37857f4cdc1664780",
      "tree": "5b982f3bd77f47ef6ebbd2a9529a4efcb1df106e",
      "parents": [
        "daecbf58a509bc27c112647e825df763c3e3b0f4"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 06 19:59:46 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 12 22:37:15 2010 -0700"
      },
      "message": "sparc64: Give a stack frame to the ftrace call sites.\n\nIt\u0027s the only way we\u0027ll be able to implement the function\ngraph tracer properly.\n\nA positive is that we no longer have to worry about the\nlinker over-optimizing the tail call, since we don\u0027t\nuse a tail call any more.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ddacd0bc70fe724eba2b5967dd5b68e10d41486c",
      "tree": "43d80d0c693aaf66cc968b748ad0b92d62c7f602",
      "parents": [
        "63b754957371c23b7515399a977a2e1d361a036c"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 12 22:36:03 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 12 22:36:03 2010 -0700"
      },
      "message": "sparc64: Kill CONFIG_STACK_DEBUG code.\n\nThe generic stack tracer does this job just as well.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "63b754957371c23b7515399a977a2e1d361a036c",
      "tree": "d1e7cd39f91215970300adfffcdf96b5f7484c43",
      "parents": [
        "0c25e9e6cbe7b233bb91d14d0e2c258bf8e6ec83"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 12 22:35:24 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 12 22:35:24 2010 -0700"
      },
      "message": "sparc64: Add HAVE_FUNCTION_TRACE_MCOUNT_TEST and tidy up.\n\nCheck function_trace_stop at ftrace_caller\n\nToss mcount_call and dummy call of ftrace_stub, unnecessary.\n\nDocument problems we\u0027ll have if the final kernel image link\never turns on relaxation.\n\nProperly size \u0027ftrace_call\u0027 so it looks right when inspecting\ninstructions under gdb et al.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4d14a459857bd151ecbd14bcd37b4628da00792b",
      "tree": "f713e8292ef84bfcc5ba4f3c7cd19aa4ce908bd5",
      "parents": [
        "fb34035e7b4bb3edc7c2dc0683cfe21f57a9574d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 10 23:32:10 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 10 23:32:10 2009 -0800"
      },
      "message": "sparc: Stop trying to be so fancy and use __builtin_{memcpy,memset}()\n\nThis mirrors commit ff60fab71bb3b4fdbf8caf57ff3739ffd0887396\n(x86: Use __builtin_memset and __builtin_memcpy for memset/memcpy)\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fb34035e7b4bb3edc7c2dc0683cfe21f57a9574d",
      "tree": "ddde17e5690d77f4f61c6271fc8b6f520c746851",
      "parents": [
        "4ed5d5e4299f42438dd5ac6dcb1f2168ea4fb02a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 10 23:05:23 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 10 23:05:23 2009 -0800"
      },
      "message": "sparc: Use __builtin_object_size() to validate the buffer size for copy_from_user()\n\nThis mirrors x86 commit 9f0cf4adb6aa0bfccf675c938124e68f7f06349d\n(x86: Use __builtin_object_size() to validate the buffer size for copy_from_user())\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "166e553a575f09485f6d0df8a1ef3c5991f7d953",
      "tree": "632e93d62c1d62d23f23e0c2a96b5270cbebd933",
      "parents": [
        "4230fa3b89ea1c413766bd411a8315a3d05aa6c7"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 09 01:43:45 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 09 01:43:45 2009 -0800"
      },
      "message": "sparc64: Fix stack debugging IRQ stack regression.\n\nCommit 4f70f7a91bffdcc39f088748dc678953eb9a3fbd\n(sparc64: Implement IRQ stacks.) has two bugs.\n\nFirst, the softirq range check forgets to subtract STACK_BIAS\nbefore comparing with %sp.  Next, on failure the wrong label\nis jumped to, resulting in a bogus stack being loaded.\n\nReported-by: Igor Kovalenko \u003cigor.v.kovalenko@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n\n"
    },
    {
      "commit": "6373fffc5d555caf3acf7c5796cec9820aaf7479",
      "tree": "e8c65ba5b45214fe11c6c38cd2e8803218eca611",
      "parents": [
        "d3584183d2f40f40371e288ceef187d04da213b5"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 29 16:12:02 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 29 16:12:02 2009 -0700"
      },
      "message": "sparc64: Fix section attribute warnings.\n\nCSUM copy to/from user assembler was missing allocatable and\nexecutable attributes for .fixup\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "aeb398768345c74a9e4c01aa3ebf839e858312ec",
      "tree": "c7755f40260ccf89e8f3b765a9b44dcbebcae896",
      "parents": [
        "40bdac7dbc161639a498697f34fbd1ee800e51f4"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 08 22:32:31 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 08 22:32:31 2009 -0800"
      },
      "message": "sparc64: Fix probe_kernel_{read,write}().\n\nThis is based upon a report from Chris Torek and his initial patch.\nFrom Chris\u0027s report:\n\n--------------------\nThis came up in testing kgdb, using the built-in tests -- turn\non CONFIG_KGDB_TESTS, then\n\n    echo V1 \u003e /sys/module/kgdbts/parameters/kgdbts\n\n-- but it would affect using kgdb if you were debugging and looking\nat bad pointers.\n--------------------\n\nWhen we get a copy_{from,to}_user() request and the %asi is set to\nsomething other than ASI_AIUS (which is userspace) then we branch off\nto a routine called memcpy_user_stub().  It just does a straight\nmemcpy since we are copying from kernel to kernel in this case.\n\nThe logic was that since source and destination are both kernel\npointers we don\u0027t need to have exception checks.\n\nBut for what probe_kernel_{read,write}() is trying to do, we have to\nhave the checks, otherwise things like kgdb bad kernel pointer\naccesses don\u0027t do the right thing.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "40bdac7dbc161639a498697f34fbd1ee800e51f4",
      "tree": "5eef654722ba36d2921cafd8440d5e346f0fbdb5",
      "parents": [
        "1c2f61d40b691789626489fa947a3e003c9a84be"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 08 22:00:55 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 08 22:00:55 2009 -0800"
      },
      "message": "sparc64: Kill .fixup section bloat.\n\nThis is an implementation of a suggestion made by Chris Torek:\n--------------------\nSomething else I noticed in passing: the EX and EX_LD/EX_ST macros\nscattered throughout the various .S files make a fair bit of .fixup\ncode, all of which does the same thing.  At the cost of one symbol\nin copy_in_user.S, you could just have one common two-instruction\nretl-and-mov-1 fixup that they all share.\n--------------------\n\nThe following is with a defconfig build:\n\n   text\t   data\t    bss\t    dec\t    hex\tfilename\n3972767\t 344024\t 584449\t4901240\t 4ac978\tvmlinux.orig\n3968887\t 344024\t 584449\t4897360\t 4aba50\tvmlinux\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "62dfcd336c79c49f9aeb0acc99cf9a1832102dd5",
      "tree": "18d33271218eac0daec3dd105ebefd3b0654a19f",
      "parents": [
        "c275ce44929402664902cbb09d4f054b315623d7"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sat Jan 17 23:12:27 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jan 17 23:12:27 2009 -0800"
      },
      "message": "sparc64: fix modpost failure\n\nPreviously PeeCeeI.o was a library but it\nwas always pulled in due to insw and friends being exported\n(at least for a modular kernel).\n\nBut this resulted in modpost failures if there where no in-kernel\nusers because then insw \u0026 friends were not linked in.\n\nFix this by including PeeCeeI.o in the kernel unconditionally.\n\nThe only drawback for this solution is that a nonmodular kernel\nwill always include insw \u0026 friends no matter if they are in use or not.\n\nReported-by: Meelis Roos \u003cmroos@linux.ee\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "917c3660d6d9a4b073a3db7c10f6989adae4e191",
      "tree": "3cf8a7f80852fb637b7affefad1c046d272a5043",
      "parents": [
        "6943f3da3e64edd95ee2d33abc0a642357746ba6"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Thu Jan 08 16:58:20 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jan 08 16:58:20 2009 -0800"
      },
      "message": "sparc64: move EXPORT_SYMBOL to the symbols definition\n\nMove all applicable EXPORT_SYMBOL()s to the file where the respective\nsymbol is defined.\n\nRemoved all the includes that are no longer needed in sparc_ksyms_64.c\n\nComment all remaining EXPORT_SYMBOL()s in sparc_ksyms_64.c\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n\nAdditions by Julian Calaby:\n* Moved EXPORT_SYMBOL()s for prom functions to their rightful places.\n* Made some minor cleanups to the includes and comments of sparc_ksyms_64.c\n* Updated and tidied commit message.\n* Rebased patch over sparc-2.6.git HEAD.\n* Ensured that all modified files have the correct includes.\n\nSigned-off-by: Julian Calaby \u003cjulian.calaby@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "45536ffc8dcb7798ff4818f54391547e5af19648",
      "tree": "adc72fde5230d5b345ec28be7d9be3c2124c4fb1",
      "parents": [
        "b41418f48c389bad4cd87156792b4a4f24a70729"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Thu Jan 08 16:57:35 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jan 08 16:57:35 2009 -0800"
      },
      "message": "sparc: Create a new file lib/ksyms.c and add export of all symbols defined in assembler in lib/ to this file.\n\nRemove the duplicate entries from kernel/sparc_ksyms_*.c\n\nThe rationale behind this is that the EXPORT_SYMBOL() should be close to\ntheir definition and we cannot add designate a symbol to be exported in\nassembler so at least put it in a file in the same directory.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n\nAdditions by Julian Calaby:\n* Rebased over sparc-2.6.git HEAD\n\nSigned-off-by: Julian Calaby \u003cjulian.calaby@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "18cdae68e7bb24f33883e58f366cde38ea89ba17",
      "tree": "891b87b5e3c0b605f5e7d2b9809282b67c005293",
      "parents": [
        "ae984d72e0632782dd98c3fcf469b9045ad0d449"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 09 04:09:07 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 09 04:09:07 2008 -0800"
      },
      "message": "sparc: Commonize memcmp assembler.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ae984d72e0632782dd98c3fcf469b9045ad0d449",
      "tree": "cd1f09781fffee44c72218d354aa23d9bd069e52",
      "parents": [
        "5c03d590910a6ccddc144b382b0ecdb122c349f3"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 09 01:07:09 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 09 01:07:09 2008 -0800"
      },
      "message": "sparc: Unify strlen assembler.\n\nUse the new asm/asm.h header to help commonize the\nstrlen assembler between 32-bit and 64-bit\n\nWhile we\u0027re here, use proper linux/linkage.h macros\ninstead of by-hand stuff.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8bf68e4d90c4ad862356679ab616726eee1abf93",
      "tree": "224636524d4a920f9fdbb970ff46bf23d4c0165a",
      "parents": [
        "8e757281defc3e45df0df8e4610f57e8ebfd7f5f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 08 16:05:49 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 08 16:05:49 2008 -0800"
      },
      "message": "sparc: Kill memcmp_32.S code which has been ifdef\u0027d out for centuries.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "478b8fecda511942404ac232897a718cecd13e48",
      "tree": "e022fce8ca92f93a000e1cd686255f0b126e9fd5",
      "parents": [
        "18269c0fd4db9bec2668f895f21d742486ccb90f"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Wed Dec 03 03:10:25 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 04 09:17:19 2008 -0800"
      },
      "message": "sparc,sparc64: unify lib/\n\no Renamed files in sparc64 to \u003cname\u003e_64.S when identical\n  to sparc32 files.\no iomap.c were equal for sparc32 and sparc64\no adjusted sparc/Makefile now we have only one lib/\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "18269c0fd4db9bec2668f895f21d742486ccb90f",
      "tree": "2aecdac629ea35c77ec246e838dd9cfdeea02121",
      "parents": [
        "5de18cde3b748aafc6d187d7655ba42f2260501d"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Wed Dec 03 03:07:00 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 04 09:17:18 2008 -0800"
      },
      "message": "sparc: prepare lib/ for unification\n\nIdentical named files renamed to \u003cname\u003e_32.S\nRefactored Makefile to prepare for unification.\n\nLinking order was altered slightly - but this is a lib.a file so\nit should not matter.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "88278ca27a43ae503572b52ea2c171fbf45db5a2",
      "tree": "6157e33e2ba0460853ea0a28376039356fba2a41",
      "parents": [
        "b00dc8376465ee5f8dd49b95924e31b4c2404ab0"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Mon May 19 16:53:02 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 20 00:33:44 2008 -0700"
      },
      "message": "sparc: remove CVS keywords\n\nThis patch removes the CVS keywords that weren\u0027t updated for a long time\nfrom comments.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b70d3a2c596fb52b02488ad4aef13fa0d602090c",
      "tree": "502793fdd2ca7c7e0d66af3e750d4ffbec6db248",
      "parents": [
        "626adeb6675fdf60e9d8c6212776b0b0acf0e376"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Tue Apr 29 00:59:11 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:02 2008 -0700"
      },
      "message": "iomap: fix 64 bits resources on 32 bits\n\nAlmost all implementations of pci_iomap() in the kernel, including the generic\nlib/iomap.c one, copies the content of a struct resource into unsigned long\u0027s\nwhich will break on 32 bits platforms with 64 bits resources.\n\nThis fixes all definitions of pci_iomap() to use resource_size_t.  I also\n\"fixed\" the 64bits arch for consistency.\n\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c6d64c16bb193c8ca2ccc0b3c556a4574a02408b",
      "tree": "4cf593f98f0ac457c43e9e6513aca71eb6b11109",
      "parents": [
        "13f09b95a82c46ed608d057b22e0dd18ebfff22a"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Mon Jan 28 21:06:23 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jan 31 19:32:43 2008 -0800"
      },
      "message": "[SPARC/SPARC64]: Fix usage of .section .sched.text in assembler code.\n\nld will generate an unique named section when assembler do not use\n\"ax\" but gcc does. Add the missing annotation.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6cc0735d0dbf6a0e5f802f47d51e1e463466955c",
      "tree": "62840e618992c257eff51c65bfe66a14f5942c9a",
      "parents": [
        "6c8f5b90bfbe69a27763fb0e181bd2465181446d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Aug 25 15:10:44 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Aug 26 18:49:09 2007 -0700"
      },
      "message": "[SPARC32]: Add __cmpdi2() libcall implementation ala. MIPS.\n\nDevice mapper generates calls to this with recent versions\nof gcc.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f61698e6489f229f9fcfe29e68f228389a772993",
      "tree": "ec294315cf4e9985ae17a322bee461282a8858bc",
      "parents": [
        "1b64e7abe742c0d32cdb1545d9a67f80cc6e81f3"
      ],
      "author": {
        "name": "Alexander Shmelev",
        "email": "ashmelev@task.sun.mcst.ru",
        "time": "Tue Jul 24 13:41:44 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 24 13:41:44 2007 -0700"
      },
      "message": "[SPARC32]: Fix bug in sparc optimized memset.\n\nSparc optimized memset (arch/sparc/lib/memset.S) does not fill last\nbyte of the memory area, if area size is less than 8 bytes and start\naddress is not word (4-bytes) aligned.\n\nHere is code chunk where bug located:\n/* %o0 - memory address, %o1 - size, %g3 - value */\n8:\n     add    %o0, 1, %o0\n    subcc    %o1, 1, %o1\n    bne,a    8b\n     stb %g3, [%o0 - 1]\n\nThis code should write byte every loop iteration, but last time delay\ninstruction stb is not executed because branch instruction sets\n\"annul\" bit.\n\nPatch replaces bne,a by bne instruction.\n\nError can be reproduced by simple kernel module:\n\n--------------------\n#include \u003clinux/module.h\u003e\n#include \u003clinux/config.h\u003e\n#include \u003clinux/kernel.h\u003e\n#include \u003clinux/errno.h\u003e\n#include \u003cstring.h\u003e\n\nstatic void do_memset(void **p, int size)\n{\n        memset(p, 0x00, size);\n}\n\nstatic int __init memset_test_init(void)\n{\n    char fooc[8];\n    int *fooi;\n    memset(fooc, 0xba, sizeof(fooc));\n\n    do_memset((void**)(fooc + 3), 1);\n\n    fooi \u003d (int*) fooc;\n    printk(\"%08X %08X\\n\", fooi[0], fooi[1]);\n\n    return -1;\n}\n\nstatic void __exit memset_test_cleanup(void)\n{\n    return;\n}\n\nmodule_init(memset_test_init);\nmodule_exit(memset_test_cleanup);\n\nMODULE_LICENSE(\"GPL\");\nEXPORT_NO_SYMBOLS;\n--------------------\n\nSigned-off-by: Alexander Shmelev \u003cashmelev@task.sun.mcst.ru\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1fb8812ba5a4c34b680d4405216310233f3c7573",
      "tree": "1c2400953d713ff03aef65d9c7168ea64006c5fc",
      "parents": [
        "dbbe3cb8cff6b494ac2cba6a94dc7aabe7e5b635"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Thu May 31 01:19:24 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu May 31 01:52:51 2007 -0700"
      },
      "message": "[SPARC32]: Build fix.\n\nFix 6197fe4d720ea3e2ee94cdc7ef32d6c0151199de\n\narch/sparc/lib/atomic32.c: In function \u0027__cmpxchg_u32\u0027:\narch/sparc/lib/atomic32.c:127: error: \u0027addr\u0027 undeclared (first use in this function)\narch/sparc/lib/atomic32.c:127: error: (Each undeclared identifier is reported only once\narch/sparc/lib/atomic32.c:127: error: for each function it appears in.)\n\nI assume this is what was intended..\n\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nAcked-by: William Irwin \u003cwli@holomorphy.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6197fe4d720ea3e2ee94cdc7ef32d6c0151199de",
      "tree": "c521b677a8ca7ab24f12c0e8275a3cbdd00131c0",
      "parents": [
        "679292993c77c06f7ade4e317c13256b92c2651b"
      ],
      "author": {
        "name": "Kyle McMartin",
        "email": "kyle@parisc-linux.org",
        "time": "Tue May 29 02:51:13 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 29 02:51:13 2007 -0700"
      },
      "message": "[SPARC]: Emulate cmpxchg like parisc\n\nSigned-off-by: Kyle McMartin \u003ckyle@parisc-linux.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e63340ae6b6205fef26b40a75673d1c9c0c8bb90",
      "tree": "8d3212705515edec73c3936bb9e23c71d34a7b41",
      "parents": [
        "04c9167f91e309c9c4ea982992aa08e83b2eb42e"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Tue May 08 00:28:08 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:15:07 2007 -0700"
      },
      "message": "header cleaning: don\u0027t include smp_lock.h when not used\n\nRemove includes of \u003clinux/smp_lock.h\u003e where it is not used/needed.\nSuggested by Al Viro.\n\nBuilds cleanly on x86_64, i386, alpha, ia64, powerpc, sparc,\nsparc64, and arm (all 59 defconfigs).\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "74e61dee2a98b5e538ee1448ca803fc0ad8e307f",
      "tree": "e69b02cd0816147953555530f4c4684556d9e780",
      "parents": [
        "b82f87f6d40f944a591d8d36c0fed2d4374efcb7"
      ],
      "author": {
        "name": "Robert Reif",
        "email": "reif@earthlink.net",
        "time": "Mon Mar 26 19:10:43 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Mar 26 21:49:13 2007 -0700"
      },
      "message": "[SPARC32]: Fix SMP build regression\n\ncommit b19cbe2a1695c09c74f83646c4b82b51123b3690 [BRIDGE]: Fix fdb RCU\nrace\n\nbreaks sparc SMP build because atomic_add_unless is not exported.\n\nThis patch exports atomic_add_unless and atomic_cmpxchg.\n\nSigned-off-by: Robert Reif \u003creif@earthlink.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8a8b836b91aa170a383f2f360b73d3d23160d9d7",
      "tree": "875a635f634a869b801c4efa8f145c5b7b7db8e4",
      "parents": [
        "216da721b881838d639a3987bf8a825e6b4aacdd"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Dec 17 16:18:47 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Dec 17 16:18:47 2006 -0800"
      },
      "message": "[SPARC]: Make bitops use same spinlocks as atomics.\n\nRecent workqueue changes basically make this a formal requirement.\n\nAlso, move atomic32.o from lib-y to obj-y since it exports symbols\nto modules.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7a39f52202a70ff6834e37053e2ee55c7d351621",
      "tree": "de2f029495110336d2dd2b89205db2c62710dd50",
      "parents": [
        "6d24c8dc2e656b02807aa0506405727d34c0376c"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Sun Oct 08 14:32:15 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 08 12:32:35 2006 -0700"
      },
      "message": "[PATCH] sparc32 rwlock fix\n\nread_trylock() is broken on sparc32 (doesn\u0027t build and didn\u0027t work\nright, actually).  Proposed fix:\n\n - make \"writer holds lock\" distinguishable from \"reader tries to grab\n   lock\"\n\n - have __raw_read_trylock() try to acquire the mutex (in LSB of lock),\n   terminating spin if we see that there\u0027s writer holding it.  Then do\n   the rest as we do in read_lock().\n\nThanks to Ingo for discussion...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3a1d5c84ed2fa4034f86e3b204129c139471516e",
      "tree": "621b55281a61bdac15efe36ea00dd30fdba49cb5",
      "parents": [
        "d6c641026dec68acfb4b0baa98aad960e963ed97"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Sep 27 19:43:02 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Sep 29 16:12:41 2006 -0700"
      },
      "message": "[SPARC]: Don\u0027t zero out tail during copy_from_user_inatomic().\n\nActually, since we use the same code for all the copying\ntypes in and out of userspace, we check at runtime whether\npreemption is disabled.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6ab3d5624e172c553004ecc862bfeac16d9d68b7",
      "tree": "6d98881fe91fd9583c109208d5c27131b93fa248",
      "parents": [
        "e02169b682bc448ccdc819dc8639ed34a23cedd8"
      ],
      "author": {
        "name": "Jörn Engel",
        "email": "joern@wohnheim.fh-wedel.de",
        "time": "Fri Jun 30 19:25:36 2006 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Jun 30 19:25:36 2006 +0200"
      },
      "message": "Remove obsolete #include \u003clinux/config.h\u003e\n\nSigned-off-by: Jörn Engel \u003cjoern@wohnheim.fh-wedel.de\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "749805dc10e955b0170573061f9522a6a21cbae0",
      "tree": "610f0a5f10564e4627349d4518f99e98ddf39467",
      "parents": [
        "8e48aec714f1faf581949f23ae0e3d6e2317433b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Jun 25 23:24:24 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Jun 25 23:24:24 2006 -0700"
      },
      "message": "[SPARC]: Add iomap interfaces.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1d66a79dc8dd892c0db04396a0b1d05e0f53fe4f",
      "tree": "bce1150d180d02982c5462e40cccdb7bb2af0dd2",
      "parents": [
        "2c27d4e53043de1c821e0af09e08dee3e92a01d6"
      ],
      "author": {
        "name": "Paul Jackson",
        "email": "pj@sgi.com",
        "time": "Mon Dec 12 14:42:31 2005 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 12 14:42:31 2005 -0800"
      },
      "message": "[SPARC]: atomic_clear_mask build fix\n\nThis fixes one build error introduced in sparc with the patch of Oct 30,\nresent Nov 4 \"[patch 3/5] atomic: atomic_inc_not_zero\" I still can\u0027t get\nsparc to build, but at least it gets further after I remove this line. \nApparently, this change was agreed to by Andrew and Nick on Nov 14, but\neveryone thought someone else was doing it.\n\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8426e1f6af0fd7f44d040af7263750c5a52f3cc3",
      "tree": "827bd2588c2b73d11cea6869de8ff42dba134375",
      "parents": [
        "4a6dae6d382e9edf3ff440b819e554ed706359bc"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "nickpiggin@yahoo.com.au",
        "time": "Sun Nov 13 16:07:25 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Nov 13 18:14:16 2005 -0800"
      },
      "message": "[PATCH] atomic: inc_not_zero\n\nIntroduce an atomic_inc_not_zero operation.  Make this a special case of\natomic_add_unless because lockless pagecache actually wants\natomic_inc_not_negativeone due to its offset refcount.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4a6dae6d382e9edf3ff440b819e554ed706359bc",
      "tree": "2945a5095973e2ecf05b503d6deb859083045b8e",
      "parents": [
        "53e86b91b7ae66d4c2757195cbd42e00d9199cf2"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "nickpiggin@yahoo.com.au",
        "time": "Sun Nov 13 16:07:24 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Nov 13 18:14:16 2005 -0800"
      },
      "message": "[PATCH] atomic: cmpxchg\n\nIntroduce an atomic_cmpxchg operation.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f037360f2ed111fe89a8f5cb6ba351f4e9934e53",
      "tree": "5978627d4252a7faf6d4fb9577fe8aa55e5db648",
      "parents": [
        "10ebffde3d3916026974352b7900e44afe2b243f"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@parcelfarce.linux.theplanet.co.uk",
        "time": "Sun Nov 13 16:06:57 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Nov 13 18:14:13 2005 -0800"
      },
      "message": "[PATCH] m68k: thread_info header cleanup\n\na) in smp_lock.h #include of sched.h and spinlock.h moved under #ifdef\n   CONFIG_LOCK_KERNEL.\n\nb) interrupt.h now explicitly pulls sched.h (not via smp_lock.h from\n   hardirq.h as it used to)\n\nc) in three more places we need changes to compensate for (a) - one place\n   in arch/sparc needs string.h now, hardirq.h needs forward declaration of\n   task_struct and preempt.h needs direct include of thread_info.h.\n\nd) thread_info-related helpers in sched.h and thread_info.h put under\n   ifndef __HAVE_THREAD_FUNCTIONS.  Obviously safe.\n\nSigned-off-by: Al Viro \u003cviro@parcelfarce.linux.theplanet.co.uk\u003e\nSigned-off-by: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7caaeabb17758295edff9703c18a840073c5b8f4",
      "tree": "a33a4bcc77be6077fd8b787380bf13a38828d211",
      "parents": [
        "357d596bd552ad157a906289ab13ea6ba7e66e3d"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ZenIV.linux.org.uk",
        "time": "Sun Sep 11 20:14:07 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Sep 11 20:14:07 2005 -0700"
      },
      "message": "[SPARC]: Fix dot-symbol exporting for good.\n\nFrom: Al Viro \u003cviro@ZenIV.linux.org.uk\u003e\n\nInstead of playing all of these hand-coded assembler aliasing games,\njust translate symbol names in the name space \".sym\" to \"_Sym\" at\nmodule load time.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fb1c8f93d869b34cacb8b8932e2b83d96a19d720",
      "tree": "a006d078aa02e421a7dc4793c335308204859d36",
      "parents": [
        "4327edf6b8a7ac7dce144313947995538842d8fd"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Sep 10 00:25:56 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 10 10:06:21 2005 -0700"
      },
      "message": "[PATCH] spinlock consolidation\n\nThis patch (written by me and also containing many suggestions of Arjan van\nde Ven) does a major cleanup of the spinlock code.  It does the following\nthings:\n\n - consolidates and enhances the spinlock/rwlock debugging code\n\n - simplifies the asm/spinlock.h files\n\n - encapsulates the raw spinlock type and moves generic spinlock\n   features (such as -\u003ebreak_lock) into the generic code.\n\n - cleans up the spinlock code hierarchy to get rid of the spaghetti.\n\nMost notably there\u0027s now only a single variant of the debugging code,\nlocated in lib/spinlock_debug.c.  (previously we had one SMP debugging\nvariant per architecture, plus a separate generic one for UP builds)\n\nAlso, i\u0027ve enhanced the rwlock debugging facility, it will now track\nwrite-owners.  There is new spinlock-owner/CPU-tracking on SMP builds too.\nAll locks have lockup detection now, which will work for both soft and hard\nspin/rwlock lockups.\n\nThe arch-level include files now only contain the minimally necessary\nsubset of the spinlock code - all the rest that can be generalized now\nlives in the generic headers:\n\n include/asm-i386/spinlock_types.h       |   16\n include/asm-x86_64/spinlock_types.h     |   16\n\nI have also split up the various spinlock variants into separate files,\nmaking it easier to see which does what. The new layout is:\n\n   SMP                         |  UP\n   ----------------------------|-----------------------------------\n   asm/spinlock_types_smp.h    |  linux/spinlock_types_up.h\n   linux/spinlock_types.h      |  linux/spinlock_types.h\n   asm/spinlock_smp.h          |  linux/spinlock_up.h\n   linux/spinlock_api_smp.h    |  linux/spinlock_api_up.h\n   linux/spinlock.h            |  linux/spinlock.h\n\n/*\n * here\u0027s the role of the various spinlock/rwlock related include files:\n *\n * on SMP builds:\n *\n *  asm/spinlock_types.h: contains the raw_spinlock_t/raw_rwlock_t and the\n *                        initializers\n *\n *  linux/spinlock_types.h:\n *                        defines the generic type and initializers\n *\n *  asm/spinlock.h:       contains the __raw_spin_*()/etc. lowlevel\n *                        implementations, mostly inline assembly code\n *\n *   (also included on UP-debug builds:)\n *\n *  linux/spinlock_api_smp.h:\n *                        contains the prototypes for the _spin_*() APIs.\n *\n *  linux/spinlock.h:     builds the final spin_*() APIs.\n *\n * on UP builds:\n *\n *  linux/spinlock_type_up.h:\n *                        contains the generic, simplified UP spinlock type.\n *                        (which is an empty structure on non-debug builds)\n *\n *  linux/spinlock_types.h:\n *                        defines the generic type and initializers\n *\n *  linux/spinlock_up.h:\n *                        contains the __raw_spin_*()/etc. version of UP\n *                        builds. (which are NOPs on non-debug, non-preempt\n *                        builds)\n *\n *   (included on UP-non-debug builds:)\n *\n *  linux/spinlock_api_up.h:\n *                        builds the _spin_*() APIs.\n *\n *  linux/spinlock.h:     builds the final spin_*() APIs.\n */\n\nAll SMP and UP architectures are converted by this patch.\n\narm, i386, ia64, ppc, ppc64, s390/s390x, x64 was build-tested via\ncrosscompilers.  m32r, mips, sh, sparc, have not been tested yet, but should\nbe mostly fine.\n\nFrom: Grant Grundler \u003cgrundler@parisc-linux.org\u003e\n\n  Booted and lightly tested on a500-44 (64-bit, SMP kernel, dual CPU).\n  Builds 32-bit SMP kernel (not booted or tested).  I did not try to build\n  non-SMP kernels.  That should be trivial to fix up later if necessary.\n\n  I converted bit ops atomic_hash lock to raw_spinlock_t.  Doing so avoids\n  some ugly nesting of linux/*.h and asm/*.h files.  Those particular locks\n  are well tested and contained entirely inside arch specific code.  I do NOT\n  expect any new issues to arise with them.\n\n If someone does ever need to use debug/metrics with them, then they will\n  need to unravel this hairball between spinlocks, atomic ops, and bit ops\n  that exist only because parisc has exactly one atomic instruction: LDCW\n  (load and clear word).\n\nFrom: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\n\n   ia64 fix\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjanv@infradead.org\u003e\nSigned-off-by: Grant Grundler \u003cgrundler@parisc-linux.org\u003e\nCc: Matthew Wilcox \u003cwilly@debian.org\u003e\nSigned-off-by: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nSigned-off-by: Mikael Pettersson \u003cmikpe@csd.uu.se\u003e\nSigned-off-by: Benoit Boissinot \u003cbenoit.boissinot@ens-lyon.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a9f6a0dd54efea2a5d57a27e6c232f9197c25154",
      "tree": "1df64545ed43cd23d32201b2f2077c9325dc6ba0",
      "parents": [
        "8d06afab73a75f40ae2864e6c296356bab1ab473"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Sep 09 13:10:41 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 09 14:03:48 2005 -0700"
      },
      "message": "[PATCH] more SPIN_LOCK_UNLOCKED -\u003e DEFINE_SPINLOCK conversions\n\nThis converts the final 20 DEFINE_SPINLOCK holdouts.  (another 580 places\nare already using DEFINE_SPINLOCK).  Build tested on x86.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\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"
    }
  ]
}
