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

Method new

block/src/qcow_sync.rs:40–59  ·  view source on GitHub ↗
(
        metadata: Arc<QcowMetadata>,
        data_file: QcowRawFile,
        backing_file: Option<Arc<dyn BackingRead>>,
        sparse: bool,
    )

Source from the content-addressed store, hash-verified

38
39impl QcowSync {
40 pub(crate) fn new(
41 metadata: Arc<QcowMetadata>,
42 data_file: QcowRawFile,
43 backing_file: Option<Arc<dyn BackingRead>>,
44 sparse: bool,
45 ) -> Self {
46 let alignment = data_file.file().alignment();
47 QcowSync {
48 cluster_size: metadata.cluster_size(),
49 decoder: metadata.decoder(),
50 metadata,
51 data_file,
52 backing_file,
53 sparse,
54 alignment,
55 eventfd: EventFd::new(libc::EFD_NONBLOCK)
56 .expect("Failed creating EventFd for QcowSync"),
57 completion_list: VecDeque::new(),
58 }
59 }
60}
61
62impl AsyncIo for QcowSync {

Callers

nothing calls this directly

Calls 5

newFunction · 0.85
fileMethod · 0.80
decoderMethod · 0.80
alignmentMethod · 0.45
cluster_sizeMethod · 0.45

Tested by

no test coverage detected