)]}'
{
  "commit": "e8c158bb313c1df421eab7dc4299cd39cbbf5895",
  "tree": "8a5f1d01e58d0e358b2b0c9407fc494912e83c27",
  "parents": [
    "41d577aa35aa0504fe28b76a948908bdb7fbec81"
  ],
  "author": {
    "name": "Robin Holt",
    "email": "holt@sgi.com",
    "time": "Thu Apr 02 16:59:45 2009 -0700"
  },
  "committer": {
    "name": "Linus Torvalds",
    "email": "torvalds@linux-foundation.org",
    "time": "Thu Apr 02 19:05:10 2009 -0700"
  },
  "message": "Factor out #ifdefs from kernel/spinlock.c to LOCK_CONTENDED_FLAGS\n\nSGI has observed that on large systems, interrupts are not serviced for a\nlong period of time when waiting for a rwlock.  The following patch series\nre-enables irqs while waiting for the lock, resembling the code which is\nalready there for spinlocks.\n\nI only made the ia64 version, because the patch adds some overhead to the\nfast path.  I assume there is currently no demand to have this for other\narchitectures, because the systems are not so large.  Of course, the\npossibility to implement raw_{read|write}_lock_flags for any architecture\nis still there.\n\nThis patch:\n\nThe new macro LOCK_CONTENDED_FLAGS expands to the correct implementation\ndepending on the config options, so that IRQ\u0027s are re-enabled when\npossible, but they remain disabled if CONFIG_LOCKDEP is set.\n\nSigned-off-by: Petr Tesarik \u003cptesarik@suse.cz\u003e\nSigned-off-by: Robin Holt \u003cholt@sgi.com\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "5a58ea3e91e94e5aca9c67811cb853ff05a1ec84",
      "old_mode": 33188,
      "old_path": "include/linux/lockdep.h",
      "new_id": "da5a5a1f4cd2ec17fb2a5f544cc71f8e800b2d10",
      "new_mode": 33188,
      "new_path": "include/linux/lockdep.h"
    },
    {
      "type": "modify",
      "old_id": "29ab20749dd3da1df6bd6f03f5cdbf62ed9ae52e",
      "old_mode": 33188,
      "old_path": "kernel/spinlock.c",
      "new_id": "7283c6dc2d597ad9d9312a35c922c14e701e3768",
      "new_mode": 33188,
      "new_path": "kernel/spinlock.c"
    }
  ]
}
