From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:55090) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VfkbZ-0008SQ-6x for qemu-devel@nongnu.org; Mon, 11 Nov 2013 01:04:18 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VfkbM-0002OZ-25 for qemu-devel@nongnu.org; Mon, 11 Nov 2013 01:04:09 -0500 Received: from e28smtp08.in.ibm.com ([122.248.162.8]:44470) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VfkbL-0002O7-FO for qemu-devel@nongnu.org; Mon, 11 Nov 2013 01:03:55 -0500 Received: from /spool/local by e28smtp08.in.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Mon, 11 Nov 2013 11:33:51 +0530 Received: from d28relay03.in.ibm.com (d28relay03.in.ibm.com [9.184.220.60]) by d28dlp03.in.ibm.com (Postfix) with ESMTP id 0E9921258054 for ; Mon, 11 Nov 2013 11:34:36 +0530 (IST) Received: from d28av02.in.ibm.com (d28av02.in.ibm.com [9.184.220.64]) by d28relay03.in.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id rAB63kwx45154336 for ; Mon, 11 Nov 2013 11:33:46 +0530 Received: from d28av02.in.ibm.com (localhost [127.0.0.1]) by d28av02.in.ibm.com (8.14.4/8.14.4/NCO v10.0 AVout) with ESMTP id rAB63lgC003002 for ; Mon, 11 Nov 2013 11:33:47 +0530 From: Wenchao Xia Date: Mon, 11 Nov 2013 06:03:35 +0800 Message-Id: <1384121021-24815-1-git-send-email-xiawenc@linux.vnet.ibm.com> Subject: [Qemu-devel] [PATCH V5 0/5] export internal snapshot by qemu-nbd List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: kwolf@redhat.com, jcody@redhat.com, stefanha@redhat.com, pbonzini@redhat.com, Wenchao Xia This series allow user to read internal snapshot's contents without qemu-img convert. V2: Address Stefan's comments: 02: add 'fall through' comments in the case statement. 03: add doc about the difference of internal snapshot and backing chain snapshot, which is used in previous '--snapshot' parameter. Other: 01,04: rebased on upstream with conflict resolved. v3: Address Paolo's comments: 02: add parameter "-l snapshot_id_or_name", rename options snapshot-load to load-snapshot, use QemuOpts. 03: rename snapshot-load to load-snapshot. 04: related change to test both -l and -L case. 05-07: add similar parameter for qemu-img convert. Other: 01: foldered original snapshot logic into function bdrv_snapshot_load_tmp_by_id_or_name(), since multiple caller present in this version. Refined error message from ", reason: %s" to ": %s". 02: Refined error message from ", reason: %s" to ": %s". 03: Rename PARAM to SNAPSHOT_PARAM. v4: Address Eric's comments: 01: typo fix. 02: squashed patch. Use only one option -l and distiguish the cases by the starting string. 03: remove 'eval', remove '_supported_os Linux', remove the comments that have typo. 04: squashed patch. Add only one option -l and distiguish the cases by the starting string. 05: remove indentation. Address Paolo's comments: 02: Use only one option -l and distiguish the cases by the starting string. 04: Use only one option -l and distiguish the cases by the starting string, mark old -s as deprecated, added doc for them. v5: Address Jeff's comments: Quote image name in test cases. Wenchao Xia (5): 1 snapshot: distinguish id and name in load_tmp 2 qemu-nbd: support internal snapshot export 3 qemu-iotests: add 058 internal snapshot export with qemu-nbd case 4 qemu-img: add -l for snapshot in convert 5 qemu-iotests: add test for snapshot in qemu-img convert block/qcow2-snapshot.c | 16 +++++- block/qcow2.h | 5 ++- block/snapshot.c | 78 +++++++++++++++++++++++++++- include/block/block_int.h | 4 +- include/block/snapshot.h | 15 +++++- qemu-img-cmds.hx | 2 +- qemu-img.c | 45 ++++++++++++++--- qemu-img.texi | 12 +++-- qemu-nbd.c | 47 +++++++++++++++++- qemu-nbd.texi | 8 +++- tests/qemu-iotests/058 | 119 ++++++++++++++++++++++++++++++++++++++++++++ tests/qemu-iotests/058.out | 44 ++++++++++++++++ tests/qemu-iotests/check | 1 + tests/qemu-iotests/group | 1 + 14 files changed, 374 insertions(+), 23 deletions(-) create mode 100755 tests/qemu-iotests/058 create mode 100644 tests/qemu-iotests/058.out