1*37da2899SCharles.Forsyth typedef enum Tevent { 2*37da2899SCharles.Forsyth SAdmit = 0, /* Edf admit */ 3*37da2899SCharles.Forsyth SRelease, /* Edf release, waiting to be scheduled */ 4*37da2899SCharles.Forsyth SEdf, /* running under EDF */ 5*37da2899SCharles.Forsyth SRun, /* running best effort */ 6*37da2899SCharles.Forsyth SReady, /* runnable but not running */ 7*37da2899SCharles.Forsyth SSleep, /* blocked */ 8*37da2899SCharles.Forsyth SYield, /* blocked waiting for release */ 9*37da2899SCharles.Forsyth SSlice, /* slice exhausted */ 10*37da2899SCharles.Forsyth SDeadline, /* proc's deadline */ 11*37da2899SCharles.Forsyth SExpel, /* Edf expel */ 12*37da2899SCharles.Forsyth SDead, /* proc dies */ 13*37da2899SCharles.Forsyth SInts, /* Interrupt start */ 14*37da2899SCharles.Forsyth SInte, /* Interrupt end */ 15*37da2899SCharles.Forsyth SUser, /* user event */ 16*37da2899SCharles.Forsyth Nevent, 17*37da2899SCharles.Forsyth } Tevent; 18*37da2899SCharles.Forsyth 19*37da2899SCharles.Forsyth typedef struct Traceevent Traceevent; 20*37da2899SCharles.Forsyth struct Traceevent { 21*37da2899SCharles.Forsyth ulong pid; 22*37da2899SCharles.Forsyth ulong etype; /* Event type */ 23*37da2899SCharles.Forsyth vlong time; /* time stamp */ 24*37da2899SCharles.Forsyth }; 25