On Thu, Sep 24, 2026 at 06:09:00PM +0200, Igor Skalkin wrote:
> +/* VIRTIO_USB_EVT_HOST_PORT_CONNECTED/DISCONNECTED */
> +enum {
> + VIRTIO_USB_SPEED_UNKNOWN = 0,
> + VIRTIO_USB_SPEED_LOW,
> + VIRTIO_USB_SPEED_FULL, /* usb 1.1 */
> + VIRTIO_USB_SPEED_HIGH, /* usb 2.0 */
> + VIRTIO_USB_SPEED_WIRELESS, /* wireless (usb 2.5) */
> + VIRTIO_USB_USB_SPEED_SUPER, /* usb 3.0 */
> + VIRTIO_USB_SPEED_SUPER_PLUS, /* usb 3.1 */
Please enumerate all of your enums with explicit values as these are
going to userspace.
> +};
> +
> +struct virtio_usb_host_port_event {
> + __le32 code; /* VIRTIO_USB_EVT_HOST_PORT_XXX */
> + __le32 port_id;
> + __le32 speed; /* VIRTIO_USB_SPEED_XXX */
> + __le32 padding;
All of your padding fields MUST be verified to only be set to 0.
These are basic "how to write a uapi" things, did you all not read the
in-kernel documentation for this?
thanks,
greg k-h