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


Reply via email to