4,441
社区成员
发帖
与我相关
我的任务
分享
do_IRQ() //version=2.6.18, arch=i386
irq_enter()
#ifdef 4K_STACKS
// none irq_stack, e.g. exception stack
call_on_stack2(__do_IRQ) // run __do_IRQ on irq_stack
// back in exception stack
#endif
irq_exit()
call_on_stack2
// ebx = new irq_stack top
xchgl %ebx, %esp // switch, and save old stack in ebx
call __do_IRQ // IRQ handler in irq_stack
movl %ebx, %esp // restore old stack