Interrupt handlers run with interrupts masked both when executed in interrupt context or thread context
may interfere with handling of other interrupts
do minimal work now
do rest later without interrupts masked