os.linux: Correctly model each CPU's run queue
[deliverable/tracecompass.git] / analysis / org.eclipse.tracecompass.analysis.os.linux.core / src / org / eclipse / tracecompass / analysis / os / linux / core / trace / IKernelAnalysisEventLayout.java
index 47289c9887710489af4849d434c59cbffb299d65..ae77d746b815dc37039de8e288680699de7350cb 100644 (file)
@@ -220,6 +220,17 @@ public interface IKernelAnalysisEventLayout {
      */
     String eventSchedProcessWakeupNew();
 
+    /**
+     * Migration event, moving a non-running thread from one CPU's run queue to
+     * another.
+     *
+     * @return The event name
+     * @since 2.2
+     */
+    default String eventSchedMigrateTask() {
+        return "sched_migrate_task"; //$NON-NLS-1$
+    }
+
     /**
      * Starting the high resolution timer
      * <p>
@@ -600,6 +611,28 @@ public interface IKernelAnalysisEventLayout {
         return "ret"; //$NON-NLS-1$
     }
 
+    /**
+     * Field indicating the upcoming CPU of sched_wakeup and sched_waking
+     * events.
+     *
+     * @return The field name
+     * @since 2.2
+     */
+    default String fieldTargetCpu() {
+        return "target_cpu"; //$NON-NLS-1$
+    }
+
+    /**
+     * Field of scheduler migration events, indicating the destination CPU of a
+     * thread being migrated.
+     *
+     * @return The field name
+     * @since 2.2
+     */
+    default String fieldDestCpu() {
+        return "dest_cpu"; //$NON-NLS-1$
+    }
+
     // ------------------------------------------------------------------------
     // I/O events and fields
     // ------------------------------------------------------------------------
@@ -763,13 +796,13 @@ public interface IKernelAnalysisEventLayout {
     // ------------------------------------------------------------------------
 
     /**
-     * An event indicating that a packet is sent on the network
+     * Get the list of events indicating that a packet is sent on the network
      *
      * @return The name of the packet send event
      * @since 2.1
      */
-    default String eventNetworkSend() {
-        return "net_dev_queue"; //$NON-NLS-1$
+    default Collection<String> eventsNetworkSend() {
+        return Collections.EMPTY_SET;
     }
 
     /**
@@ -779,8 +812,8 @@ public interface IKernelAnalysisEventLayout {
      * @return The collection of names of the packet receive event
      * @since 2.1
      */
-    default Collection<String> eventNetworkReceive() {
-        return Collections.singleton("netif_receive_skb"); //$NON-NLS-1$
+    default Collection<String> eventsNetworkReceive() {
+        return Collections.EMPTY_SET;
     }
 
     /**
This page took 0.040512 seconds and 5 git commands to generate.