On Thu, Jan 08, 2026 at 03:11:36PM +0100, Stefano Garzarella wrote: > On Mon, Jan 05, 2026 at 03:23:41AM -0500, Michael S. Tsirkin wrote: > > Reorder struct virtio_vsock fields to place the DMA buffer (event_list) > > last. This eliminates the padding from aligning the struct size on > > ARCH_DMA_MINALIGN. > > > > Signed-off-by: Michael S. Tsirkin <[email protected]> > > --- > > net/vmw_vsock/virtio_transport.c | 8 +++++--- > > 1 file changed, 5 insertions(+), 3 deletions(-) > > > > diff --git a/net/vmw_vsock/virtio_transport.c > > b/net/vmw_vsock/virtio_transport.c > > index ef983c36cb66..964d25e11858 100644 > > --- a/net/vmw_vsock/virtio_transport.c > > +++ b/net/vmw_vsock/virtio_transport.c > > @@ -60,9 +60,7 @@ struct virtio_vsock { > > */ > > struct mutex event_lock; > > bool event_run; > > - __dma_from_device_group_begin(); > > - struct virtio_vsock_event event_list[8]; > > - __dma_from_device_group_end(); > > + > > u32 guest_cid; > > bool seqpacket_allow; > > > > @@ -76,6 +74,10 @@ struct virtio_vsock { > > */ > > struct scatterlist *out_sgs[MAX_SKB_FRAGS + 1]; > > struct scatterlist out_bufs[MAX_SKB_FRAGS + 1]; > > + > > IIUC we would like to have these fields always on the bottom of this struct, > so would be better to add a comment here to make sure we will not add other > fields in the future after this?
not necessarily - you can add fields after, too - it's just that __dma_from_device_group_begin already adds a bunch of padding, so adding fields in this padding is cheaper. do we really need to add comments to teach people about the art of struct packing? > Maybe we should also add a comment about the `event_lock` requirement we > have in the section above. > > Thanks, > Stefano hmm which requirement do you mean? > > > + __dma_from_device_group_begin(); > > + struct virtio_vsock_event event_list[8]; > > + __dma_from_device_group_end(); > > }; > > > > static u32 virtio_transport_get_local_cid(void) > > -- > > MST > >
