diff --git a/vmm/src/interrupt.rs b/vmm/src/interrupt.rs index 01769f71a..a6d09cbe9 100644 --- a/vmm/src/interrupt.rs +++ b/vmm/src/interrupt.rs @@ -200,7 +200,12 @@ impl MsiInterruptGroupOps for KvmMsiInterruptGroup { } } -impl InterruptSourceGroup for KvmMsiInterruptGroup { +impl InterruptSourceGroup for MsiInterruptGroup +where + E: Send + Sync, + RoutingEntry: RoutingEntryExt, + MsiInterruptGroup: MsiInterruptGroupOps, +{ fn enable(&self) -> Result<()> { for (_, route) in self.irq_routes.iter() { route.enable(&self.vm_fd)?; @@ -238,7 +243,7 @@ impl InterruptSourceGroup for KvmMsiInterruptGroup { fn update(&self, index: InterruptIndex, config: InterruptSourceConfig) -> Result<()> { if let Some(route) = self.irq_routes.get(&index) { - let entry = KvmRoutingEntry::make_entry(route.gsi, &config)?; + let entry = RoutingEntry::<_>::make_entry(route.gsi, &config)?; self.gsi_msi_routes .lock() .unwrap()