depend on whether isr is inlined, please fixme