)]}'
{
  "commit": "12a3de0a965826096d8adc593bcf4392a7d5b459",
  "tree": "764d69c2973e67cb3ae58bec02e29cd616c40f90",
  "parents": [
    "1dd768c0815334d2319d6377f0750ace075b6142"
  ],
  "author": {
    "name": "Oleg Nesterov",
    "email": "oleg@tv-sign.ru",
    "time": "Wed Apr 30 00:54:29 2008 -0700"
  },
  "committer": {
    "name": "Linus Torvalds",
    "email": "torvalds@linux-foundation.org",
    "time": "Wed Apr 30 08:29:49 2008 -0700"
  },
  "message": "pids: sys_getpgid: fix unsafe *pid usage, s/tasklist/rcu/\n\n1. sys_getpgid() needs rcu_read_lock() to derive the pgrp _nr, even if\n   the task is current, otherwise we can race with another thread which\n   does sys_setpgid().\n\n2. Use rcu_read_lock() instead of tasklist_lock when pid !\u003d 0, make sure\n   that we don\u0027t use the NULL pid if the task exits right after successful\n   find_task_by_vpid().\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Roland McGrath \u003croland@redhat.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": "ddd28e261f3a06d8fc47d35d6eae5c4bcd2a9d8a",
      "old_mode": 33188,
      "old_path": "kernel/sys.c",
      "new_id": "895d2d4c94931e5136c9d063adf19d3d7999b0a6",
      "new_mode": 33188,
      "new_path": "kernel/sys.c"
    }
  ]
}
