MCPcopy Create free account
hub / github.com/cloud-hypervisor/cloud-hypervisor / write_config

Method write_config

virtio-devices/src/block.rs:1071–1087  ·  view source on GitHub ↗
(&mut self, offset: u64, data: &[u8])

Source from the content-addressed store, hash-verified

1069 }
1070
1071 fn write_config(&mut self, offset: u64, data: &[u8]) {
1072 // The "writeback" field is the only mutable field
1073 let writeback_offset =
1074 (&raw const self.config.writeback as u64) - (&raw const self.config as u64);
1075 if offset != writeback_offset || data.len() != std::mem::size_of_val(&self.config.writeback)
1076 {
1077 error!(
1078 "Attempt to write to read-only field: offset {:x} length {}",
1079 offset,
1080 data.len()
1081 );
1082 return;
1083 }
1084
1085 let writeback = self.is_writeback_enabled(data[0] == 1);
1086 self.set_writeback_mode(writeback);
1087 }
1088
1089 fn activate(&mut self, context: crate::device::ActivationContext) -> ActivateResult {
1090 let crate::device::ActivationContext {

Callers

nothing calls this directly

Calls 3

is_writeback_enabledMethod · 0.80
set_writeback_modeMethod · 0.80
lenMethod · 0.45

Tested by

no test coverage detected