diff --git a/hw/net/e1000e_core.c b/hw/net/e1000e_core.c index 8ae6fb7e1459f31a8b6649cd5e374c3009ed7ae3..6cafbf6a27ab625a9111a362cec7e8bd59eb2867 100644 --- a/hw/net/e1000e_core.c +++ b/hw/net/e1000e_core.c @@ -159,6 +159,8 @@ e1000e_intrmgr_on_throttling_timer(void *opaque) if (msi_enabled(timer->core->owner)) { trace_e1000e_irq_msi_notify_postponed(); + /* Clear msi_causes_pending to fire MSI eventually */ + timer->core->msi_causes_pending = 0; e1000e_set_interrupt_cause(timer->core, 0); } else { trace_e1000e_irq_legacy_notify_postponed();