Hello Peter, On Mon, Feb 7, 2022 at 9:50 AM Peter Xu <pet...@redhat.com> wrote: > > On Tue, Feb 01, 2022 at 03:28:59AM -0300, Leonardo Bras wrote: > > Add flags to io_writev and introduce io_flush as optional callback to > > QIOChannelClass, allowing the implementation of zero copy writes by > > subclasses. > > > > How to use them: > > - Write data using > > qio_channel_writev*(...,QIO_CHANNEL_WRITE_FLAG_ZERO_COPY), > > - Wait write completion with qio_channel_flush(). > > > > Notes: > > As some zero copy write implementations work asynchronously, it's > > recommended to keep the write buffer untouched until the return of > > qio_channel_flush(), to avoid the risk of sending an updated buffer > > instead of the buffer state during write. > > > > As io_flush callback is optional, if a subclass does not implement it, then: > > - io_flush will return 0 without changing anything. > > > > Also, some functions like qio_channel_writev_full_all() were adapted to > > receive a flag parameter. That allows shared code between zero copy and > > non-zero copy writev, and also an easier implementation on new flags. > > > > Signed-off-by: Leonardo Bras <leob...@redhat.com> > > With Dan's comment addressed on removing the redundant assertion: > > Reviewed-by: Peter Xu <pet...@redhat.com> >
Thank you for reviewing! I think I am now missing reviewing only on patch 5/5 before sending the next version. Could you and/or Daniel help me with that? Just to check if I am missing anything? Best regards, Leo