*/
String eventSchedProcessWakeupNew();
+ /**
+ * Event called when waking a task; this event is guaranteed to be called
+ * from the waking context.
+ *
+ * @return The name of the event
+ * @since 2.1
+ */
+ default String eventSchedProcessWaking() {
+ return "sched_waking"; //$NON-NLS-1$
+ }
+
/**
* Starting the high resolution timer
* <p>
* Version number of this state provider. Please bump this if you modify the
* contents of the generated state history in some way.
*/
- private static final int VERSION = 21;
+ private static final int VERSION = 22;
// ------------------------------------------------------------------------
// Fields
builder.put(layout.eventSchedProcessFork(), new ProcessForkHandler(layout));
builder.put(layout.eventSchedProcessExit(), new ProcessExitHandler(layout));
builder.put(layout.eventSchedProcessFree(), new ProcessFreeHandler(layout));
- for( String s : layout.getIPIIrqVectorsEntries()) {
+ builder.put(layout.eventSchedProcessWaking(), new SchedWakeupHandler(layout));
+
+ for (String s : layout.getIPIIrqVectorsEntries()) {
builder.put(s, new IPIEntryHandler(layout));
}
- for( String s : layout.getIPIIrqVectorsExits()) {
+ for (String s : layout.getIPIIrqVectorsExits()) {
builder.put(s, new IPIExitHandler(layout));
}
import org.eclipse.tracecompass.tmf.core.event.ITmfEvent;
/**
- * Wakeup handler
+ * Waking/wakeup handler.
+ *
+ * "sched_waking" and "sched_wakeup" tracepoints contain the same fields, and
+ * apply the same state transitions in our model, so they can both use this
+ * handler.
*/
public class SchedWakeupHandler extends KernelEventHandler {
// New definitions in LTTng 2.8
// ------------------------------------------------------------------------
- /**
- * Event called when waking a task; this event is guaranteed to be called
- * from the waking context.
- *
- * @return The name of the event
- * @since 2.0
- */
+ @Override
public String eventSchedProcessWaking() {
return "sched_waking"; //$NON-NLS-1$
}