Lines Matching +full:cm +full:- +full:poll +full:- +full:mode
15 -----------------------
40 ---------
43 netdev 2.1. For more in-depth information see that paper and talk,
53 [PATCH net-next v4 0/9] socket sendmsg MSG_ZEROCOPY
54 https://lore.kernel.org/netdev/20170803202945.70750-1-willemdebruijn.kernel@gmail.com
64 ------------
68 copy avoidance mode for legacy processes that accidentally already pass
77 ------------
86 A zerocopy failure will return -1 with errno ENOBUFS. This happens if
101 -------------
108 maintains an internal unsigned 32-bit counter. Each send call with
119 send syscall is followed by a poll and recvmsg on the error queue.
121 Reading from the error queue is always a non-blocking operation. The
122 poll call is there to block until an error is outstanding. It will set
130 if (poll(&pfd, 1, -1) != 1 || pfd.revents & POLLERR == 0)
131 error(1, errno, "poll");
134 if (ret == -1)
162 For protocols that acknowledge data in-order, like TCP, each
186 The 32-bit notification range is encoded as [ee_info, ee_data]. This
193 struct cmsghdr *cm;
195 cm = CMSG_FIRSTHDR(msg);
196 if (cm->cmsg_level != SOL_IP &&
197 cm->cmsg_type != IP_RECVERR)
200 serr = (void *) CMSG_DATA(cm);
201 if (serr->ee_errno != 0 ||
202 serr->ee_origin != SO_EE_ORIGIN_ZEROCOPY)
205 printf("completed: %u..%u\n", serr->ee_info, serr->ee_data);
216 scatter-gather I/O cannot send packets made up of kernel generated
239 --------
249 Data path sent to local sockets is the same as for non-local sockets.