summaryrefslogtreecommitdiffstats
path: root/include/uapi/linux/virtio_net.h
diff options
context:
space:
mode:
authorMichael S. Tsirkin <mst@redhat.com>2013-07-25 10:20:23 +0930
committerDavid S. Miller <davem@davemloft.net>2013-07-27 20:06:10 -0700
commite7428e95a06fb516fac1308bd0e176e27c0b9287 (patch)
tree7ccd3f84a565b24ddf7efe5b10325cfd34ad98fc /include/uapi/linux/virtio_net.h
parent10eccb46b521359fa344f63459087df722f0776d (diff)
downloadblackbird-op-linux-e7428e95a06fb516fac1308bd0e176e27c0b9287.tar.gz
blackbird-op-linux-e7428e95a06fb516fac1308bd0e176e27c0b9287.zip
virtio-net: put virtio net header inline with data
For small packets we can simplify xmit processing by linearizing buffers with the header: most packets seem to have enough head room we can use for this purpose. Since existing hypervisors require that header is the first s/g element, we need a feature bit for this. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/uapi/linux/virtio_net.h')
-rw-r--r--include/uapi/linux/virtio_net.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/include/uapi/linux/virtio_net.h b/include/uapi/linux/virtio_net.h
index c520203fac2f..227d4ce84e79 100644
--- a/include/uapi/linux/virtio_net.h
+++ b/include/uapi/linux/virtio_net.h
@@ -70,7 +70,9 @@ struct virtio_net_config {
__u16 max_virtqueue_pairs;
} __attribute__((packed));
-/* This is the first element of the scatter-gather list. If you don't
+/* This header comes first in the scatter-gather list.
+ * If VIRTIO_F_ANY_LAYOUT is not negotiated, it must
+ * be the first element of the scatter-gather list. If you don't
* specify GSO or CSUM features, you can simply ignore the header. */
struct virtio_net_hdr {
#define VIRTIO_NET_HDR_F_NEEDS_CSUM 1 // Use csum_start, csum_offset
OpenPOWER on IntegriCloud