[virt-tools-list] [osinfo PATCH] Mark the PrimaryVolumeDescriptor struct as packed

Daniel P. Berrange berrange at redhat.com
Fri Jan 6 12:26:13 UTC 2012


On Fri, Jan 06, 2012 at 04:21:02PM +0400, Christophe Fergeau wrote:
> This tells gcc it shouldn't add some padding between the struct
> members. which is important because we rely on this structure size
> being exactly 2048. One of its members is guint8 ignored2[246]; (only
> a 2 byte multiple) so all the fields of the struct won't be aligned
> on a 8 byte boundary, so gcc could do some unexpected things on
> some arch.
> ---
>  osinfo/osinfo_media.c |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
> 
> diff --git a/osinfo/osinfo_media.c b/osinfo/osinfo_media.c
> index 2366993..2a80205 100644
> --- a/osinfo/osinfo_media.c
> +++ b/osinfo/osinfo_media.c
> @@ -44,7 +44,7 @@ struct _PrimaryVolumeDescriptor {
>      guint8 ignored2[246];
>      gchar  publisher[MAX_PUBLISHER]; /* Publisher ID */
>      guint8 ignored3[1602];
> -};
> +} __attribute__ ((packed));;

One ';' on the end of line should be sufficient ;-)

ACK


Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|




More information about the virt-tools-list mailing list