Message ID | 20240125232039.913606-1-suzuki.poulose@arm.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v2] virtio: uapi: Drop __packed attribute in linux/virtio_pci.h | expand |
On 25/01/2024 23:20, Suzuki K Poulose wrote: > Commit 92792ac752aa ("virtio-pci: Introduce admin command sending function") > added "__packed" structures to UAPI header linux/virtio_pci.h. This triggers > build failures in the consumer userspace applications without proper "definition" > of __packed (e.g., kvmtool build fails). > > Moreover, the structures are already packed well, and doesn't need explicit > packing, similar to the rest of the structures in all virtio_* headers. Remove > the __packed attribute. > > Fixes: 92792ac752aa ("virtio-pci: Introduce admin command sending function") > Cc: Feng Liu <feliu@nvidia.com> > Cc: Michael S. Tsirkin <mst@redhat.com> > Cc: Yishai Hadas <yishaih@nvidia.com> > Cc: Alex Williamson <alex.williamson@redhat.com> > Cc: Jean-Philippe Brucker <jean-philippe@linaro.org> > Reviewed-by: Jean-Philippe Brucker <jean-philippe@linaro.org> > Acked-by: Michael S. Tsirkin <mst@redhat.com> > Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com> > --- Gentle ping. Suzuki > > Changes since v1: > - Fix description for the "Fixes" tag format > - Collect Tags from Jean-Philippe and Michael > > --- > include/uapi/linux/virtio_pci.h | 10 +++++----- > 1 file changed, 5 insertions(+), 5 deletions(-) > > diff --git a/include/uapi/linux/virtio_pci.h b/include/uapi/linux/virtio_pci.h > index ef3810dee7ef..a8208492e822 100644 > --- a/include/uapi/linux/virtio_pci.h > +++ b/include/uapi/linux/virtio_pci.h > @@ -240,7 +240,7 @@ struct virtio_pci_cfg_cap { > #define VIRTIO_ADMIN_CMD_LEGACY_DEV_CFG_READ 0x5 > #define VIRTIO_ADMIN_CMD_LEGACY_NOTIFY_INFO 0x6 > > -struct __packed virtio_admin_cmd_hdr { > +struct virtio_admin_cmd_hdr { > __le16 opcode; > /* > * 1 - SR-IOV > @@ -252,20 +252,20 @@ struct __packed virtio_admin_cmd_hdr { > __le64 group_member_id; > }; > > -struct __packed virtio_admin_cmd_status { > +struct virtio_admin_cmd_status { > __le16 status; > __le16 status_qualifier; > /* Unused, reserved for future extensions. */ > __u8 reserved2[4]; > }; > > -struct __packed virtio_admin_cmd_legacy_wr_data { > +struct virtio_admin_cmd_legacy_wr_data { > __u8 offset; /* Starting offset of the register(s) to write. */ > __u8 reserved[7]; > __u8 registers[]; > }; > > -struct __packed virtio_admin_cmd_legacy_rd_data { > +struct virtio_admin_cmd_legacy_rd_data { > __u8 offset; /* Starting offset of the register(s) to read. */ > }; > > @@ -275,7 +275,7 @@ struct __packed virtio_admin_cmd_legacy_rd_data { > > #define VIRTIO_ADMIN_CMD_MAX_NOTIFY_INFO 4 > > -struct __packed virtio_admin_cmd_notify_info_data { > +struct virtio_admin_cmd_notify_info_data { > __u8 flags; /* 0 = end of list, 1 = owner device, 2 = member device */ > __u8 bar; /* BAR of the member or the owner device */ > __u8 padding[6];
diff --git a/include/uapi/linux/virtio_pci.h b/include/uapi/linux/virtio_pci.h index ef3810dee7ef..a8208492e822 100644 --- a/include/uapi/linux/virtio_pci.h +++ b/include/uapi/linux/virtio_pci.h @@ -240,7 +240,7 @@ struct virtio_pci_cfg_cap { #define VIRTIO_ADMIN_CMD_LEGACY_DEV_CFG_READ 0x5 #define VIRTIO_ADMIN_CMD_LEGACY_NOTIFY_INFO 0x6 -struct __packed virtio_admin_cmd_hdr { +struct virtio_admin_cmd_hdr { __le16 opcode; /* * 1 - SR-IOV @@ -252,20 +252,20 @@ struct __packed virtio_admin_cmd_hdr { __le64 group_member_id; }; -struct __packed virtio_admin_cmd_status { +struct virtio_admin_cmd_status { __le16 status; __le16 status_qualifier; /* Unused, reserved for future extensions. */ __u8 reserved2[4]; }; -struct __packed virtio_admin_cmd_legacy_wr_data { +struct virtio_admin_cmd_legacy_wr_data { __u8 offset; /* Starting offset of the register(s) to write. */ __u8 reserved[7]; __u8 registers[]; }; -struct __packed virtio_admin_cmd_legacy_rd_data { +struct virtio_admin_cmd_legacy_rd_data { __u8 offset; /* Starting offset of the register(s) to read. */ }; @@ -275,7 +275,7 @@ struct __packed virtio_admin_cmd_legacy_rd_data { #define VIRTIO_ADMIN_CMD_MAX_NOTIFY_INFO 4 -struct __packed virtio_admin_cmd_notify_info_data { +struct virtio_admin_cmd_notify_info_data { __u8 flags; /* 0 = end of list, 1 = owner device, 2 = member device */ __u8 bar; /* BAR of the member or the owner device */ __u8 padding[6];