From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:57729) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Zw9h5-0000Zn-R9 for qemu-devel@nongnu.org; Tue, 10 Nov 2015 09:14:49 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Zw9h4-0005Ks-NJ for qemu-devel@nongnu.org; Tue, 10 Nov 2015 09:14:43 -0500 Received: from mx1.redhat.com ([209.132.183.28]:39395) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Zw9h4-0005Kb-Fm for qemu-devel@nongnu.org; Tue, 10 Nov 2015 09:14:42 -0500 From: Stefan Hajnoczi Date: Tue, 10 Nov 2015 14:13:55 +0000 Message-Id: <1447164879-6756-1-git-send-email-stefanha@redhat.com> Subject: [Qemu-devel] [PULL 00/44] Block patches List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Peter Maydell , Stefan Hajnoczi The following changes since commit a8b4f9585a0bf5186fca793ce2c5d754cd8ec49a: Merge remote-tracking branch 'remotes/armbru/tags/pull-qapi-2015-11-10' into staging (2015-11-10 09:39:24 +0000) are available in the git repository at: git://github.com/stefanha/qemu.git tags/block-pull-request for you to fetch changes up to c59f3f7e3931bd3c2b082498a9014b50fe1d2625: block: Update copyright of the accounting code (2015-11-10 14:00:14 +0000) ---------------------------------------------------------------- ---------------------------------------------------------------- Alberto Garcia (21): xen_disk: Account for flush operations ide: Account for write operations correctly block: define 'clock_type' for the accounting code util: Infrastructure for computing recent averages block: Add idle_time_ns to BlockDeviceStats block: Add statistics for failed and invalid I/O operations block: Allow configuring whether to account failed and invalid ops block: Compute minimum, maximum and average I/O latencies block: Add average I/O queue depth to BlockDeviceTimedStats block: New option to define the intervals for collecting I/O statistics qemu-io: Account for failed, invalid and flush operations block: Use QEMU_CLOCK_VIRTUAL for the accounting code in qtest mode iotests: Add test for the block device statistics nvme: Account for failed and invalid operations virtio-blk: Account for failed and invalid operations xen_disk: Account for failed and invalid operations atapi: Account for failed and invalid operations ide: Account for failed and invalid operations macio: Account for failed operations scsi-disk: Account for failed operations block: Update copyright of the accounting code Fam Zheng (15): block: Add more types for tracked request block: Track flush requests block: Track discard requests iscsi: Emulate commands in iscsi_aio_ioctl as iscsi_ioctl block: Add ioctl parameter fields to BlockRequest block: Emulate bdrv_ioctl with bdrv_aio_ioctl and track both block: Drop BlockDriver.bdrv_ioctl block: Introduce BlockDriver.bdrv_drain callback qed: Implement .bdrv_drain backup: Extract dirty bitmap handling as a separate function blockjob: Introduce reference count and fix reference to job->bs blockjob: Add .commit and .abort block job actions blockjob: Add "completed" and "ret" in BlockJob blockjob: Simplify block_job_finish_sync block: Add block job transactions John Snow (7): qapi: Add transaction support to block-dirty-bitmap operations iotests: add transactional incremental backup test block: rename BlkTransactionState and BdrvActionOps block/backup: Rely on commit/abort for cleanup block: Add BlockJobTxn support to backup_run block: add transactional properties iotests: 124 - transactional failure test Stefan Hajnoczi (1): tests: add BlockJobTxn unit test block.c | 19 +- block/accounting.c | 123 ++++++++++- block/backup.c | 50 +++-- block/block-backend.c | 1 + block/io.c | 150 +++++++++++-- block/iscsi.c | 73 +++---- block/mirror.c | 2 +- block/qapi.c | 51 +++++ block/qed.c | 13 ++ block/raw-posix.c | 8 - block/raw_bsd.c | 6 - blockdev.c | 485 +++++++++++++++++++++++++++++++++---------- blockjob.c | 189 ++++++++++++++--- docs/bitmaps.md | 6 +- hmp.c | 4 +- hw/block/nvme.c | 11 +- hw/block/virtio-blk.c | 4 +- hw/block/xen_disk.c | 27 ++- hw/ide/atapi.c | 31 +-- hw/ide/core.c | 12 +- hw/ide/macio.c | 12 +- hw/scsi/scsi-disk.c | 46 ++-- include/block/accounting.h | 28 +++ include/block/block.h | 18 +- include/block/block_int.h | 23 +- include/block/blockjob.h | 85 +++++++- include/qemu/timed-average.h | 64 ++++++ qapi-schema.json | 56 ++++- qapi/block-core.json | 103 ++++++++- qemu-img.c | 3 - qemu-io-cmds.c | 9 + qmp-commands.hx | 82 +++++++- tests/Makefile | 7 + tests/qemu-iotests/124 | 182 +++++++++++++++- tests/qemu-iotests/124.out | 4 +- tests/qemu-iotests/136 | 349 +++++++++++++++++++++++++++++++ tests/qemu-iotests/136.out | 5 + tests/qemu-iotests/group | 1 + tests/test-blockjob-txn.c | 250 ++++++++++++++++++++++ tests/test-timed-average.c | 90 ++++++++ util/Makefile.objs | 1 + util/timed-average.c | 231 +++++++++++++++++++++ 42 files changed, 2618 insertions(+), 296 deletions(-) create mode 100644 include/qemu/timed-average.h create mode 100644 tests/qemu-iotests/136 create mode 100644 tests/qemu-iotests/136.out create mode 100644 tests/test-blockjob-txn.c create mode 100644 tests/test-timed-average.c create mode 100644 util/timed-average.c -- 2.5.0