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

Method write_note

vmm/src/coredump.rs:248–271  ·  view source on GitHub ↗
(
        &mut self,
        dump_state: &DumpState,
    )

Source from the content-addressed store, hash-verified

246 }
247
248 fn write_note(
249 &mut self,
250 dump_state: &DumpState,
251 ) -> std::result::Result<(), GuestDebuggableError> {
252 let begin = dump_state.mem_offset - dump_state.elf_note_size as u64;
253 let elf64_phdr = elf::Elf64_Phdr {
254 p_type: elf::PT_NOTE,
255 p_flags: 0,
256 p_offset: begin,
257 p_vaddr: 0,
258 p_paddr: 0,
259 p_filesz: dump_state.elf_note_size as u64,
260 p_memsz: dump_state.elf_note_size as u64,
261 p_align: 0,
262 };
263
264 let mut coredump_file = dump_state.file.as_ref().unwrap();
265 let bytes: &[u8] = elf64_phdr.as_slice();
266 coredump_file
267 .write(bytes)
268 .map_err(GuestDebuggableError::CoredumpFile)?;
269
270 Ok(())
271 }
272
273 fn write_load(
274 &mut self,

Callers 1

coredumpMethod · 0.80

Implementers 2

cpu.rsvmm/src/cpu.rs
vm.rsvmm/src/vm.rs

Calls 2

as_sliceMethod · 0.80
writeMethod · 0.45

Tested by

no test coverage detected