)]}'
{
  "log": [
    {
      "commit": "9f0cbea0d8cc47801b853d3c61d0e17475b0cc89",
      "tree": "b1cd6fe848a7544a834d0073297193069c24c7dd",
      "parents": [
        "c6d4267eced79775399f256fbb4adb671e9b597e"
      ],
      "author": {
        "name": "Segher Boessenkool",
        "email": "segher@kernel.crashing.org",
        "time": "Sat Aug 11 10:15:30 2007 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri Aug 17 11:01:58 2007 +1000"
      },
      "message": "[POWERPC] Implement atomic{, 64}_{read, write}() without volatile\n\nInstead, use asm() like all other atomic operations already do.\n\nAlso use inline functions instead of macros; this actually\nimproves code generation (some code becomes a little smaller,\nprobably because of improved alias information -- just a few\nhundred bytes total on a default kernel build, nothing shocking).\n\nSigned-off-by: Segher Boessenkool \u003csegher@kernel.crashing.org\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "2856f5e31c1413bf6e4f1371e07e17078a5fee5e",
      "tree": "587dfe584f0913813d0cf2414a9378618143db15",
      "parents": [
        "79d365a306c3af53d8a732fec79b76c0b285d816"
      ],
      "author": {
        "name": "Mathieu Desnoyers",
        "email": "compudj@krystal.dyndns.org",
        "time": "Tue May 08 00:34:38 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:15:20 2007 -0700"
      },
      "message": "atomic.h: atomic_add_unless as inline. Remove system.h atomic.h circular dependency\n\natomic_add_unless as inline. Remove system.h atomic.h circular dependency.\nI agree (with Andi Kleen) this typeof is not needed and more error\nprone. All the original atomic.h code that uses cmpxchg (which includes\nthe atomic_add_unless) uses defines instead of inline functions,\nprobably to circumvent a circular dependency between system.h and\natomic.h on powerpc (which my patch addresses). Therefore, it makes\nsense to use inline functions that will provide type checking.\n\natomic_add_unless as inline. Remove system.h atomic.h circular dependency.\nDigging into the FRV architecture shows me that it is also affected by\nsuch a circular dependency. Here is the diff applying this against the\nrest of my atomic.h patches.\n\nIt applies over the atomic.h standardization patches.\n\nSigned-off-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f46e477ed94f6407982690ef53dab7898834268f",
      "tree": "40b53e2bfab3f532fcd490a5aad54b39deef7a51",
      "parents": [
        "8ffe9d0bffa441de41d8543a984e552d49293641"
      ],
      "author": {
        "name": "Mathieu Desnoyers",
        "email": "mathieu.desnoyers@polymtl.ca",
        "time": "Tue May 08 00:34:27 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:15:19 2007 -0700"
      },
      "message": "atomic.h: add atomic64 cmpxchg, xchg and add_unless to powerpc\n\n[akpm@linux-foundation.org: build fixes]\nSigned-off-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "41806ef4bfacbe5c4e520d8da2fcedcda335c922",
      "tree": "1443a7e100c5f5a4715d604b8a9de8715ca15afb",
      "parents": [
        "8c0238b3f1a7849b89707ac6b7b0c84e1ed2df70"
      ],
      "author": {
        "name": "Mathieu Desnoyers",
        "email": "mathieu.desnoyers@polymtl.ca",
        "time": "Thu Jan 25 11:15:52 2007 -0500"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri Feb 16 14:00:20 2007 +1100"
      },
      "message": "[POWERPC] atomic.h: Add atomic64 cmpxchg, xchg and add_unless to powerpc\n\natomic.h : Add atomic64 cmpxchg, xchg and add_unless to powerpc\n\nSigned-off-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "434f98c48fc1d2a1f562a28a1562a7b53e940957",
      "tree": "dc722bebcbbe74282b0170955a45848b49720e16",
      "parents": [
        "06cd9396778d5b70ba27fa8158db78d6bc0f007b"
      ],
      "author": {
        "name": "Robert Jennings",
        "email": "rcj@linux.vnet.ibm.com",
        "time": "Wed Jan 17 10:50:20 2007 -0600"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Mon Jan 22 21:27:36 2007 +1100"
      },
      "message": "[POWERPC] atomic_dec_if_positive sign extension fix\n\nOn 64-bit machines, if an atomic counter is explicitly set to a\nnegative value, the atomic_dec_if_positive function will decrement and\nstore the next smallest value in the atomic counter, contrary to its\nintended operation.\n\nThe comparison to determine if the decrement will make the result\nnegative was done by the \"addic.\" instruction, which operates on a\n64-bit value, namely the zero-extended word loaded from the atomic\nvariable.  This patch uses an explicit word compare (cmpwi) and\nchanges the addic. to an addi (also changing \"\u003d\u0026r\" to \"\u003d\u0026b\" so that r0\nisn\u0027t used, and addi doesn\u0027t become li).\n\nThis also fixes a bug for both 32-bit and 64-bit in that previously\n0x80000000 was considered positive, since the result after\ndecrementing is positive.  Now it is considered negative.\n\nAlso, I clarify the return value in the comments just to make it clear\nthat the value returned is always the decremented value, even if that\nvalue is not stored back to the atomic counter.\n\nSigned-off-by: Robert Jennings \u003crcj@linux.vnet.ibm.com\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "e2a3d40258fe20d205f8ed592e1e2c0d5529c2e1",
      "tree": "b8d778fb559c581e08bfc86831d16ee1cd43c841",
      "parents": [
        "a496e25dfb25493a57bcee5d66875d6ff80a9093"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Jul 08 15:00:28 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Jul 08 15:00:28 2006 -0700"
      },
      "message": "power: improve inline asm memory constraints\n\nUse \"+m\" rather than a combination of \"\u003dm\" and \"m\" for improved\nclarity and consistency.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f055affb89f587a03f3411c3fd49ef31295c3d48",
      "tree": "1c40a29191eba8267390fe397f8108ffa8d9ddb5",
      "parents": [
        "4f629d7db32decbadaab2abfa4d021fee94990ef"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Mon Feb 20 10:41:40 2006 +0100"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri Feb 24 14:06:02 2006 +1100"
      },
      "message": "[PATCH] powerpc: native atomic_add_unless\n\nDo atomic_add_unless natively instead of using cmpxchg.\nImproved register allocation idea from Joel Schopp.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "b11fa580ac06b34944a2b46a44ebce2c284e1a76",
      "tree": "128c569facfb43b1e3eccbb0ead907c52358a13e",
      "parents": [
        "144b9c135b963bcb7f242c7b83bff930620d3161"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Fri Jan 13 16:51:52 2006 +1100"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri Jan 13 21:18:54 2006 +1100"
      },
      "message": "[PATCH] powerpc: reformat atomic_add_unless\n\nIt makes my eyes hurt.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "144b9c135b963bcb7f242c7b83bff930620d3161",
      "tree": "4b454f3e5e5921c5a528131dfa51df542259d918",
      "parents": [
        "3356bb9f7ba378a6e2709f9df95f4ea52111f4df"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Fri Jan 13 15:37:17 2006 +1100"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri Jan 13 21:18:50 2006 +1100"
      },
      "message": "[PATCH] powerpc: use lwsync in atomics, bitops, lock functions\n\neieio is only a store - store ordering. When used to order an unlock\noperation loads may leak out of the critical region. This is potentially\nbuggy, one example is if a user wants to atomically read a couple of\nvalues.\n\nWe can solve this with an lwsync which orders everything except store - load.\n\nI removed the (now unused) EIEIO_ON_SMP macros and the c versions\nisync_on_smp and eieio_on_smp now we dont use them. I also removed some\nold comments that were used to identify inline spinlocks in assembly,\nthey dont make sense now our locks are out of line.\n\nAnother interesting thing was that read_unlock was using an eieio even\nthough the rest of the spinlock code had already been converted to\nuse lwsync.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "ffbf670f5cd50501a34a5187981460da2216071e",
      "tree": "f2cd9eeeb59839d15feddf906310bb375474c573",
      "parents": [
        "f17578decc40df8fceff82b106582e30bdfb3189"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jan 09 15:59:17 2006 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@hera.kernel.org",
        "time": "Mon Jan 09 15:59:17 2006 -0800"
      },
      "message": "[PATCH] mutex subsystem, add atomic_xchg() to all arches\n\nadd atomic_xchg() to all the architectures. Needed by the new mutex code.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\n"
    },
    {
      "commit": "d3cb487149bd706aa6aeb02042332a450978dc1c",
      "tree": "69051e0f9853314cf275e4e800faad950e3053c3",
      "parents": [
        "070f80326a215d8e6c4fd6f175e28eb446c492bc"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@engr.sgi.com",
        "time": "Fri Jan 06 00:11:20 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jan 06 08:33:29 2006 -0800"
      },
      "message": "[PATCH] atomic_long_t \u0026 include/asm-generic/atomic.h V2\n\nSeveral counters already have the need to use 64 atomic variables on 64 bit\nplatforms (see mm_counter_t in sched.h).  We have to do ugly ifdefs to fall\nback to 32 bit atomic on 32 bit platforms.\n\nThe VM statistics patch that I am working on will also make more extensive\nuse of atomic64.\n\nThis patch introduces a new type atomic_long_t by providing definitions in\nasm-generic/atomic.h that works similar to the c \"long\" type.  Its 32 bits\non 32 bit platforms and 64 bits on 64 bit platforms.\n\nAlso cleans up the determination of the mm_counter_t in sched.h.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\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": "06a98dba0d4b4f2f9b1f35f636beb166d6cbde34",
      "tree": "5fabe4727384d971c9e83f93b27254d1a9343c18",
      "parents": [
        "676e2497f87501fb190a5b06103d396ca9147373"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Thu Nov 10 15:51:14 2005 +1100"
      },
      "committer": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Thu Nov 10 15:51:14 2005 +1100"
      },
      "message": "powerpc: implement atomic64_t on ppc64\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\n"
    },
    {
      "commit": "3ddfbcf19b15ccd25a0b4b2dc2e38000e08de739",
      "tree": "ca77158ab291453ed39e87f2d81beef9e8d1a560",
      "parents": [
        "f6d3577da14e877b79517c883d1139ee6ad7da45"
      ],
      "author": {
        "name": "David Gibson",
        "email": "david@gibson.dropbear.id.au",
        "time": "Thu Nov 10 12:56:55 2005 +1100"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Thu Nov 10 13:10:38 2005 +1100"
      },
      "message": "[PATCH] powerpc: Consolidate asm compatibility macros\n\nThis patch consolidates macros used to generate assembly for\ncompatibility across different CPUs or configs.  A new header,\nasm-powerpc/asm-compat.h contains the main compatibility macros.  It\nuses some preprocessor magic to make the macros suitable both for use\nin .S files, and in inline asm in .c files.  Headers (bitops.h,\nuaccess.h, atomic.h, bug.h) which had their own such compatibility\nmacros are changed to use asm-compat.h.\n\nppc_asm.h is now for use in .S files *only*, and a #error enforces\nthat.  As such, we\u0027re a lot more careless about namespace pollution\nhere than in asm-compat.h.\n\nWhile we\u0027re at it, this patch adds a call to the PPC405_ERR77 macro in\nfutex.h which should have had it already, but didn\u0027t.\n\nBuilt and booted on pSeries, Maple and iSeries (ARCH\u003dpowerpc).  Built\nfor 32-bit powermac (ARCH\u003dpowerpc) and Walnut (ARCH\u003dppc).\n\nSigned-off-by: David Gibson \u003cdwg@au1.ibm.com\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "feaf7cf153335fe7100b65ed6f4585c3574fe69a",
      "tree": "c57198f01b5f12ffe8ce90f4e1399505c1f84a02",
      "parents": [
        "2bfadee32f1501faa3184d574f6a769f17236c87"
      ],
      "author": {
        "name": "Becky Bruce",
        "email": "bgill@freescale.com",
        "time": "Thu Sep 22 14:20:04 2005 -0500"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Sun Sep 25 22:38:46 2005 +1000"
      },
      "message": "[PATCH] powerpc: merge atomic.h, memory.h\n\npowerpc: Merge atomic.h and memory.h into powerpc\n\nMerged atomic.h into include/powerpc.  Moved asm-style HMT_ defines from\nmemory.h into ppc_asm.h, where there were already HMT_defines; moved c-style\nHMT_ defines to processor.h. Renamed memory.h to synch.h to better reflect\nits contents.\n\nSigned-off-by: Kumar Gala \u003ckumar.gala@freescale.com\u003e\nSigned-off-by: Becky Bruce \u003cbecky.bruce@freescale.com\u003e\nSigned-off-by: Jon Loeliger \u003clinuxppc@jdl.com\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.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"
    }
  ]
}
