On Sat, Sep 05, 2026 at 12:28:20AM +0300, aerosouund wrote:
From: Ammar Yasser
It was defined in tap.h, put it on its own so that future callers won't need to depend on all definitions in tap.h. Also turn it into a union of a vnet_len and virtio_net_mrg_rxbuf because for vhost acceleration the frames will have this virtio net header prepended to them.
Signed-off-by: Eugenio Pérez
Signed-off-by: Ammar Yasser
The code motion itself looks fine.
--- tap.h | 9 +-------- tap_hdr.h | 23 +++++++++++++++++++++++ 2 files changed, 24 insertions(+), 8 deletions(-) create mode 100644 tap_hdr.h
diff --git a/tap.h b/tap.h index b335933..1625975 100644 --- a/tap.h +++ b/tap.h @@ -10,6 +10,7 @@ #include
#include "passt.h" +#include "tap_hdr.h"
/** L2_MAX_LEN_PASTA - Maximum frame length for pasta mode (with L2 header) * @@ -38,14 +39,6 @@
struct udphdr;
-/** - * struct tap_hdr - tap backend specific headers - * @vnet_len: Frame length (for qemu socket transport) - */ -struct tap_hdr { - uint32_t vnet_len; -} __attribute__((packed)); - /** * tap_hdr_iov() - struct iovec for a tap header * @c: Execution context diff --git a/tap_hdr.h b/tap_hdr.h new file mode 100644 index 0000000..aa270b7 --- /dev/null +++ b/tap_hdr.h @@ -0,0 +1,23 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later + * Copyright (c) 2021 Red Hat GmbH + * Author: Stefano Brivio
This might be a bit pedantic since this may be a smaller block of code than is copyrightable, but.. Fwiw, Red Hat legal's advice, last I knew was to prefer simply "Copyright Red Hat" - the rest is apparently not really useful. Also, these specific lines were added by me in 2023, not Stefano in 2021 (commit 4b3d38a06).
+ */ + +#ifndef TAP_HDR_H +#define TAP_HDR_H + +#include
+#include + +/** + * struct tap_hdr - tap backend specific headers + * @vnet_len: Frame length (for qemu socket transport) + */ +struct tap_hdr { + union { + uint32_t vnet_len; + struct virtio_net_hdr_mrg_rxbuf hdr; + }; +}; + +#endif /* TAP_HDR_H */ -- 2.39.5 (Apple Git-154)
-- David Gibson (he or they) | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you, not the other way | around. http://www.ozlabs.org/~dgibson