linux.core: Update Syscall analysis to use time#toNanos and event#getName
authorMatthew Khouzam <matthew.khouzam@ericsson.com>
Mon, 12 Sep 2016 21:27:01 +0000 (17:27 -0400)
committerMatthew Khouzam <matthew.khouzam@ericsson.com>
Thu, 22 Sep 2016 17:19:24 +0000 (13:19 -0400)
Using ITmfTimestamp#toNanos ensure that system calls will be in the same
units if mixed OS traces are used. Using event#getName is faster and simpler
to read than event#getType()#getName.

Change-Id: I70819a28dfdaa257fa6c484c5073f77610605427
Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/80967
Reviewed-by: Hudson CI
Reviewed-by: Jean-Christian Kouame <jean-christian.kouame@ericsson.com>
Tested-by: Jean-Christian Kouame <jean-christian.kouame@ericsson.com>
analysis/org.eclipse.tracecompass.analysis.os.linux.core/src/org/eclipse/tracecompass/internal/analysis/os/linux/core/latency/SystemCallLatencyAnalysis.java

index 4bb42c570d9c47cfed3b5c7dfd1e43546b1d1fa4..f7cb1c17bbdb051c1f145a77f904595edbcc234a 100644 (file)
@@ -111,7 +111,7 @@ public class SystemCallLatencyAnalysis extends AbstractSegmentStoreAnalysisEvent
                 layout = trace.getKernelEventLayout();
                 fLayout = layout;
             }
-            final String eventName = event.getType().getName();
+            final String eventName = event.getName();
 
             if (eventName.startsWith(layout.eventSyscallEntryPrefix()) ||
                     eventName.startsWith(layout.eventCompatSyscallEntryPrefix())) {
@@ -130,7 +130,7 @@ public class SystemCallLatencyAnalysis extends AbstractSegmentStoreAnalysisEvent
 
                 /* Record the event's data into the intial system call info */
                 // String syscallName = fLayout.getSyscallNameFromEvent(event);
-                long startTime = event.getTimestamp().getValue();
+                long startTime = event.getTimestamp().toNanos();
                 String syscallName = eventName.substring(layout.eventSyscallEntryPrefix().length());
 
                 SystemCall.InitialInfo newSysCall = new SystemCall.InitialInfo(startTime, syscallName.intern());
@@ -158,7 +158,7 @@ public class SystemCallLatencyAnalysis extends AbstractSegmentStoreAnalysisEvent
                     return;
                 }
 
-                long endTime = event.getTimestamp().getValue();
+                long endTime = event.getTimestamp().toNanos();
                 ISegment syscall = new SystemCall(info, endTime);
                 getSegmentStore().add(syscall);
             }
This page took 0.025482 seconds and 5 git commands to generate.