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

Method fsync

block/src/raw_sync.rs:91–104  ·  view source on GitHub ↗
(&mut self, user_data: Option<u64>)

Source from the content-addressed store, hash-verified

89 }
90
91 fn fsync(&mut self, user_data: Option<u64>) -> AsyncIoResult<()> {
92 // SAFETY: FFI call
93 let result = unsafe { libc::fsync(self.fd as libc::c_int) };
94 if result < 0 {
95 return Err(AsyncIoError::Fsync(std::io::Error::last_os_error()));
96 }
97
98 if let Some(user_data) = user_data {
99 self.completion_list.push_back((user_data, result));
100 self.eventfd.write(1).unwrap();
101 }
102
103 Ok(())
104 }
105
106 fn next_completed_request(&mut self) -> Option<(u64, i32)> {
107 self.completion_list.pop_front()

Callers 3

micro_bench_qcow_fsyncFunction · 0.45
execute_asyncMethod · 0.45

Calls 1

writeMethod · 0.45

Tested by

no test coverage detected