)]}'
{
  "log": [
    {
      "commit": "2c66f623631709aa5f2e4c14c7e089682e7394a3",
      "tree": "75e9c0fc8b832b0f9f2fe3ff41e3ae2c26036292",
      "parents": [
        "5723aa993d83803157c22327e90cd59e3dcbe879"
      ],
      "author": {
        "name": "David Miller",
        "email": "davem@davemloft.net",
        "time": "Sat May 26 11:14:27 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 26 11:33:54 2012 -0700"
      },
      "message": "sparc: use the new generic strnlen_user() function\n\nThis throws away the sparc-specific functions in favor of the generic\noptimized version.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2922585b93294d47172a765115e0dbc1bfe1be19",
      "tree": "acb4436987d24b2a3fb3cef02097eefbc4762bbf",
      "parents": [
        "446969084d33a4064a39d280806da642c54ba4ac"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 24 13:12:28 2012 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 24 13:12:28 2012 -0700"
      },
      "message": "lib: Sparc\u0027s strncpy_from_user is generic enough, move under lib/\n\nTo use this, an architecture simply needs to:\n\n1) Provide a user_addr_max() implementation via asm/uaccess.h\n\n2) Add \"select GENERIC_STRNCPY_FROM_USER\" to their arch Kcnfig\n\n3) Remove the existing strncpy_from_user() implementation and symbol\n   exports their architecture had.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\n"
    },
    {
      "commit": "446969084d33a4064a39d280806da642c54ba4ac",
      "tree": "0887795d96007b228733c9499bda1731d64e48fe",
      "parents": [
        "35c9646062eba15351c6d64ea0c02176e5cb66ac"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 23 20:12:50 2012 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 24 13:10:05 2012 -0700"
      },
      "message": "kernel: Move REPEAT_BYTE definition into linux/kernel.h\n\nAnd make sure that everything using it explicitly includes\nthat header file.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "35c9646062eba15351c6d64ea0c02176e5cb66ac",
      "tree": "46b29964dfbf21e6757b5ab629c6f748897d34e5",
      "parents": [
        "4efcac3a244de86593a82ca4ed945e839eb4c5af"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 23 19:56:06 2012 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 24 13:04:24 2012 -0700"
      },
      "message": "sparc: Increase portability of strncpy_from_user() implementation.\n\nHide details of maximum user address calculation in a new\nasm/uaccess.h interface named user_addr_max().\n\nProvide little-endian implementation in find_zero(), which should work\nbut can probably be improved.\n\nAbstrace alignment check behind IS_UNALIGNED() macro.\n\nKill double-semicolon, noticed by David Howells.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4efcac3a244de86593a82ca4ed945e839eb4c5af",
      "tree": "7456cbb6d71b3f92385d94cab546e2b93dc19c6a",
      "parents": [
        "ff06dffbc8abfc60d6a0332f058f1d1bb01abb31"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 23 19:20:20 2012 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 23 19:20:20 2012 -0700"
      },
      "message": "sparc: Optimize strncpy_from_user() zero byte search.\n\nCompute a mask that will only have 0x80 in the bytes which\nhad a zero in them.  The formula is:\n\n\t~(((x \u0026 0x7f7f7f7f) + 0x7f7f7f7f) | x | 0x7f7f7f7f)\n\nIn the inner word iteration, we have to compute the \"x | 0x7f7f7f7f\"\npart, so we can reuse that in the above calculation.\n\nOnce we have this mask, we perform divide and conquer to find the\nhighest 0x80 location.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ff06dffbc8abfc60d6a0332f058f1d1bb01abb31",
      "tree": "0845d6acfaf8221fb5d6ae3281cb1c33a8212cff",
      "parents": [
        "29af0ebaa24d3078d7fd9747a49a763fe7f9ea3c"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 22 17:53:19 2012 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 22 23:32:27 2012 -0700"
      },
      "message": "sparc: Add full proper error handling to strncpy_from_user().\n\nLinus removed the end-of-address-space hackery from\nfs/namei.c:do_getname() so we really have to validate these edge\nconditions and cannot cheat any more (as x86 used to as well).\n\nMove to a common C implementation like x86 did.  And if both\nsrc and dst are sufficiently aligned we\u0027ll do word at a time\ncopies and checks as well.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "74c7b28953d4eaa6a479c187aeafcfc0280da5e8",
      "tree": "2bc351f0911fe994c13d4ef7159a975b8ba3cfec",
      "parents": [
        "de36e66d5fa52bc6e2dacd95c701a1762b5308a7"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat May 19 15:27:01 2012 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat May 19 15:27:01 2012 -0700"
      },
      "message": "sparc32: Add ucmpdi2.o to obj-y instead of lib-y.\n\nOtherwise if no references exist in the static kernel image,\nwe won\u0027t export the symbol properly to modules.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "de36e66d5fa52bc6e2dacd95c701a1762b5308a7",
      "tree": "16e54025bff0b92422728b8a8604dd6f2d173bac",
      "parents": [
        "e1d7de8377e6ab3dbd2359507b217ea6b0944302"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sat May 19 11:54:11 2012 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat May 19 15:23:57 2012 -0700"
      },
      "message": "sparc32: add ucmpdi2\n\nBased on copy from microblaze add ucmpdi2 implementation.\nThis fixes build of niu driver which failed with:\n\ndrivers/built-in.o: In function `niu_get_nfc\u0027:\nniu.c:(.text+0x91494): undefined reference to `__ucmpdi2\u0027\n\nThis driver will never be used on a sparc32 system,\nbut patch added to fix build breakage with all*config builds.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1b35a57b1c1781f0fc8fc554f732b3a5408c5244",
      "tree": "80e5616798e0dc5ec138f020e6aa9ae482378462",
      "parents": [
        "2119ff6d2bc0dd6a97de1632e50cd7936049738c"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 15 11:23:01 2012 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 15 11:23:47 2012 -0700"
      },
      "message": "sparc32: Kill off software 32-bit multiply/divide routines.\n\nFor the explicit calls to .udiv/.umul in assembler, I made a\nmechanical (read as: safe) transformation.  I didn\u0027t attempt\nto make any simplifications.\n\nIn particular, __ndelay and __udelay can be simplified significantly.\nSome of the %y reads are unnecessary and these routines have no need\nany longer for allocating a register window, they can be leaf\nfunctions.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "73c1377da9fb732bf8ff1b262a92507e8736b1bf",
      "tree": "fb978e875640b2959f32bb5cdbcaa5335bce9642",
      "parents": [
        "0f031b3f26c5fc019d541e41ae53b32e2dc6a373"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 13 13:07:16 2012 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 13 13:07:16 2012 -0700"
      },
      "message": "sparc32: Kill btfixup for xchg()\u0027s \u0027swap\u0027 instruction.\n\nWe always have this instruction available, so no need to use\nbtfixup for it any more.\n\nThis also eradicates the whole of atomic_32.S and thus the\n__atomic_begin and __atomic_end symbols completely.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8695c37d06721c581385725eb80ba4e6d6bdf73f",
      "tree": "072f37f58590aea8ca880b6175d127809edd4cec",
      "parents": [
        "b55e81b9f8cf0256bcfc548360aef642630c2919"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 11 20:33:22 2012 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 11 20:33:22 2012 -0700"
      },
      "message": "sparc: Convert some assembler over to linakge.h\u0027s ENTRY/ENDPROC\n\nUse those, instead of doing it all by hand.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b55e81b9f8cf0256bcfc548360aef642630c2919",
      "tree": "6a4374703f104ddc4cbc3b5f599fd52937000bc5",
      "parents": [
        "afaedde7c9bcbae4ea9ece34990da72da9c360af"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 11 19:53:29 2012 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 11 19:53:29 2012 -0700"
      },
      "message": "sparc32: Remove inline strncmp \"optimization\" for constant counts.\n\nLet the compiler do stuff like this.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "593fc6ea47882e5953f820ab24a8618f20f0a5c0",
      "tree": "a7666bfa1b58d362a2ff03eebdd555c2ffd64188",
      "parents": [
        "306f1231622176d06b1ad2bccc46122dd4e927fa"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Fri May 11 11:35:07 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 11 19:27:47 2012 -0700"
      },
      "message": "sparc32: drop sun4c specific ___xchg32 implementation\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c6df4b17c8539f737a6a2d7b797eac41e8e34cdc",
      "tree": "7b891178267aa9486fed1197419aac57d3036b5f",
      "parents": [
        "86f8bedc9e1a8ddb4f1d9ff1f0c1229cc0797d6d"
      ],
      "author": {
        "name": "David Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 02 00:17:54 2012 +0200"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Thu Feb 02 10:34:23 2012 +1100"
      },
      "message": "lib: Fix multiple definitions of clz_tab\n\nBoth sparc 32-bit\u0027s software divide assembler and MPILIB provide\nclz_tab[] with identical contents.\n\nBreak it out into a seperate object file and select it when\nSPARC32 or MPILIB is set.\n\nReported-by: Al Viro \u003cviro@ZenIV.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "e343a895a9f342f239c5e3c5ffc6c0b1707e6244",
      "tree": "46c81c6ae375b1f14e209b13c8ac020842807ece",
      "parents": [
        "06792c4dde2ad143928cc95c1ba218c6269c494b",
        "193a667fba76b3df482cbf865228e26ee246e889"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 10 18:04:27 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 10 18:04:27 2012 -0800"
      },
      "message": "Merge tag \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost\n\nlib: use generic pci_iomap on all architectures\n\nMany architectures don\u0027t want to pull in iomap.c,\nso they ended up duplicating pci_iomap from that file.\nThat function isn\u0027t trivial, and we are going to modify it\nhttps://lkml.org/lkml/2011/11/14/183\nso the duplication hurts.\n\nThis reduces the scope of the problem significantly,\nby moving pci_iomap to a separate file and\nreferencing that from all architectures.\n\n* tag \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost:\n  alpha: drop pci_iomap/pci_iounmap from pci-noop.c\n  mn10300: switch to GENERIC_PCI_IOMAP\n  mn10300: add missing __iomap markers\n  frv: switch to GENERIC_PCI_IOMAP\n  tile: switch to GENERIC_PCI_IOMAP\n  tile: don\u0027t panic on iomap\n  sparc: switch to GENERIC_PCI_IOMAP\n  sh: switch to GENERIC_PCI_IOMAP\n  powerpc: switch to GENERIC_PCI_IOMAP\n  parisc: switch to GENERIC_PCI_IOMAP\n  mips: switch to GENERIC_PCI_IOMAP\n  microblaze: switch to GENERIC_PCI_IOMAP\n  arm: switch to GENERIC_PCI_IOMAP\n  alpha: switch to GENERIC_PCI_IOMAP\n  lib: add GENERIC_PCI_IOMAP\n  lib: move GENERIC_IOMAP to lib/Kconfig\n\nFix up trivial conflicts due to changes nearby in arch/{m68k,score}/Kconfig\n"
    },
    {
      "commit": "348738afe530cc3a7306bbd3d1ccd322f9638f32",
      "tree": "7ae88b2743aa8d1c0b5633b43877bd6aeecfe0c8",
      "parents": [
        "371de6e4e0042adf4f9b54c414154f57414ddd37"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Mon Dec 26 20:57:22 2011 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 27 14:11:40 2011 -0500"
      },
      "message": "sparc32: drop unused atomic24 support\n\natomic24 support was used to semaphores in the past - but is no longer used.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a21a2fd4036f9a572415a7543896a1163c211ee5",
      "tree": "e668585f82aee3abb56b011c78cdb7a5f46099da",
      "parents": [
        "43db595e8b5d78ce5ad2feab719814a76e3ad2e5"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@redhat.com",
        "time": "Thu Nov 24 21:10:12 2011 +0200"
      },
      "committer": {
        "name": "Michael S. Tsirkin",
        "email": "mst@redhat.com",
        "time": "Sun Dec 04 15:59:49 2011 +0200"
      },
      "message": "sparc: switch to GENERIC_PCI_IOMAP\n\nsparc copied pci_iomap from generic code, probably to avoid\npulling the rest of iomap.c in.  Since that\u0027s in\na separate file now, we can reuse the common implementation.\n\nSigned-off-by: Michael S. Tsirkin \u003cmst@redhat.com\u003e\n"
    },
    {
      "commit": "a52312b88c8103e965979a79a07f6b34af82ca4b",
      "tree": "65b96c797317eb83ea5779b360cc24227c6d8f89",
      "parents": [
        "21f74d361dfd6a7d0e47574e315f780d8172084a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 19 15:31:55 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 20 15:17:23 2011 -0700"
      },
      "message": "sparc32: Correct the return value of memcpy.\n\nProperly return the original destination buffer pointer.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nTested-by: Kjetil Oftedal \u003coftedal@gmail.com\u003e\n"
    },
    {
      "commit": "21f74d361dfd6a7d0e47574e315f780d8172084a",
      "tree": "85649c0b54a6f9deab58bc06b259712edaa78c0f",
      "parents": [
        "045b7de9ca0cf09f1adc3efa467f668b89238390"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 19 15:30:14 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 20 15:17:22 2011 -0700"
      },
      "message": "sparc32: Remove uses of %g7 in memcpy implementation.\n\nThis is setting things up so that we can correct the return\nvalue, so that it properly returns the original destination\nbuffer pointer.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nTested-by: Kjetil Oftedal \u003coftedal@gmail.com\u003e\n"
    },
    {
      "commit": "045b7de9ca0cf09f1adc3efa467f668b89238390",
      "tree": "df3fdd26cb3eb4b3259a76cb8091b0763f779570",
      "parents": [
        "fd11e153b82ad1c84ccc71ba1cfedc222465198c"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 19 15:15:58 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 20 15:17:22 2011 -0700"
      },
      "message": "sparc32: Remove non-kernel code from memcpy implementation.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nTested-by: Kjetil Oftedal \u003coftedal@gmail.com\u003e\n"
    },
    {
      "commit": "a61b582954183e93a3dc3a5cf6bfd2e2c3b40aba",
      "tree": "c4c413241f321dadf5427086d904f39790a2fcc3",
      "parents": [
        "fabb5bd96d060da961d74531a0900da4da5ad2d4"
      ],
      "author": {
        "name": "Josip Rodin",
        "email": "joy@entuzijast.net",
        "time": "Thu Aug 04 02:47:40 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Aug 04 02:47:40 2011 -0700"
      },
      "message": "sparc: Fix __atomic_add_unless() return value.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "56d205cc5c0a3032a605121d4253e111193bf923",
      "tree": "1e37a74fd6df18ec35a9d6a1f70eca2e649e4afb",
      "parents": [
        "ea5e7447ea9d555558e0f13798f5143dd51a915a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Aug 02 20:23:34 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Aug 02 21:28:53 2011 -0700"
      },
      "message": "sparc: Use popc when possible for ffs/__ffs/ffz.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ef7c4d4675d2a9206f913f26ca1a5cd41bff9d41",
      "tree": "88839b80e603ba395882df98b8a8c8f8385337b1",
      "parents": [
        "e95ade083939dcb4b0c51c1a2c8504ea9ef3d6ef"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 29 09:42:07 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Aug 02 21:28:50 2011 -0700"
      },
      "message": "sparc: Use popc if possible for hweight routines.\n\nJust like powerpc, we code patch at boot time.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e95ade083939dcb4b0c51c1a2c8504ea9ef3d6ef",
      "tree": "ad81930a3160a865a78869ece5066484a854cff0",
      "parents": [
        "ac85fe8b21248054851e05bfaa352562e5b06dd3"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 01 18:18:57 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Aug 02 21:28:32 2011 -0700"
      },
      "message": "sparc: Minor tweaks to Niagara page copy/clear.\n\nDon\u0027t use floating point on Niagara2, use the traditional\nplain Niagara code instead.\n\nUnroll Niagara loops to 128 bytes for copy, and 256 bytes\nfor clear.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "678624e401b0b7747762b5223fb23f86dcdacc93",
      "tree": "f3a413887b7ac98c66aa6e77fd6b187ec2c249cb",
      "parents": [
        "09570f914914d2beb0db29c5a9c7344934f2fa8c"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Wed Jul 27 12:49:44 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 27 12:53:36 2011 -0700"
      },
      "message": "sparc: rename atomic_add_unless\n\nShould have been done in commit 1af08a1407f4 (\"This is in preparation\nfor more generic atomic\").\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: Arun Sharma \u003casharma@fb.com\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: \"Hans-Christian Egtvedt\" \u003chans-christian.egtvedt@atmel.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": "9fafbd806198eb690c9a9f9fe35a879db93a1b8d",
      "tree": "a555f39102d51151d7f8461a4f575468cd52f33c",
      "parents": [
        "d81f087f1f1c1aacdb4f17224a554237285ddd11",
        "21dccddf45aae2d9f973696ce06115da0d1012b6"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 20 12:59:54 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 20 12:59:54 2011 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6\n"
    },
    {
      "commit": "b1054282d752c5a026e2c0450616ebf37fc0413e",
      "tree": "d88dcef782fc8e33674109c5c82fb37f2829abdc",
      "parents": [
        "f486b3dc2d048e7309a733f97eb9f9f83d586df2"
      ],
      "author": {
        "name": "Tkhai Kirill",
        "email": "tkhai@yandex.ru",
        "time": "Tue May 10 02:31:41 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 11 21:35:04 2011 -0700"
      },
      "message": "sparc32: Fixed unaligned memory copying in function __csum_partial_copy_sparc_generic\n\nWhen we are in the label cc_dword_align, registers %o0 and %o1 have the same last 2 bits,\nbut it\u0027s not guaranteed one of them is zero. So we can get unaligned memory access\nin label ccte. Example of parameters which lead to this:\n%o0\u003d0x7ff183e9, %o1\u003d0x8e709e7d, %g1\u003d3\n\nWith the parameters I had a memory corruption, when the additional 5 bytes were rewritten.\nThis patch corrects the error.\n\nOne comment to the patch. We don\u0027t care about the third bit in %o1, because cc_end_cruft\nstores word or less.\n\nSigned-off-by: Tkhai Kirill \u003ctkhai@yandex.ru\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1827237065815373421c087c84d2a779d61c13d3",
      "tree": "43e97389ea7cf9fe3e630d9721148edfed8f1750",
      "parents": [
        "eb485d6414fa1ca45282183afb6d6cfb8dbe18e2"
      ],
      "author": {
        "name": "Daniel Hellstrom",
        "email": "daniel@gaisler.com",
        "time": "Thu Apr 21 04:21:39 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 21 16:44:44 2011 -0700"
      },
      "message": "sparc32: removed unused code, implemented by generic code\n\nSigned-off-by: Daniel Hellstrom \u003cdaniel@gaisler.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0586bed3e8563c2eb89bc7256e30ce633ae06cfb",
      "tree": "7a59610f45f7222f25b3212c53fa28636bb4427c",
      "parents": [
        "b80cd62b7d4406bbe8c573fe4381dcc71a2850fd",
        "dbebbfbb1605f0179e7c0d900d941cc9c45de569"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 15 18:28:30 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 15 18:28:30 2011 -0700"
      },
      "message": "Merge branch \u0027core-locking-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-locking-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  rtmutex: tester: Remove the remaining BKL leftovers\n  lockdep/timers: Explain in detail the locking problems del_timer_sync() may cause\n  rtmutex: Simplify PI algorithm and make highest prio task get lock\n  rwsem: Remove redundant asmregparm annotation\n  rwsem: Move duplicate function prototypes to linux/rwsem.h\n  rwsem: Unify the duplicate rwsem_is_locked() inlines\n  rwsem: Move duplicate init macros and functions to linux/rwsem.h\n  rwsem: Move duplicate struct rwsem declaration to linux/rwsem.h\n  x86: Cleanup rwsem_count_t typedef\n  rwsem: Cleanup includes\n  locking: Remove deprecated lock initializers\n  cred: Replace deprecated spinlock initialization\n  kthread: Replace deprecated spinlock initialization\n  xtensa: Replace deprecated spinlock initialization\n  um: Replace deprecated spinlock initialization\n  sparc: Replace deprecated spinlock initialization\n  mips: Replace deprecated spinlock initialization\n  cris: Replace deprecated spinlock initialization\n  alpha: Replace deprecated spinlock initialization\n  rtmutex-tester: Remove BKL tests\n"
    },
    {
      "commit": "e637804c33494e8e7e454dbc625cc4b773f38d6f",
      "tree": "6414fa3f87d09abb1c1b1181f8784795671fb5ca",
      "parents": [
        "2492218c63dca0fb4f041bdc366d243ae3426b40"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Tue Feb 08 04:59:49 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 08 22:52:53 2011 -0800"
      },
      "message": "sparc: use bitmap_set()\n\nUse bitmap_set() instead of calling __set_bit() each bit.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: sparclinux@vger.kernel.org\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "24774fbdeab8f6ac05a19e81bd645b0f7e5d2bb7",
      "tree": "0aee50123069585d00ff07348ef74aa6358f47ae",
      "parents": [
        "7424cdf77b1b2975d82619084f20f0055f715166"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Jan 23 15:19:12 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Jan 27 12:30:37 2011 +0100"
      },
      "message": "sparc: Replace deprecated spinlock initialization\n\nSPIN_LOCK_UNLOCK is deprecated. Use the lockdep capable variant\ninstead.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "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"
    }
  ]
}
