)]}'
{
  "commit": "fb40bd78b0f91b274879cf5db8facd1e04b6052e",
  "tree": "2347ccb5ad07f58ab5a4eb41174bb7b54d5f0c5b",
  "parents": [
    "9170d2f6e1dc4d79650fbf492d1cd45291c66504"
  ],
  "author": {
    "name": "Mathieu Desnoyers",
    "email": "mathieu.desnoyers@polymtl.ca",
    "time": "Wed Feb 13 15:03:37 2008 -0800"
  },
  "committer": {
    "name": "Linus Torvalds",
    "email": "torvalds@woody.linux-foundation.org",
    "time": "Wed Feb 13 16:21:20 2008 -0800"
  },
  "message": "Linux Kernel Markers: support multiple probes\n\nRCU style multiple probes support for the Linux Kernel Markers.  Common case\n(one probe) is still fast and does not require dynamic allocation or a\nsupplementary pointer dereference on the fast path.\n\n- Move preempt disable from the marker site to the callback.\n\nSince we now have an internal callback, move the preempt disable/enable to the\ncallback instead of the marker site.\n\nSince the callback change is done asynchronously (passing from a handler that\nsupports arguments to a handler that does not setup the arguments is no\narguments are passed), we can safely update it even if it is outside the\npreempt disable section.\n\n- Move probe arm to probe connection. Now, a connected probe is automatically\n  armed.\n\nRemove MARK_MAX_FORMAT_LEN, unused.\n\nThis patch modifies the Linux Kernel Markers API : it removes the probe\n\"arm/disarm\" and changes the probe function prototype : it now expects a\nva_list * instead of a \"...\".\n\nIf we want to have more than one probe connected to a marker at a given\ntime (LTTng, or blktrace, ssytemtap) then we need this patch. Without it,\nconnecting a second probe handler to a marker will fail.\n\nIt allow us, for instance, to do interesting combinations :\n\nDo standard tracing with LTTng and, eventually, to compute statistics\nwith SystemTAP, or to have a special trigger on an event that would call\na systemtap script which would stop flight recorder tracing.\n\nSigned-off-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Mike Mason \u003cmmlnx@us.ibm.com\u003e\nCc: Dipankar Sarma \u003cdipankar@in.ibm.com\u003e\nCc: David Smith \u003cdsmith@redhat.com\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nCc: \"Frank Ch. Eigler\" \u003cfche@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\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": "2b1953f6f12e0a7bdab67267fd4ac7b6f8f6e7d8",
      "old_mode": 33188,
      "old_path": "arch/powerpc/platforms/cell/spufs/sputrace.c",
      "new_id": "01974f7776e184d798d33cb2728dc5c610cad368",
      "new_mode": 33188,
      "new_path": "arch/powerpc/platforms/cell/spufs/sputrace.c"
    },
    {
      "type": "modify",
      "old_id": "5f36cf946bcb35b18597bf92b86ebf7f461d73fa",
      "old_mode": 33188,
      "old_path": "include/linux/marker.h",
      "new_id": "b5f95637f28946b9c26511f07ecae102e39b75df",
      "new_mode": 33188,
      "new_path": "include/linux/marker.h"
    },
    {
      "type": "modify",
      "old_id": "ac28e8761e8436b1af7cb0b1f7d92ec37ffe6f1f",
      "old_mode": 33188,
      "old_path": "include/linux/module.h",
      "new_id": "330bec08c2c4142632e83ccb07bb60fa8767884b",
      "new_mode": 33188,
      "new_path": "include/linux/module.h"
    },
    {
      "type": "modify",
      "old_id": "5323cfaedbce52f4cfbdb7bf6338ca368a64ac0b",
      "old_mode": 33188,
      "old_path": "kernel/marker.c",
      "new_id": "c4c2cd8b61f541f05d60ce934b7b8788f9bdea61",
      "new_mode": 33188,
      "new_path": "kernel/marker.c"
    },
    {
      "type": "modify",
      "old_id": "4202da97a1da8c289479880155807d4c1aa5766e",
      "old_mode": 33188,
      "old_path": "kernel/module.c",
      "new_id": "92595bad3812c797ffd80f908b207731685df770",
      "new_mode": 33188,
      "new_path": "kernel/module.c"
    },
    {
      "type": "modify",
      "old_id": "a36797535615dc77647260f12d2496d850bd4177",
      "old_mode": 33188,
      "old_path": "samples/markers/probe-example.c",
      "new_id": "c8e099d4d1fdd7d5cec4a7148d259ee6281878cc",
      "new_mode": 33188,
      "new_path": "samples/markers/probe-example.c"
    }
  ]
}
