[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-block] [Qemu-devel] [PATCH v3 1/9] util: Add UUID API
From: |
Fam Zheng |
Subject: |
Re: [Qemu-block] [Qemu-devel] [PATCH v3 1/9] util: Add UUID API |
Date: |
Thu, 11 Aug 2016 12:33:40 +0800 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
On Wed, 08/10 16:25, Richard Henderson wrote:
> On 08/09/2016 12:19 PM, Fam Zheng wrote:
> >+/* Version 4 UUID (pseudo random numbers), RFC4122 4.4. */
> >+
> >+typedef struct {
> >+ unsigned char data[16];
> >+} QemuUUID;
> ...
> >+void qemu_uuid_generate(QemuUUID *uuid)
> >+{
> >+ int i;
> >+ uint32_t *out = (uint32_t *)&uuid->data[0];
>
> You can't do this cast without adding alignment on the QemuUUID structure.
>
> >+ for (i = 0; i < 4; ++i) {
> >+ out[i] = g_random_int();
> >+ }
>
> But if there's no other need for uint32_t access to QemuUUID, you could either
>
> (1) write into a local uint32_t[4] array and memcpy over, or
> (2) use stl_he_p from qemu/bswap.h, which will handle the unaligned store.
>
Will change to local array. Thanks!
Fam
- [Qemu-block] [PATCH v3 0/9] UUID clean ups for 2.8, Fam Zheng, 2016/08/09
- [Qemu-block] [PATCH v3 1/9] util: Add UUID API, Fam Zheng, 2016/08/09
- [Qemu-block] [PATCH v3 2/9] vhdx: Use QEMU UUID API, Fam Zheng, 2016/08/09
- [Qemu-block] [PATCH v3 3/9] vdi: Use QEMU UUID API, Fam Zheng, 2016/08/09
- [Qemu-block] [PATCH v3 4/9] vpc: Use QEMU UUID API, Fam Zheng, 2016/08/09
- [Qemu-block] [PATCH v3 5/9] crypto: Switch to QEMU UUID API, Fam Zheng, 2016/08/09
- [Qemu-block] [PATCH v3 6/9] tests: No longer dependent on CONFIG_UUID, Fam Zheng, 2016/08/09
- [Qemu-block] [PATCH v3 7/9] configure: Remove detection code for UUID, Fam Zheng, 2016/08/09
- [Qemu-block] [PATCH v3 8/9] vl: Switch qemu_uuid to QemuUUID, Fam Zheng, 2016/08/09