)]}'
{
  "commit": "09f2724a786f76475ef2985cf84f5359c553aade",
  "tree": "0c2bf6c6651b14c9ae12150af9ad06b2d9ee8a60",
  "parents": [
    "30a2f3c60a84092c8084dfe788b710f8d0768cd4"
  ],
  "author": {
    "name": "Zhang, Yanmin",
    "email": "yanmin_zhang@linux.intel.com",
    "time": "Wed Aug 14 15:56:40 2030 +0800"
  },
  "committer": {
    "name": "Ingo Molnar",
    "email": "mingo@elte.hu",
    "time": "Thu Aug 14 10:58:48 2008 +0200"
  },
  "message": "sched: fix the race between walk_tg_tree and sched_create_group\n\nWith 2.6.27-rc3, I hit a kernel panic when running volanoMark on my\nnew x86_64 machine. I also hit it with other 2.6.27-rc kernels.\nSee below log.\n\nBasically, function walk_tg_tree and sched_create_group have a race\nbetween accessing and initiating tg-\u003echildren. Below patch fixes it\nby moving tg-\u003echildren initiation to the front of linking tg-\u003esiblings\nto parent-\u003echildren.\n\n{----------------panic log------------}\n\nBUG: unable to handle kernel NULL pointer dereference at 0000000000000000\nIP: [\u003cffffffff802292ab\u003e] walk_tg_tree+0x45/0x7f\nPGD 1be1c4067 PUD 1bdd8d067 PMD 0\nOops: 0000 [1] SMP\nCPU 11\nModules linked in: igb\nPid: 22979, comm: java Not tainted 2.6.27-rc3 #1\nRIP: 0010:[\u003cffffffff802292ab\u003e]  [\u003cffffffff802292ab\u003e] walk_tg_tree+0x45/0x7f\nRSP: 0018:ffff8801bfbbbd18  EFLAGS: 00010083\nRAX: 0000000000000000 RBX: ffff8800be0dce40 RCX: ffffffffffffffc0\nRDX: ffff880102c43740 RSI: 0000000000000000 RDI: ffff8800be0dce40\nRBP: ffff8801bfbbbd48 R08: ffff8800ba437bc8 R09: 0000000000001f40\nR10: ffff8801be812100 R11: ffffffff805fdf44 R12: ffff880102c43740\nR13: 0000000000000000 R14: ffffffff8022cf0f R15: ffffffff8022749f\nFS:  00000000568ac950(0063) GS:ffff8801bfa26d00(0000) knlGS:0000000000000000\nCS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b\nCR2: 0000000000000000 CR3: 00000001bd848000 CR4: 00000000000006e0\nDR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000\nDR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400\nProcess java (pid: 22979, threadinfo ffff8801b145a000, task ffff8801bf18e450)\nStack:  0000000000000001 ffff8800ba5c8d60 0000000000000001 0000000000000001\n ffff8800bad1ccb8 0000000000000000 ffff8801bfbbbd98 ffffffff8022ed37\n 0000000000000001 0000000000000286 ffff8801bd5ee180 ffff8800ba437bc8\nCall Trace:\n \u003cIRQ\u003e  [\u003cffffffff8022ed37\u003e] try_to_wake_up+0x71/0x24c\n [\u003cffffffff80247177\u003e] autoremove_wake_function+0x9/0x2e\n [\u003cffffffff80228039\u003e] ? __wake_up_common+0x46/0x76\n [\u003cffffffff802296d5\u003e] __wake_up+0x38/0x4f\n [\u003cffffffff806169cc\u003e] tcp_v4_rcv+0x380/0x62e\n\nSigned-off-by: Zhang Yanmin \u003cyanmin_zhang@linux.intel.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "d601fb0406caefd39cb4eaf2dca25105f2ce3f0c",
      "old_mode": 33188,
      "old_path": "kernel/sched.c",
      "new_id": "8bf8a5528bc7fed6e8d7d942e82ee6245f1435d4",
      "new_mode": 33188,
      "new_path": "kernel/sched.c"
    }
  ]
}
