(&mut self, offset: u64, data: &[u8])
| 120 | |
| 121 | impl VfioMsi { |
| 122 | fn update(&mut self, offset: u64, data: &[u8]) -> Option<InterruptUpdateAction> { |
| 123 | let old_enabled = self.cfg.enabled(); |
| 124 | |
| 125 | self.cfg.update(offset, data); |
| 126 | |
| 127 | let new_enabled = self.cfg.enabled(); |
| 128 | |
| 129 | if !old_enabled && new_enabled { |
| 130 | return Some(InterruptUpdateAction::EnableMsi); |
| 131 | } |
| 132 | |
| 133 | if old_enabled && !new_enabled { |
| 134 | return Some(InterruptUpdateAction::DisableMsi); |
| 135 | } |
| 136 | |
| 137 | None |
| 138 | } |
| 139 | } |
| 140 | |
| 141 | #[derive(Serialize, Deserialize)] |
no test coverage detected