diff --git a/vmm/src/device_manager.rs b/vmm/src/device_manager.rs index 621bd526f..fae3835df 100644 --- a/vmm/src/device_manager.rs +++ b/vmm/src/device_manager.rs @@ -1809,6 +1809,18 @@ impl DeviceManager { ) .map_err(DeviceManagerError::CreateVirtioNet)?, )) + } else if let Some(fd) = net_cfg.fd { + Arc::new(Mutex::new( + virtio_devices::Net::from_tap_fd( + id.clone(), + fd, + Some(net_cfg.mac), + net_cfg.iommu, + net_cfg.queue_size, + self.seccomp_action.clone(), + ) + .map_err(DeviceManagerError::CreateVirtioNet)?, + )) } else { Arc::new(Mutex::new( virtio_devices::Net::new(