Subversion Repositories HelenOS

Rev

Rev 4342 | Rev 4346 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 4342 Rev 4343
Line 78... Line 78...
78
        istate->rcx, istate->rdx);
78
        istate->rcx, istate->rdx);
79
    printf("%%rsi=%#llx, %%rdi=%#llx, %%r8=%#llx\n", istate->rsi,
79
    printf("%%rsi=%#llx, %%rdi=%#llx, %%r8=%#llx\n", istate->rsi,
80
        istate->rdi, istate->r8);
80
        istate->rdi, istate->r8);
81
    printf("%%r9=%#llx, %%r10=%#llx, %%r11=%#llx\n", istate->r9,
81
    printf("%%r9=%#llx, %%r10=%#llx, %%r11=%#llx\n", istate->r9,
82
        istate->r10, istate->r11);
82
        istate->r10, istate->r11);
83
#ifdef CONFIG_DEBUG_ALLREGS 
-
 
84
    printf("%%r12=%#llx, %%r13=%#llx, %%r14=%#llx\n", istate->r12,
-
 
85
        istate->r13, istate->r14);
-
 
86
    printf("%%r15=%#llx, %%rbx=%#llx, %%rbp=%#llx\n", istate->r15,
-
 
87
        istate->rbx, &istate->rbp);
-
 
88
#endif
-
 
89
    printf("%%rsp=%#llx\n", &istate->stack[0]);
83
    printf("%%rsp=%#llx\n", &istate->stack[0]);
90
}
84
}
91
 
85
 
92
static void trap_virtual_eoi(void)
86
static void trap_virtual_eoi(void)
93
{
87
{
Line 177... Line 171...
177
        if (irq->preack) {
171
        if (irq->preack) {
178
            /* Send EOI before processing the interrupt */
172
            /* Send EOI before processing the interrupt */
179
            trap_virtual_eoi();
173
            trap_virtual_eoi();
180
            ack = true;
174
            ack = true;
181
        }
175
        }
182
        irq->handler(irq, irq->arg);
176
        irq->handler(irq);
183
        spinlock_unlock(&irq->lock);
177
        spinlock_unlock(&irq->lock);
184
    } else {
178
    } else {
185
        /*
179
        /*
186
         * Spurious interrupt.
180
         * Spurious interrupt.
187
         */
181
         */