From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:52006) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZlmeM-0006KF-87 for qemu-devel@nongnu.org; Mon, 12 Oct 2015 19:37:03 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZlmeL-0006Hc-7T for qemu-devel@nongnu.org; Mon, 12 Oct 2015 19:37:02 -0400 From: Jeff Cody Date: Mon, 12 Oct 2015 19:36:48 -0400 Message-Id: Subject: [Qemu-devel] [PATCH v3 0/4] List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: kwolf@redhat.com, qemu-block@nongnu.org, jsnow@redhat.com, armbru@redhat.com, programmingkidx@gmail.com, berto@igalia.com Changes from v2: Patch 1: Fixed prototype for id_generate() (thanks Alberto) Used *const instead of * const (thanks Eric, Markus) Updated function comment (thanks Markus) Made random in range 0-99 instead of 0-98 (thanks, Marksu) Patch 2: Cleaned up comments (thanks Markus) use else if instead of nested if (thanks Markus) assign node_name on same line as gen_node_name (thanks Markus) Patch 3,4: new - fix iotests (thanks Kevin) Changes from RFC v1: Patch 1: Several typos / grammatical errors (thanks Eric, John) Make id_subsys_str[] const pointer to const strings (thanks Eric) Moved id_subsys_str[] out from id_generate() (thanks John) Assert on null string for given id (thanks Eric) Zero-pad the 2-digit random # (thanks John) Patch 2: None Born from the conversation on qemu-devel, this generation scheme uses the format ultimately proposed by Kevin, after list discussion. It attempts to keep the ID strings as small as possible, while fulfilling: 1.) Guarantee no collisions with a user-specified ID 2.) Identify the sub-system the ID belongs to 3.) Guarantee of uniqueness 4.) Spoiling predictibility, to avoid creating an assumption of object ordering and parsing (i.e., we don't want users to think they can guess the next ID based on prior behavior). See patch 1 for the generation scheme details. Jeff Cody (4): util - add automated ID generation utility block: auto-generated node-names block: add filter for generated node-names qemu-iotests: update tests for generated node-names block.c | 19 ++++++++++++------- include/qemu-common.h | 8 ++++++++ tests/qemu-iotests/041 | 4 ++-- tests/qemu-iotests/051 | 3 ++- tests/qemu-iotests/051.out | 2 +- tests/qemu-iotests/067 | 3 ++- tests/qemu-iotests/067.out | 5 +++++ tests/qemu-iotests/081 | 3 ++- tests/qemu-iotests/081.out | 2 +- tests/qemu-iotests/common.filter | 5 +++++ util/id.c | 37 +++++++++++++++++++++++++++++++++++++ 11 files changed, 77 insertions(+), 14 deletions(-) -- 1.9.3