Willem de Bruijn
52267790ef
sock: add MSG_ZEROCOPY
...
The kernel supports zerocopy sendmsg in virtio and tap. Expand the
infrastructure to support other socket types. Introduce a completion
notification channel over the socket error queue. Notifications are
returned with ee_origin SO_EE_ORIGIN_ZEROCOPY. ee_errno is 0 to avoid
blocking the send/recv path on receiving notifications.
Add reference counting, to support the skb split, merge, resize and
clone operations possible with SOCK_STREAM and other socket types.
The patch does not yet modify any datapaths.
Signed-off-by: Willem de Bruijn <willemb@google.com >
Signed-off-by: David S. Miller <davem@davemloft.net >
2017-08-03 21:37:29 -07:00
..
2017-07-11 06:08:58 -04:00
2017-05-18 13:52:49 +02:00
2017-03-09 17:01:09 -08:00
2017-07-01 07:39:07 -07:00
2017-08-03 15:35:59 -07:00
2017-04-05 10:15:20 +02:00
2017-08-03 09:45:46 -07:00
2017-06-06 12:45:23 -04:00
2017-04-12 22:02:36 +02:00
2017-05-17 15:22:13 -04:00
2017-07-04 01:29:04 -07:00
2017-06-07 17:15:46 +01:00
2017-07-21 03:38:43 +01:00
2017-04-24 12:35:56 -04:00
2017-07-01 07:39:07 -07:00
2017-07-04 22:35:19 +01:00
2017-05-27 18:51:41 -04:00
2017-04-21 15:28:37 -04:00
2017-03-24 20:49:31 -07:00
2017-07-04 22:35:16 +01:00
2017-06-13 11:04:37 +02:00
2017-07-04 01:29:04 -07:00
2017-04-22 20:26:37 +03:00
2017-07-04 22:35:15 +01:00
2017-08-01 20:09:10 -07:00
2017-06-25 11:42:01 -04:00
2017-06-17 22:54:01 -04:00
2017-04-14 10:06:42 +02:00
2017-08-03 15:35:59 -07:00
2017-08-03 15:35:59 -07:00
2017-06-04 18:12:23 -04:00
2017-07-18 11:13:41 -07:00
2017-06-05 10:54:55 -04:00
2017-07-04 01:29:04 -07:00
2017-03-09 18:23:27 -08:00
2017-06-15 12:12:40 -04:00
2017-07-06 08:59:41 -07:00
2017-07-03 03:29:14 -07:00
2017-07-17 08:59:01 -07:00
2017-08-03 15:36:00 -07:00
2017-07-16 16:36:01 -07:00
2017-04-21 13:21:30 -04:00
2017-08-03 15:35:59 -07:00
2017-04-21 13:21:31 -04:00
2017-04-28 12:00:10 +02:00
2017-04-13 13:19:48 -04:00
2017-07-04 01:29:03 -07:00
2017-07-04 22:35:17 +01:00
2017-07-04 22:35:16 +01:00
2017-07-04 22:35:15 +01:00
2017-05-30 11:55:32 -04:00
2017-06-08 14:16:29 +02:00
2017-04-01 20:21:44 -07:00
2017-07-01 07:39:07 -07:00
2017-07-19 08:55:18 -07:00
2017-08-03 15:35:59 -07:00
2017-07-01 07:39:09 -07:00
2017-07-30 19:28:08 -07:00
2017-07-04 22:35:17 +01:00
2017-05-31 17:58:13 -04:00
2017-05-17 15:22:13 -04:00
2017-03-24 13:17:07 -07:00
2017-07-01 07:39:08 -07:00
2017-06-17 22:54:00 -04:00
2017-06-26 23:13:22 -04:00
2017-07-04 22:35:16 +01:00
2017-06-08 10:53:29 -04:00
2017-08-03 21:37:29 -07:00
2017-08-01 15:26:19 -07:00
2017-07-01 08:51:32 -07:00
2017-08-01 15:26:18 -07:00
2017-06-15 12:12:40 -04:00
2017-07-24 13:52:59 -07:00
2017-07-29 14:19:03 -07:00
2017-05-16 15:41:29 -04:00
2017-07-04 22:35:15 +01:00
2017-06-14 13:52:44 +02:00
2017-07-04 22:35:18 +01:00
2017-07-18 11:13:41 -07:00