From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:48084) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZtGT5-0007KA-VA for qemu-devel@nongnu.org; Mon, 02 Nov 2015 09:52:20 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZtGT1-0005Om-JN for qemu-devel@nongnu.org; Mon, 02 Nov 2015 09:52:19 -0500 From: Alberto Garcia Date: Mon, 2 Nov 2015 16:51:52 +0200 Message-Id: Subject: [Qemu-devel] [PATCH v4 0/4] Add 'x-blockdev-del' command List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Kevin Wolf , Alberto Garcia , qemu-block@nongnu.org, Markus Armbruster , Max Reitz , Stefan Hajnoczi This version has only documentation and test fixes. Most are cosmetic changes, but there were two missing wait_ready() and wait_until_completed() calls that could break one of the tests. Regards, Berto v4: - patch 3: s/being used/in use/ [Max] - patch 3: add 'blockdev-add' command to the 'x-blockdev-del' example in qmp-commands.hx [Max] - patch 4: clarify that the BlkDebug and BlkVerify are not meant to be real use cases of those drivers, but only to test the sanity checks of 'x-blockdev-del' [Max] - patch 4: fix addBlockDriverStateOverlay() documentation [Max] - patch 4: add missing wait_ready() and wait_until_completed() calls v3: https://lists.gnu.org/archive/html/qemu-block/2015-10/msg00854.html - Remove the extra references added in v2 to the mirror and backup jobs, and use op blockers instead (for the mirror case only). v2: https://lists.gnu.org/archive/html/qemu-block/2015-10/msg00828.html - Rename it as 'x-blockdev-del' and label it as experimental. - Use two parameters instead of just one. If you try to delete a BDS, it must not be attached to any backend. - New test cases. - Hold extra references during the mirror and backup block jobs. v1: https://lists.gnu.org/archive/html/qemu-devel/2015-10/msg02999.html - Initial implementation Alberto Garcia (4): mirror: block all operations on the target image during the job block: Add blk_get_refcnt() block: Add 'x-blockdev-del' QMP command iotests: Add tests for the x-blockdev-del command block/block-backend.c | 5 + block/mirror.c | 4 + blockdev.c | 66 +++++++ include/sysemu/block-backend.h | 1 + qapi/block-core.json | 32 +++- qmp-commands.hx | 61 +++++- tests/qemu-iotests/139 | 414 +++++++++++++++++++++++++++++++++++++++++ tests/qemu-iotests/139.out | 5 + tests/qemu-iotests/group | 1 + 9 files changed, 585 insertions(+), 4 deletions(-) create mode 100644 tests/qemu-iotests/139 create mode 100644 tests/qemu-iotests/139.out -- 2.6.1