[PATCH] virtio_rpmsg: fix config space alignment
From: Francesco Valla
Date: Sun Nov 01 2026 - 08:54:38 EST
The comment for virtio_rpmsg_config says that this structure is
naturally aligned to 32 bits, and this is desirable by some
architectures that don't get along with unaligned accesses.
The content of the structure itself however isn't aligned, and the
__packed attribute prevent the compiler to add this alignment.
Fix this by adding a padding byte.
Fixes: ca96ea25e51a ("rpmsg: virtio_rpmsg_bus: Get buffer size from config space")
Signed-off-by: Francesco Valla <francesco@xxxxxxxx>
---
Hello,
unfortunately I missed this when the original patch set was sent, but I
think it's worth fixing (or at least discussing) this now before it
enters a stable kernel.
The same support in open-amp has already been merged [1], but maybe it
can be fixed before the next release there too?
Another, lower-impact solution would be to fix the comment, but that can
then led to issues on architectures that does not support unaligned
accesses (e.g.: AMR Cortex-M0).
Thank you
Francesco
[1] https://github.com/OpenAMP/open-amp/commit/744376f566c3ec7e06a7d093d785295b78aa486f
---
include/linux/rpmsg/virtio_rpmsg.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/include/linux/rpmsg/virtio_rpmsg.h b/include/linux/rpmsg/virtio_rpmsg.h
index 0872cbca4593..d24fedb63023 100644
--- a/include/linux/rpmsg/virtio_rpmsg.h
+++ b/include/linux/rpmsg/virtio_rpmsg.h
@@ -23,6 +23,7 @@
*
* @version: version of this structure, currently %RPMSG_VDEV_CONFIG_V1.
* @size: size of this structure in bytes.
+ * @reserved: padding, reserved for future usage.
* @txbuf_size: Tx buf size from remote's view. For Linux this is rx buf size.
* @rxbuf_size: Rx buf size from remote's view. For Linux this is tx buf size.
*
@@ -33,6 +34,7 @@
struct virtio_rpmsg_config {
u8 version;
__virtio16 size;
+ u8 reserved;
/* The tx/rx individual buffer size (if VIRTIO_RPMSG_F_BUFSZ) */
__virtio32 txbuf_size;
__virtio32 rxbuf_size;
---
base-commit: cbbddb6b08cc9900a87cccaa9b22bbe06aa4f50a
change-id: 20261101-rpmsg-config-size-0dbe9ea63c6d
Best regards,
--
Francesco Valla <francesco@xxxxxxxx>