MSG_ZEROCOPY
zc->msg_flags = READ_ONCE(sqe->msg_flags) | MSG_NOSIGNAL | MSG_ZEROCOPY;
if ((flags & MSG_ZEROCOPY) && length) {
if ((flags & MSG_ZEROCOPY) && size) {
zc = MSG_ZEROCOPY;
zc = MSG_ZEROCOPY;
(!(flags & MSG_ZEROCOPY) || !sock_flag(sk, SOCK_ZEROCOPY))) {
} else if (zc == MSG_ZEROCOPY) {
if ((flags & MSG_ZEROCOPY) && length) {
if ((msg->msg_flags & MSG_ZEROCOPY) && !zcopy_cookie)
bool zcopy = ((msg->msg_flags & MSG_ZEROCOPY) &&
if (msg->msg_flags & ~(MSG_DONTWAIT | MSG_CMSG_COMPAT | MSG_ZEROCOPY)) {
if (msg->msg_flags & MSG_ZEROCOPY &&
info->msg->msg_flags &= ~MSG_ZEROCOPY;
if (info->msg->msg_flags & MSG_ZEROCOPY)
if (info->msg && info->msg->msg_flags & MSG_ZEROCOPY &&
#ifndef MSG_ZEROCOPY
ret = sendmsg(socket_fd, &msg, MSG_ZEROCOPY);
flags |= MSG_ZEROCOPY;
#ifndef MSG_ZEROCOPY
(size_t)wr, zflg ? MSG_ZEROCOPY : 0);
#ifndef MSG_ZEROCOPY
cfg_zerocopy ? MSG_ZEROCOPY : 0);
ret = sendto(fd, data, len, cfg_zerocopy ? MSG_ZEROCOPY : 0,
ret = sendmmsg(fd, mmsgs, i, cfg_zerocopy ? MSG_ZEROCOPY : 0);
ret = sendmsg(fd, &msg, cfg_zerocopy ? MSG_ZEROCOPY : 0);
#ifndef MSG_ZEROCOPY
zerocopy ? MSG_ZEROCOPY : 0);
send_byte(fd, 1, MSG_ZEROCOPY);
res = sendmsg(fd, &msg, MSG_ZEROCOPY);
sendmsg_res = sendmsg(fd, &msg, MSG_ZEROCOPY);
send_buf(fd, sbuf2, sizeof(sbuf2), MSG_ZEROCOPY, sizeof(sbuf2));