summary refs log tree commit diff
path: root/devices/src/virtio/virtio_pci_common_config.rs
diff options
context:
space:
mode:
Diffstat (limited to 'devices/src/virtio/virtio_pci_common_config.rs')
-rw-r--r--devices/src/virtio/virtio_pci_common_config.rs6
1 files changed, 5 insertions, 1 deletions
diff --git a/devices/src/virtio/virtio_pci_common_config.rs b/devices/src/virtio/virtio_pci_common_config.rs
index 78af4ff..97d7001 100644
--- a/devices/src/virtio/virtio_pci_common_config.rs
+++ b/devices/src/virtio/virtio_pci_common_config.rs
@@ -185,7 +185,11 @@ impl VirtioPciCommonConfig {
             0x08 => self.driver_feature_select = value,
             0x0c => {
                 if self.driver_feature_select < 2 {
-                    device.ack_features((value as u64) << (self.driver_feature_select * 32));
+                    let features: u64 = (value as u64) << (self.driver_feature_select * 32);
+                    device.ack_features(features);
+                    for queue in queues.iter_mut() {
+                        queue.ack_features(features);
+                    }
                 } else {
                     warn!(
                         "invalid ack_features (page {}, value 0x{:x})",