From 94c57af7ec5a1651804ac53a9acb45920aae97f6 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Rapha=C3=ABl=20Beamonte?= Date: Tue, 12 Apr 2016 13:46:32 -0400 Subject: [PATCH] IKernelAnalysisEventLayout: add fieldPrevPrio() method MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Adds a fieldPrevPrio() method in the layout to access the priority of the previous process. Up to now, we could access the previous process' name, but its priority can be useful. Change-Id: I52c9ae1f3ba377139702e8cd4a6aad75cac7757c Signed-off-by: Raphaël Beamonte Reviewed-on: https://git.eclipse.org/r/70503 Reviewed-by: Hudson CI Reviewed-by: Matthew Khouzam Tested-by: Matthew Khouzam Reviewed-by: Alexandre Montplaisir --- .../analysis/os/linux/core/trace/DefaultEventLayout.java | 9 +++++++++ .../os/linux/core/trace/IKernelAnalysisEventLayout.java | 9 +++++++++ .../kernel/core/trace/layout/LttngEventLayout.java | 6 ++++++ .../lttng2/kernel/core/trace/layout/PerfEventLayout.java | 5 +++++ 4 files changed, 29 insertions(+) diff --git a/analysis/org.eclipse.tracecompass.analysis.os.linux.core/src/org/eclipse/tracecompass/analysis/os/linux/core/trace/DefaultEventLayout.java b/analysis/org.eclipse.tracecompass.analysis.os.linux.core/src/org/eclipse/tracecompass/analysis/os/linux/core/trace/DefaultEventLayout.java index 6d1d709c69..f8d249d97d 100644 --- a/analysis/org.eclipse.tracecompass.analysis.os.linux.core/src/org/eclipse/tracecompass/analysis/os/linux/core/trace/DefaultEventLayout.java +++ b/analysis/org.eclipse.tracecompass.analysis.os.linux.core/src/org/eclipse/tracecompass/analysis/os/linux/core/trace/DefaultEventLayout.java @@ -93,6 +93,7 @@ public class DefaultEventLayout implements IKernelAnalysisEventLayout { private static final String CHILD_TID = "child_tid"; //$NON-NLS-1$ private static final String PRIO = "prio"; //$NON-NLS-1$ private static final String NEW_PRIO = "newprio"; //$NON-NLS-1$ + private static final String PREV_PRIO = "prev_prio"; //$NON-NLS-1$ private static final String NEXT_PRIO = "next_prio"; //$NON-NLS-1$ private static final String COMM = "comm"; //$NON-NLS-1$ private static final String NAME = "name"; //$NON-NLS-1$ @@ -287,6 +288,14 @@ public class DefaultEventLayout implements IKernelAnalysisEventLayout { return NEW_PRIO; } + /** + * @since 2.0 + */ + @Override + public String fieldPrevPrio() { + return PREV_PRIO; + } + /** @since 1.0 */ @Override public String fieldNextPrio() { diff --git a/analysis/org.eclipse.tracecompass.analysis.os.linux.core/src/org/eclipse/tracecompass/analysis/os/linux/core/trace/IKernelAnalysisEventLayout.java b/analysis/org.eclipse.tracecompass.analysis.os.linux.core/src/org/eclipse/tracecompass/analysis/os/linux/core/trace/IKernelAnalysisEventLayout.java index 5270f025e7..17e271d200 100644 --- a/analysis/org.eclipse.tracecompass.analysis.os.linux.core/src/org/eclipse/tracecompass/analysis/os/linux/core/trace/IKernelAnalysisEventLayout.java +++ b/analysis/org.eclipse.tracecompass.analysis.os.linux.core/src/org/eclipse/tracecompass/analysis/os/linux/core/trace/IKernelAnalysisEventLayout.java @@ -489,6 +489,15 @@ public interface IKernelAnalysisEventLayout { */ String fieldNewPrio(); + /** + * The field with the prev priority. This is used in the scheduler's switch + * event to show the priority of the thread being scheduled out. + * + * @return the name of the field with the priority of the previous thread + * @since 2.0 + */ + String fieldPrevPrio(); + /** * The field with the next priority. This is used in the scheduler's switch * event to show the priority of the next thread or process. diff --git a/lttng/org.eclipse.tracecompass.lttng2.kernel.core/src/org/eclipse/tracecompass/internal/lttng2/kernel/core/trace/layout/LttngEventLayout.java b/lttng/org.eclipse.tracecompass.lttng2.kernel.core/src/org/eclipse/tracecompass/internal/lttng2/kernel/core/trace/layout/LttngEventLayout.java index e79dd8f199..40a86f5967 100644 --- a/lttng/org.eclipse.tracecompass.lttng2.kernel.core/src/org/eclipse/tracecompass/internal/lttng2/kernel/core/trace/layout/LttngEventLayout.java +++ b/lttng/org.eclipse.tracecompass.lttng2.kernel.core/src/org/eclipse/tracecompass/internal/lttng2/kernel/core/trace/layout/LttngEventLayout.java @@ -81,6 +81,7 @@ public class LttngEventLayout implements IKernelAnalysisEventLayout { private static final String CHILD_COMM = "child_comm"; private static final String CHILD_TID = "child_tid"; private static final String PRIO = "prio"; + private static final String PREV_PRIO = "prev_prio"; private static final String NEXT_PRIO = "next_prio"; private static final String NEW_PRIO = "newprio"; private static final String COMM = "comm"; @@ -290,6 +291,11 @@ public class LttngEventLayout implements IKernelAnalysisEventLayout { return NEW_PRIO; } + @Override + public String fieldPrevPrio() { + return PREV_PRIO; + } + @Override public String fieldNextPrio() { return NEXT_PRIO; diff --git a/lttng/org.eclipse.tracecompass.lttng2.kernel.core/src/org/eclipse/tracecompass/internal/lttng2/kernel/core/trace/layout/PerfEventLayout.java b/lttng/org.eclipse.tracecompass.lttng2.kernel.core/src/org/eclipse/tracecompass/internal/lttng2/kernel/core/trace/layout/PerfEventLayout.java index 6c2f69036d..6b83e5aea6 100644 --- a/lttng/org.eclipse.tracecompass.lttng2.kernel.core/src/org/eclipse/tracecompass/internal/lttng2/kernel/core/trace/layout/PerfEventLayout.java +++ b/lttng/org.eclipse.tracecompass.lttng2.kernel.core/src/org/eclipse/tracecompass/internal/lttng2/kernel/core/trace/layout/PerfEventLayout.java @@ -236,6 +236,11 @@ public class PerfEventLayout implements IKernelAnalysisEventLayout { return "newprio"; //$NON-NLS-1$ } + @Override + public String fieldPrevPrio() { + return "prev_prio"; //$NON-NLS-1$ + } + @Override public String fieldNextPrio() { return "next_prio"; //$NON-NLS-1$ -- 2.34.1