On Wed, May 04, 2022 at 05:17:30PM +0900, Byungchul Park wrote: > CURRENT STATUS > +/* [...] > + * Ensure it has been called on ON/OFF transition. > + */ > +void dept_enirq_transition(unsigned long ip) > +{ > + struct dept_task *dt = dept_task(); > + unsigned long flags; > + > + if (unlikely(READ_ONCE(dept_stop) || in_nmi())) > + return; > + > + /* > + * IRQ ON/OFF transition might happen while Dept is working. > + * We cannot handle recursive entrance. Just ingnore it. > + * Only transitions outside of Dept will be considered. > + */ > + if (dt->recursive) > + return; > + > + flags = dept_enter(); > + > + enirq_update(ip); > + > + dept_exit(flags); > +} EXPORT_SYMBOL_GPL(dept_enirq_transition); ERROR: modpost: "dept_enirq_transition" [arch/x86/kvm/kvm-amd.ko] undefined! ERROR: modpost: "dept_enirq_transition" [arch/x86/kvm/kvm-intel.ko] undefined! This function needs to be exported for modules. Thanks. -- Thanks, Hyeonggon