LTTV_CPU_IDLE,
LTTV_CPU_BUSY,
LTTV_CPU_IRQ,
+ LTTV_CPU_SOFT_IRQ,
LTTV_CPU_TRAP;
LttvIRQMode
if(ts->soft_irq_states[softirq].running)
ts->soft_irq_states[softirq].running--;
+ /* update cpu status */
+ cpu_pop_mode(s->cpu_state);
+
return FALSE;
}
/* Do something with the info about being in user or system mode when int? */
push_state(s, LTTV_STATE_SOFT_IRQ, submode);
+ /* update cpu status */
+ cpu_push_mode(s->cpu_state, LTTV_CPU_SOFT_IRQ);
+
/* update softirq status */
s->cpu_state->last_soft_irq = softirq;
ts->soft_irq_states[softirq].running++;
LTTV_CPU_IDLE = g_quark_from_string("idle");
LTTV_CPU_BUSY = g_quark_from_string("busy");
LTTV_CPU_IRQ = g_quark_from_string("irq");
+ LTTV_CPU_SOFT_IRQ = g_quark_from_string("softirq");
LTTV_CPU_TRAP = g_quark_from_string("trap");
LTTV_IRQ_UNKNOWN = g_quark_from_string("unknown");
{ 0, 0xBBBB, 0xBBBB, 0xBBBB }, /* COL_CPU_IDLE */
{ 0, 0xFFFF, 0xFFFF, 0xFFFF }, /* COL_CPU_BUSY */
{ 0, 0xFFFF, 0x5E00, 0x0000 }, /* COL_CPU_IRQ */
+ { 0, 0xFFFF, 0x9400, 0x9600 }, /* COL_CPU_SOFT_IRQ */
{ 0, 0xFF00, 0xFF00, 0x0100 }, /* COL_CPU_TRAP */
};
else if(present_state == LTTV_CPU_IRQ) {
prop_line->color = drawing_colors_cpu[COL_CPU_IRQ];
}
+ else if(present_state == LTTV_CPU_SOFT_IRQ) {
+ prop_line->color = drawing_colors_cpu[COL_CPU_SOFT_IRQ];
+ }
else if(present_state == LTTV_CPU_TRAP) {
prop_line->color = drawing_colors_cpu[COL_CPU_TRAP];
} else {