)]}'
{
  "commit": "256a6b41365e17cebe5c2fc91ddff716c9aa055a",
  "tree": "c491008b3e2fefed6a42ac7f824d191e023fb11f",
  "parents": [
    "5fcce7432a731e67f1cd3ef1e71dca9ea84dedb1"
  ],
  "author": {
    "name": "Ingo Molnar",
    "email": "mingo@elte.hu",
    "time": "Wed Oct 11 01:22:08 2006 -0700"
  },
  "committer": {
    "name": "Linus Torvalds",
    "email": "torvalds@g5.osdl.org",
    "time": "Wed Oct 11 11:14:24 2006 -0700"
  },
  "message": "[PATCH] lockdep: fix printk recursion logic\n\nBug reported and fixed by Tilman Schmidt \u003ctilman@imap.cc\u003e: if lockdep is\nenabled then log messages make it to /var/log/messages belatedly.  The\nreason is a missed wakeup of klogd.\n\nInitially there was only a lockdep_internal() protection against lockdep\nrecursion within vprintk() - it grew the \u0027outer\u0027 lockdep_off()/on()\nprotection only later on.  But that lockdep_off() made the\nrelease_console_sem() within vprintk() always happen under the\nlockdep_internal() condition, causing the bug.\n\nThe right solution to remove the inner protection against recursion here -\nthe outer one is enough.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Tilman Schmidt \u003ctilman@imap.cc\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "771f5e861bcd38af1d5d7f91666b2413b1d4008b",
      "old_mode": 33188,
      "old_path": "kernel/printk.c",
      "new_id": "f7d427ef50385d70db6a0222ea3c53a0d8738d03",
      "new_mode": 33188,
      "new_path": "kernel/printk.c"
    }
  ]
}
