pub(crate) fn writev(&self, io: &Bio, channels: &NexusChannelInner) {
        // in case of writes, we want to write to all underlying children
        let results = channels
            .writers
            .iter()
            .map(|c| unsafe {
                let (desc, chan) = c.io_tuple();
                spdk_bdev_writev_blocks(
                    desc,
                    chan,
                    io.iovs(),
                    io.iov_count(),
                    io.offset() + io.nexus_as_ref().data_ent_offset,
                    io.num_blocks(),
                    Some(Self::io_completion),
                    io.as_ptr() as *mut _,
                )
            })
            .collect::<Vec<_>>();

        self.check_io_submission(&results, &io);
    }
/// write vectored IO to the underlying children.
write vectored IO to the underlying children.
write vectored IO to the underlying children .
pub(crate) fn writev(&self, io: &Bio, channels: &NexusChannelInner) {
        // in case of writes, we want to write to all underlying children
        let results = channels
            .writers
            .iter()
            .map(|c| unsafe {
                let (desc, chan) = c.io_tuple();
                spdk_bdev_writev_blocks(
                    desc,
                    chan,
                    io.iovs(),
                    io.iov_count(),
                    io.offset() + io.nexus_as_ref().data_ent_offset,
                    io.num_blocks(),
                    Some(Self::io_completion),
                    io.as_ptr() as *mut _,
                )
            })
            .collect::<Vec<_>>();
        self.check_io_submission(&results, &io);
    }
pub ( crate ) fn writev ( & self , io : & Bio , channels : & NexusChannelInner ) { // in case of writes, we want to write to all underlying children let results = channels . writers . iter ( ) . map ( | c | unsafe { let ( desc , chan ) = c . io_tuple ( ) ; spdk_bdev_writev_blocks ( desc , chan , io . iovs ( ) , io . iov_count ( ) , io . offset ( ) + io . nexus_as_ref ( ) . data_ent_offset , io . num_blocks ( ) , Some ( Self :: io_completion ) , io . as_ptr ( ) as * mut _ , ) } ) . collect :: < Vec < _ > > ( ) ; self . check_io_submission ( & results , & io ) ; }
write vectored IO to the underlying children.
write vectored IO to the underlying children .
&self
io
&Bio
channels
&NexusChannelInner