)]}'
{
  "log": [
    {
      "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"
    }
  ]
}
