Re: [PATCH v4 1/8] media: virtio: Add protocol

From: Bryan O'Donoghue

Date: Mon Jun 22 2026 - 21:02:16 EST


On 22/06/2026 21:43, Brian Daniels wrote:
+ u32 __reserved;

Knowing ~ nothing about virtio with ~ no experience of it I'll offer up a question/statement anyway.

Aren't your reservations here a bit conservative ? Would you not be well advised to reserve a bit more space per other virtio protocols ?

➜ grep reserved ./include/uapi/linux/*.h | grep virtio
./include/uapi/linux/virtio_balloon.h: * __u8 reserved[6];
./include/uapi/linux/virtio_balloon.h: * In other words, add explicit reserved fields to align field and
./include/uapi/linux/virtio_blk.h: __u8 reserved[38];
./include/uapi/linux/virtio_blk.h: __u8 reserved[56];
./include/uapi/linux/virtio_config.h: * VIRTIO_TRANSPORT_F_END are reserved for the transport
./include/uapi/linux/virtio_crypto.h: __le32 reserved;
./include/uapi/linux/virtio_i2c.h: * Copyright (c) 2021 Intel Corporation. All rights reserved.
./include/uapi/linux/virtio_input.h: __u8 reserved[5];
./include/uapi/linux/virtio_iommu.h: __u8 reserved[3];
./include/uapi/linux/virtio_iommu.h: __u8 reserved[3];
./include/uapi/linux/virtio_iommu.h: __u8 reserved[3];
./include/uapi/linux/virtio_iommu.h: __u8 reserved[4];
./include/uapi/linux/virtio_iommu.h: __u8 reserved[8];
./include/uapi/linux/virtio_iommu.h: __u8 reserved[4];
./include/uapi/linux/virtio_iommu.h: __u8 reserved[3];
./include/uapi/linux/virtio_iommu.h: __u8 reserved[64];
./include/uapi/linux/virtio_iommu.h: __u8 reserved[3];
./include/uapi/linux/virtio_iommu.h: __u8 reserved2[4];
./include/uapi/linux/virtio_net.h: __le16 reserved[4];
./include/uapi/linux/virtio_net.h: __le16 reserved;
./include/uapi/linux/virtio_net.h: __le16 reserved[3];
./include/uapi/linux/virtio_net.h: __u8 reserved;
./include/uapi/linux/virtio_net.h: __le16 reserved1;
./include/uapi/linux/virtio_pcidev.h: * @VIRTIO_PCIDEV_OP_RESERVED: reserved to catch errors
./include/uapi/linux/virtio_pcidev.h: * @reserved: reserved
./include/uapi/linux/virtio_pcidev.h: __u16 reserved;
./include/uapi/linux/virtio_pci.h: * 2-65535 - reserved
./include/uapi/linux/virtio_pci.h: /* Unused, reserved for future extensions. */
./include/uapi/linux/virtio_pci.h: __u8 reserved1[12];
./include/uapi/linux/virtio_pci.h: /* Unused, reserved for future extensions. */
./include/uapi/linux/virtio_pci.h: __u8 reserved2[4];
./include/uapi/linux/virtio_pci.h: __u8 reserved[7];
./include/uapi/linux/virtio_pci.h: __u8 reserved[6];
./include/uapi/linux/virtio_pci.h: __u8 reserved[6];
./include/uapi/linux/virtio_pci.h: __u8 reserved[2];
./include/uapi/linux/virtio_pci.h: __u8 reserved[7];
./include/uapi/linux/virtio_pci.h: __u8 reserved[7];
./include/uapi/linux/virtio_pci.h: __u8 reserved;
./include/uapi/linux/virtio_pci.h: __le32 reserved;
./include/uapi/linux/virtio_pci.h: __u8 reserved[6];
./include/uapi/linux/virtio_pci.h: __le32 reserved;
./include/uapi/linux/virtio_pci.h: __le32 reserved;
./include/uapi/linux/virtio_pci.h: __le32 reserved;
./include/uapi/linux/virtio_pci.h: __u8 reserved[7];
./include/uapi/linux/virtio_rtc.h: * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved.
./include/uapi/linux/virtio_rtc.h: __u8 reserved[6];
./include/uapi/linux/virtio_rtc.h: __u8 reserved[7];
./include/uapi/linux/virtio_rtc.h: __u8 reserved[6];
./include/uapi/linux/virtio_rtc.h: __u8 reserved[6];
./include/uapi/linux/virtio_rtc.h: __u8 reserved[5];
./include/uapi/linux/virtio_rtc.h: __u8 reserved[6];
./include/uapi/linux/virtio_rtc.h: __u8 reserved[6];
./include/uapi/linux/virtio_rtc.h: __u8 reserved[5];
./include/uapi/linux/virtio_rtc.h: __u8 reserved[5];
./include/uapi/linux/virtio_rtc.h: __u8 reserved[7];
./include/uapi/linux/virtio_rtc.h: __u8 reserved[6];
./include/uapi/linux/virtio_rtc.h: __u8 reserved[7];
./include/uapi/linux/virtio_rtc.h: __u8 reserved[5];
./include/uapi/linux/virtio_rtc.h: __u8 reserved[5];
./include/uapi/linux/virtio_rtc.h: __u8 reserved[6];
./include/uapi/linux/virtio_spi.h: * Copyright (C) 2025 Qualcomm Innovation Center, Inc. All rights reserved.
./include/uapi/linux/virtio_spi.h: * other bits are reserved as 0, 1-bit transfer is always supported.
./include/uapi/linux/virtio_spi.h: * other bits are reserved as 0, 1-bit transfer is always supported.
./include/uapi/linux/virtio_spi.h: * @reserved: for future use.
./include/uapi/linux/virtio_spi.h: __u8 reserved[3];+ u32 __reserved;

---
bod