qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v8 00/12] UUID clean ups for 2.8
@ 2016-09-18  4:25 Fam Zheng
  2016-09-18  4:25 ` [Qemu-devel] [PATCH v8 01/12] util: Add UUID API Fam Zheng
                   ` (11 more replies)
  0 siblings, 12 replies; 28+ messages in thread
From: Fam Zheng @ 2016-09-18  4:25 UTC (permalink / raw)
  To: qemu-devel
  Cc: kwolf, qemu-block, sw, jcody, mdroth, armbru, pbonzini, mreitz,
	eblake, rth

v8: Fix patchew compiling failure on 32 bit mingw, using QEMU_PTR_IS_ALIGNED.

v7: Address Eric's comments:
    01, 03-09: Add Eric's r-b line.
    01: Commit message syntax fix.
        Remove trailing comma in copyright header.
        Remove 'glib.h' inclusion.
    02: New patch to make null_uuid.
    09: Fix missed qemu_uuid.
        Also update "qemu_uuid[]" to "qemu_uuid" in a comment.
    10: New patch to make uuid parse more robust against invalid formats.
    11: Add test cases suggested by Eric.
        Fix unwanted double dashes.
    12: Added MAINTAINERS patch.

v6: Fix initializer syntax that is disliked by centos6.

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 (12):
  util: Add UUID API
  uuid: Make null_uuid static
  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
  uuid: Tighten uuid parse
  tests: Add uuid tests
  Add UUID files to MAINTAINERS

 MAINTAINERS                |   6 ++
 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/ppc/spapr_rtas.c        |   3 +-
 hw/smbios/smbios.c         |  13 ++--
 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          | 177 +++++++++++++++++++++++++++++++++++++++++++++
 ui/spice-core.c            |   2 +-
 util/Makefile.objs         |   1 +
 util/uuid.c                | 114 +++++++++++++++++++++++++++++
 vl.c                       |   7 +-
 27 files changed, 424 insertions(+), 213 deletions(-)
 create mode 100644 include/qemu/uuid.h
 create mode 100644 tests/test-uuid.c
 create mode 100644 util/uuid.c

-- 
2.7.4

^ permalink raw reply	[flat|nested] 28+ messages in thread

end of thread, other threads:[~2016-09-21  3:32 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-09-18  4:25 [Qemu-devel] [PATCH v8 00/12] UUID clean ups for 2.8 Fam Zheng
2016-09-18  4:25 ` [Qemu-devel] [PATCH v8 01/12] util: Add UUID API Fam Zheng
2016-09-19  3:30   ` Jeff Cody
2016-09-18  4:25 ` [Qemu-devel] [PATCH v8 02/12] uuid: Make null_uuid static Fam Zheng
2016-09-19  3:31   ` Jeff Cody
2016-09-18  4:25 ` [Qemu-devel] [PATCH v8 03/12] vhdx: Use QEMU UUID API Fam Zheng
2016-09-19  3:33   ` Jeff Cody
2016-09-18  4:25 ` [Qemu-devel] [PATCH v8 04/12] vdi: " Fam Zheng
2016-09-19  3:33   ` Jeff Cody
2016-09-18  4:25 ` [Qemu-devel] [PATCH v8 05/12] vpc: " Fam Zheng
2016-09-19  3:33   ` Jeff Cody
2016-09-18  4:25 ` [Qemu-devel] [PATCH v8 06/12] crypto: Switch to " Fam Zheng
2016-09-19  3:34   ` Jeff Cody
2016-09-18  4:25 ` [Qemu-devel] [PATCH v8 07/12] tests: No longer dependent on CONFIG_UUID Fam Zheng
2016-09-19  3:34   ` Jeff Cody
2016-09-18  4:25 ` [Qemu-devel] [PATCH v8 08/12] configure: Remove detection code for UUID Fam Zheng
2016-09-19  3:34   ` Jeff Cody
2016-09-18  4:25 ` [Qemu-devel] [PATCH v8 09/12] vl: Switch qemu_uuid to QemuUUID Fam Zheng
2016-09-19  3:34   ` Jeff Cody
2016-09-18  4:25 ` [Qemu-devel] [PATCH v8 10/12] uuid: Tighten uuid parse Fam Zheng
2016-09-19  3:44   ` Jeff Cody
2016-09-19 20:30   ` Eric Blake
2016-09-18  4:25 ` [Qemu-devel] [PATCH v8 11/12] tests: Add uuid tests Fam Zheng
2016-09-19  3:44   ` Jeff Cody
2016-09-20 15:37   ` Eric Blake
2016-09-21  3:32     ` Fam Zheng
2016-09-18  4:25 ` [Qemu-devel] [PATCH v8 12/12] Add UUID files to MAINTAINERS Fam Zheng
2016-09-19  3:44   ` Jeff Cody

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).