On Thu, Aug 04, 2022 at 04:10:43AM -0300, Leonardo Bras wrote: > For using MSG_ZEROCOPY, there are two steps: > 1 - io_writev() the packet, which enqueues the packet for sending, and > 2 - io_flush(), which gets confirmation that all packets got correctly sent > > Currently, if MSG_ZEROCOPY is used to send packets over IPV6, no error will > be reported in (1), but it will fail in the first time (2) happens. > > This happens because (2) currently checks for cmsg_level & cmsg_type > associated with IPV4 only, before reporting any error. > > Add checks for cmsg_level & cmsg_type associated with IPV6, and thus enable > support for MSG_ZEROCOPY + IPV6 > > Fixes: 2bc58ffc29 ("QIOChannelSocket: Implement io_writev zero copy flag & > io_flush for CONFIG_LINUX") > Signed-off-by: Leonardo Bras <leob...@redhat.com>
Reviewed-by: Peter Xu <pet...@redhat.com> -- Peter Xu