package org.eclipse.tracecompass.internal.lttng2.kernel.core.trace.layout;
import java.util.Collection;
+import java.util.Collections;
import org.eclipse.jdt.annotation.NonNull;
import org.eclipse.tracecompass.analysis.os.linux.core.trace.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";
private static final String RQ_SECTOR= "rq_sector";
private static final String NEXTRQ_SECTOR= "nextrq_sector";
+ /* Network events and field names */
+ private static final Collection<String> EVENTS_NETWORK_SEND = Collections.singleton("net_dev_queue");
+ private static final Collection<String> EVENTS_NETWORK_RECEIVE = Collections.singleton("netif_receive_skb");
+ private static final String[] TCP_SEQ_FIELD = { "transport_fields", "thtype_tcp", "seq" };
+ private static final String[] TCP_ACK_FIELD = { "transport_fields", "thtype_tcp", "ack_seq" };
+ private static final String[] TCP_FLAGS_FIELD = { "transport_fields", "thtype_tcp", "flags" };
+
+ /* KVM events */
+ private static final Collection<String> KVM_ENTRY_EVENTS = Collections.singleton("kvm_entry");
+ private static final Collection<String> KVM_EXIT_EVENTS = Collections.singleton("kvm_exit");
+
/** All instances are the same. Only provide a static instance getter */
protected LttngEventLayout() {
}
return NEW_PRIO;
}
+ @Override
+ public String fieldPrevPrio() {
+ return PREV_PRIO;
+ }
+
@Override
public String fieldNextPrio() {
return NEXT_PRIO;
return DISKNAME;
}
+ @Override
+ public Collection<String> eventsNetworkSend() {
+ return EVENTS_NETWORK_SEND;
+ }
+
+ @Override
+ public Collection<String> eventsNetworkReceive() {
+ return EVENTS_NETWORK_RECEIVE;
+ }
+
+ @Override
+ public String @NonNull [] fieldPathTcpSeq() {
+ return TCP_SEQ_FIELD;
+ }
+
+ @Override
+ public String @NonNull [] fieldPathTcpAckSeq() {
+ return TCP_ACK_FIELD;
+ }
+
+ @Override
+ public String @NonNull [] fieldPathTcpFlags() {
+ return TCP_FLAGS_FIELD;
+ }
+
+ // ------------------------------------------------------------------------
+ // VirtualMachine events : kvm entry/exit events
+ // ------------------------------------------------------------------------
+
+ @Override
+ public @NonNull Collection<@NonNull String> eventsKVMEntry() {
+ return KVM_ENTRY_EVENTS;
+ }
+
+ @Override
+ public @NonNull Collection<@NonNull String> eventsKVMExit() {
+ return KVM_EXIT_EVENTS;
+ }
}