aboutsummaryrefslogtreecommitdiff
path: root/hw
diff options
context:
space:
mode:
authorPeter Maydell <peter.maydell@linaro.org>2018-12-10 11:26:49 +0000
committerKevin Wolf <kwolf@redhat.com>2019-02-01 13:46:45 +0100
commit1324f06384870fdd6e5829dc4f775afe4de61867 (patch)
tree5435a92d2e2ff5dc6ba24d2b37a1fd3f11d2c158 /hw
parentac928b8ee875f1ac256702a2b93c8eb828ddaff2 (diff)
downloadqemu-1324f06384870fdd6e5829dc4f775afe4de61867.zip
qemu-1324f06384870fdd6e5829dc4f775afe4de61867.tar.gz
qemu-1324f06384870fdd6e5829dc4f775afe4de61867.tar.bz2
uuid: Make qemu_uuid_bswap() take and return a QemuUUID
Currently qemu_uuid_bswap() takes a pointer to the QemuUUID to be byte-swapped. This means it can't be used when the UUID to be swapped is in a packed member of a struct. It's also out of line with the general bswap*() functions we provide in bswap.h, which take the value to be swapped and return it. Make qemu_uuid_bswap() take a QemuUUID and return the swapped version. This fixes some clang warnings about taking the address of a packed struct member in block/vdi.c. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'hw')
-rw-r--r--hw/acpi/vmgenid.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/hw/acpi/vmgenid.c b/hw/acpi/vmgenid.c
index d78b579..02717a8 100644
--- a/hw/acpi/vmgenid.c
+++ b/hw/acpi/vmgenid.c
@@ -30,8 +30,7 @@ void vmgenid_build_acpi(VmGenIdState *vms, GArray *table_data, GArray *guid,
* first, since that's what the guest expects
*/
g_array_set_size(guid, VMGENID_FW_CFG_SIZE - ARRAY_SIZE(guid_le.data));
- guid_le = vms->guid;
- qemu_uuid_bswap(&guid_le);
+ guid_le = qemu_uuid_bswap(vms->guid);
/* The GUID is written at a fixed offset into the fw_cfg file
* in order to implement the "OVMF SDT Header probe suppressor"
* see docs/specs/vmgenid.txt for more details
@@ -149,8 +148,7 @@ static void vmgenid_update_guest(VmGenIdState *vms)
* however, will expect the fields to be little-endian.
* Perform a byte swap immediately before writing.
*/
- guid_le = vms->guid;
- qemu_uuid_bswap(&guid_le);
+ guid_le = qemu_uuid_bswap(vms->guid);
/* The GUID is written at a fixed offset into the fw_cfg file
* in order to implement the "OVMF SDT Header probe suppressor"
* see docs/specs/vmgenid.txt for more details.