)]}'
{
  "log": [
    {
      "commit": "91af70814105f4c05e6e11b51c3269907b71794b",
      "tree": "3857e57d3bccc1638ce2dc0413249cc2f3469d34",
      "parents": [
        "cea0d767c29669bf89f86e4aee46ef462d2ebae8"
      ],
      "author": {
        "name": "Michel Lespinasse",
        "email": "walken@google.com",
        "time": "Wed May 12 11:38:45 2010 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 12 18:23:34 2010 -0700"
      },
      "message": "rwsem: Test for no active locks in __rwsem_do_wake undo code\n\nIf there are no active threasd using a semaphore, it is always correct\nto unqueue blocked threads.  This seems to be what was intended in the\nundo code.\n\nWhat was done instead, was to look for a sem count of zero - this is an\nimpossible situation, given that at least one thread is known to be\nqueued on the semaphore.  The code might be correct as written, but it\u0027s\nhard to reason about and it\u0027s not what was intended (otherwise the goto\nout would have been unconditional).\n\nGo for checking the active count - the alternative is not worth the\nheadache.\n\nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d50efc6c40620b2e11648cac64ebf4a824e40382",
      "tree": "daf951117c86f2d4875216eee9e708a0c01c9e4b",
      "parents": [
        "3a556b26a2718e48aa2b6ce06ea4875ddcd0778e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:33:00 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:33:00 2008 +0100"
      },
      "message": "x86: fix UML and -regparm\u003d3\n\nintroduce the \"asmregparm\" calling convention: for functions\nimplemented in assembly with a fixed regparm input parameters\ncalling convention.\n\nmark the semaphore and rwsem slowpath functions with that.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "c7af77b584b02d3e321b00203a618a9c93782121",
      "tree": "e7a8d5995e34065aa1bd610cb92684c5e5856119",
      "parents": [
        "051a1d1afa47206e23ae03f781c6795ce870e3d5"
      ],
      "author": {
        "name": "Livio Soares",
        "email": "livio@eecg.toronto.edu",
        "time": "Tue Dec 18 15:21:13 2007 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 18 15:21:13 2007 +0100"
      },
      "message": "sched: mark rwsem functions as __sched for wchan/profiling\n\nThis following commit\n\nhttp://git.kernel.org/?p\u003dlinux/kernel/git/torvalds/linux-2.6.git;a\u003dcommitdiff;h\u003dfdf8cb0909b531f9ae8f9b9d7e4eb35ba3505f07\n\nun-inlined a low-level rwsem function, but did not mark it as __sched.\nThe result is that it now shows up as thread wchan (which also affects\n/proc/profile stats).  The following simple patch fixes this by properly\nmarking rwsem_down_failed_common() as a __sched function.\n\nAlso in this patch, which is up for discussion, marks down_read() and\ndown_write() proper as __sched.  For profiling, it is pretty much\nuseless to know that a semaphore is beig help - it is necessary to know\n_which_ one.  By going up another frame on the stack, the information\nbecomes much more useful.\n\nIn summary, the below change to lib/rwsem.c should be applied; the\nchanges to kernel/rwsem.c could be applied if other kernel hackers agree\nwith my proposal that down_read()/down_write() in the profile is not\nenough.\n\n[ akpm@linux-foundation.org: build fix ]\n\nSigned-off-by: Livio Soares \u003clivio@eecg.toronto.edu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4dfbb9d8c6cbfc32faa5c71145bd2a43e1f8237c",
      "tree": "a4fefea0d5f5930240f4ecd6f9716a029cc927a9",
      "parents": [
        "86255d9d0bede79140f4912482447963f00818c0"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Oct 11 01:45:14 2006 -0400"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dtor@insightbb.com",
        "time": "Wed Oct 11 01:45:14 2006 -0400"
      },
      "message": "Lockdep: add lockdep_set_class_and_subclass() and lockdep_set_subclass()\n\nThis annotation makes it possible to assign a subclass on lock init. This\nannotation is meant to reduce the _nested() annotations by assigning a\ndefault subclass.\n\nOne could do without this annotation and rely on lockdep_set_class()\nexclusively, but that would require a manual stack of struct lock_class_key\nobjects.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "fdf8cb0909b531f9ae8f9b9d7e4eb35ba3505f07",
      "tree": "0e06d558f1e349fcc26a9fb06b2c5f96776b6b86",
      "parents": [
        "2752e401148a064a23a5a1e92d502d05017a560c"
      ],
      "author": {
        "name": "Andreas Mohr",
        "email": "andi@rhlx01.fht-esslingen.de",
        "time": "Fri Sep 29 02:01:20 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 29 09:18:22 2006 -0700"
      },
      "message": "[PATCH] lib/rwsem.c: un-inline rwsem_down_failed_common()\n\nUn-inlining rwsem_down_failed_common() (two callsites) reduced lib/rwsem.o\non my Athlon, gcc 4.1.2 from 5935 to 5480 Bytes (455 Bytes saved).\n\nI thus guess that reduced icache footprint (and better function caching) is\nworth more than any function call overhead.\n\nSigned-off-by: Andreas Mohr \u003candi@lisas.de\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4ea2176dfa714882e88180b474e4cbcd888b70af",
      "tree": "7ff3810f6b8750c226234887bb3063d91e1d71c3",
      "parents": [
        "a8f24a3978c5f82419e1c90dc90460731204f46f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 03 00:24:53 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 03 15:27:04 2006 -0700"
      },
      "message": "[PATCH] lockdep: prove rwsem locking correctness\n\nUse the lock validator framework to prove rwsem locking correctness.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c4e05116a2c4d8187127dbf77ab790aa57a47388",
      "tree": "58f07aed47ee4d30e9588d5a820c245faa163b09",
      "parents": [
        "8b3db9c542e18b71d4820da4dd9401ee030feacb"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 03 00:24:29 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 03 15:27:01 2006 -0700"
      },
      "message": "[PATCH] lockdep: clean up rwsems\n\nClean up rwsems.\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": "d59dd4620fb8d6422555a9e2b82a707718e68327",
      "tree": "78205657d24efcaa3f8314064951ac3814ed95a7",
      "parents": [
        "0d8d4d42f2d00eb65262b49f4edd4cf7ef4eb6fc"
      ],
      "author": {
        "name": "akpm@osdl.org",
        "email": "akpm@osdl.org",
        "time": "Sun May 01 08:58:47 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sun May 01 08:58:47 2005 -0700"
      },
      "message": "[PATCH] use smp_mb/wmb/rmb where possible\n\nReplace a number of memory barriers with smp_ variants.  This means we won\u0027t\ntake the unnecessary hit on UP machines.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
