> Oh, maybe SRAO signaled via MCE calls memory_failure() with these > async code paths? > > 1. __mc_scan_banks => mce_log => mce_gen_pool_add + irq_work_queue(mce_irq_work) > > 2. mce_irq_work_cb => mce_schedule_work => schedule_work(&mce_work) > > 3. mce_work => mce_gen_pool_process => > blocking_notifier_call_chain(&x86_mce_decoder_chain, 0, mce) > => mce_uc_nb => uc_decode_notifier => memory_failure Yes. That's right. Both SRAO (#MC) and UCNA (CMCI) will follow that path. So memory_failure() is called from the kthread context for that notifier. -Tony