Hi Here is V4 of PERF_RECORD_SWITCH.
Changes in V4: perf: Add PERF_RECORD_SWITCH to indicate context switches Use a separate record format PERF_RECORD_SWITCH_CPU_WIDE for the CPU-wide case that includes the next/previous pid/tid perf tools: Add new PERF_RECORD_SWITCH event Amended to handle PERF_RECORD_SWITCH_CPU_WIDE perf record: Add option --switch-events to select PERF_RECORD_SWITCH events Add PERF_RECORD_SWITCH_CPU_WIDE to documentation perf script: Don't assume evsel position of tracking events New patch perf script: Add option --show-switch-events Add PERF_RECORD_SWITCH_CPU_WIDE to documentation Changes in V3: Rename 'perf_event_switch()' parameter 'out' to be 'sched_in' and invert meaning. Changes in V2 (RFC): The event now shows scheduling in and out, and I added next/prev pid/tid for cpu-wide contexts, plus there are some tools patches that apply to Arnaldo's perf/core branch. Adrian Hunter (5): perf: Add PERF_RECORD_SWITCH to indicate context switches perf tools: Add new PERF_RECORD_SWITCH event perf record: Add option --switch-events to select PERF_RECORD_SWITCH events perf script: Don't assume evsel position of tracking events perf script: Add option --show-switch-events include/uapi/linux/perf_event.h | 31 +++++++++- kernel/events/core.c | 103 +++++++++++++++++++++++++++++++ tools/perf/Documentation/perf-record.txt | 4 ++ tools/perf/Documentation/perf-script.txt | 4 ++ tools/perf/builtin-inject.c | 1 + tools/perf/builtin-record.c | 7 +++ tools/perf/builtin-script.c | 41 ++++++++++-- tools/perf/perf.h | 1 + tools/perf/util/event.c | 28 +++++++++ tools/perf/util/event.h | 12 ++++ tools/perf/util/evlist.h | 1 + tools/perf/util/evsel.c | 4 ++ tools/perf/util/machine.c | 11 ++++ tools/perf/util/machine.h | 2 + tools/perf/util/record.c | 10 +++ tools/perf/util/session.c | 20 ++++++ tools/perf/util/tool.h | 1 + 17 files changed, 275 insertions(+), 6 deletions(-) Regards Adrian -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/