)]}'
{
  "commit": "07695fa04e8a3384b0c855398ce1f7885bd7dc3b",
  "tree": "5a70702087ea1f603b69281aaa270b117f37a63f",
  "parents": [
    "71566a0d161edec70361b7f90f6e54af6a6d5d05"
  ],
  "author": {
    "name": "Frederic Weisbecker",
    "email": "fweisbec@gmail.com",
    "time": "Fri Oct 31 13:08:28 2008 +0100"
  },
  "committer": {
    "name": "Ingo Molnar",
    "email": "mingo@elte.hu",
    "time": "Tue Nov 04 17:14:04 2008 +0100"
  },
  "message": "tracing/ftrace: fix a race condition in sched_switch tracer\n\nImpact: fix race condition in sched_switch tracer\n\nThis patch fixes a race condition in the sched_switch tracer. If\nseveral tasks (IE: concurrent initcalls) are playing with\ntracing_start_cmdline_record() and tracing_stop_cmdline_record(), the\nfollowing situation could happen:\n\n_ Task A and B are using the same tracepoint probe. Task A holds it.\n  Task B is sleeping and doesn\u0027t hold it.\n\n_ Task A frees the sched tracer, then sched_ref is decremented to 0.\n\n_ Task A is preempted and hadn\u0027t yet unregistered its tracepoint\n  probe, then B runs.\n\n_ B increments sched_ref, sees it\u0027s 1 and then guess it has to\n  register its probe. But it has not been freed by task A.\n\n_ A lot of bad things can happen after that...\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "b8f56beb1a621d5ff527a93aee383f0e02fd30dd",
      "old_mode": 33188,
      "old_path": "kernel/trace/trace_sched_switch.c",
      "new_id": "59de5141207c7c97e0224ae8878cd47f723c6f06",
      "new_mode": 33188,
      "new_path": "kernel/trace/trace_sched_switch.c"
    }
  ]
}
