[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-block] [PATCH v5 0/9] UUID clean ups for 2.8
From: |
Fam Zheng |
Subject: |
[Qemu-block] [PATCH v5 0/9] UUID clean ups for 2.8 |
Date: |
Fri, 12 Aug 2016 12:52:07 +0800 |
v5: Add union fields in QemuUUID to help the alignment necessary for bswap, and
assert. [Richard]
Update the test case initializer syntax accordingly.
v4: Use memcpy instead of pointer type cast. [Richard]
Keep parameter order consistent with libuuid. [Jeff]
qemu_uuid_convert -> qemu_uuid_bswap. [Jeff]
v3: Negative tests. [Daniel]
Update QemuUUID type from array to struct. [Markus]
Add qemu_uuid_unparse_strdup.
Add qemu_uuid_convert.
Redirect configure obsoleted option message to stderr. [Jeff]
vdi: uuid_convert -> qemu_uuid_convert.
Fix commit message syntax errors in vpc patch. [Jeff]
Further cleanup around qemu_uuid.
v2: Fix the endianness wrongness. [Jeff]
Add tests/test-uuid.c. [Denial]
Add r-b of Stefan Weil to the VDI patch.
The facts how we use libuuid now are not particularly pleasant.
- VHDX driver depends on uuid, but is unconditionally checked in iotests 109.
If it is not built, the test would fail, leaving no hint about that. In fact
this even makes the feature implementation a bit ugly because it compromises
the write protection on block 0 with image probing, silently.
- A few other libuuid users, in block/ and crypto/, use it as an optional
dependency, and compromises certain functionalities if it is not available.
- On the other hand, there are already a few uuid function fallbacks in those
callers, as well as some duplicated sscanf, snprintf and g_strdup_printf
around UUID_FMT, which can be replaced with UUID parse/unparse routines.
So instead of making libuuid a hard requirement, let's simply move the
fallbacks to util and implement the random version of uuid generation, and be
done with it.
Fam
Fam Zheng (9):
util: Add UUID API
vhdx: Use QEMU UUID API
vdi: Use QEMU UUID API
vpc: Use QEMU UUID API
crypto: Switch to QEMU UUID API
tests: No longer dependent on CONFIG_UUID
configure: Remove detection code for UUID
vl: Switch qemu_uuid to QemuUUID
tests: Add uuid tests
arch_init.c | 19 -----
block/Makefile.objs | 2 +-
block/iscsi.c | 2 +-
block/vdi.c | 73 +++++--------------
block/vhdx-endian.c | 3 -
block/vhdx.c | 9 ++-
block/vpc.c | 10 +--
configure | 70 ++----------------
crypto/block-luks.c | 26 ++-----
hw/ipmi/ipmi_bmc_sim.c | 2 +-
hw/nvram/fw_cfg.c | 2 +-
hw/ppc/spapr.c | 7 +-
hw/smbios/smbios.c | 11 +--
hw/xenpv/xen_domainbuild.c | 6 +-
include/qemu/uuid.h | 59 ++++++++++++++++
include/sysemu/sysemu.h | 7 +-
qmp.c | 11 +--
stubs/uuid.c | 2 +-
tests/Makefile.include | 2 +
tests/test-crypto-block.c | 2 +-
tests/test-uuid.c | 173 +++++++++++++++++++++++++++++++++++++++++++++
util/Makefile.objs | 1 +
util/uuid.c | 93 ++++++++++++++++++++++++
vl.c | 7 +-
24 files changed, 389 insertions(+), 210 deletions(-)
create mode 100644 include/qemu/uuid.h
create mode 100644 tests/test-uuid.c
create mode 100644 util/uuid.c
--
2.7.4
- [Qemu-block] [PATCH v5 0/9] UUID clean ups for 2.8,
Fam Zheng <=
- [Qemu-block] [PATCH v5 1/9] util: Add UUID API, Fam Zheng, 2016/08/12
- [Qemu-block] [PATCH v5 2/9] vhdx: Use QEMU UUID API, Fam Zheng, 2016/08/12
- [Qemu-block] [PATCH v5 3/9] vdi: Use QEMU UUID API, Fam Zheng, 2016/08/12
- [Qemu-block] [PATCH v5 4/9] vpc: Use QEMU UUID API, Fam Zheng, 2016/08/12
- [Qemu-block] [PATCH v5 5/9] crypto: Switch to QEMU UUID API, Fam Zheng, 2016/08/12
- [Qemu-block] [PATCH v5 6/9] tests: No longer dependent on CONFIG_UUID, Fam Zheng, 2016/08/12
- [Qemu-block] [PATCH v5 7/9] configure: Remove detection code for UUID, Fam Zheng, 2016/08/12
- [Qemu-block] [PATCH v5 9/9] tests: Add uuid tests, Fam Zheng, 2016/08/12