)]}'
{
  "commit": "62c124ff3bcdb414af635c2bf822c9e4f2a5abfa",
  "tree": "5d279211e098d24245d49e394d84aa8cfdb6f277",
  "parents": [
    "7dd3db54e77d21eb95e145f19ba53f68250d0e73"
  ],
  "author": {
    "name": "Tejun Heo",
    "email": "tj@kernel.org",
    "time": "Thu Jun 02 11:14:00 2011 +0200"
  },
  "committer": {
    "name": "Oleg Nesterov",
    "email": "oleg@redhat.com",
    "time": "Sat Jun 04 18:17:11 2011 +0200"
  },
  "message": "ptrace: use bit_waitqueue for TRAPPING instead of wait_chldexit\n\nptracer-\u003esignal-\u003ewait_chldexit was used to wait for TRAPPING; however,\n-\u003ewait_chldexit was already complicated with waker-side filtering\nwithout adding TRAPPING wait on top of it.  Also, it unnecessarily\nmade TRAPPING clearing depend on the current ptrace relationship - if\nthe ptracee is detached, wakeup is lost.\n\nThere is no reason to use signal-\u003ewait_chldexit here.  We\u0027re just\nwaiting for JOBCTL_TRAPPING bit to clear and given the relatively\ninfrequent use of ptrace, bit_waitqueue can serve it perfectly.\n\nThis patch makes JOBCTL_TRAPPING wait use bit_waitqueue instead of\nsignal-\u003ewait_chldexit.\n\n-v2: Use JOBCTL_*_BIT macros instead of ilog2() as suggested by Linus.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "0c37d999c8b852a9ffd3bef43ecd146b0290fe04",
      "old_mode": 33188,
      "old_path": "kernel/ptrace.c",
      "new_id": "7f05f3a1267b8b7753f26b03b12ead7b262fad4d",
      "new_mode": 33188,
      "new_path": "kernel/ptrace.c"
    },
    {
      "type": "modify",
      "old_id": "9ab91c516c3f9b86cca519d98a167b515cfa8084",
      "old_mode": 33188,
      "old_path": "kernel/signal.c",
      "new_id": "172a4c79f12c10f286c7a9b47513d4834ba948e1",
      "new_mode": 33188,
      "new_path": "kernel/signal.c"
    }
  ]
}
