From: Alberto Garcia <berto@igalia.com>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Alberto Garcia <berto@igalia.com>,
qemu-block@nongnu.org, Markus Armbruster <armbru@redhat.com>,
Max Reitz <mreitz@redhat.com>,
Stefan Hajnoczi <stefanha@redhat.com>
Subject: [Qemu-devel] [PATCH v3 00/21] Extended I/O accounting
Date: Thu, 22 Oct 2015 11:11:10 +0300 [thread overview]
Message-ID: <cover.1445500464.git.berto@igalia.com> (raw)
Here's a new version of the extended I/O accounting patches.
This one is rebased on top of the current master, has a few minor
documentation fixes and drops the 'supports_stats' field completely.
Regards,
Berto
v3:
- Rebased on top of the current master and on Max's BlockBackend
series v7
- patch 4: minor documentation fixes
- patch 5: s/miliseconds/nanoseconds/
- patch 6: dropped, there's no "supports_stats" anymore
- patch 7 (now 6): explain why block_acct_invalid() does not update
total_time_ns[]
- patch 12 (now 11): don't initialize BlockAcctCookie to { 0 }, it's
not needed
v2: https://lists.gnu.org/archive/html/qemu-block/2015-10/msg00161.html
- First complete implementation of the new statistics
v1: https://lists.gnu.org/archive/html/qemu-devel/2015-06/msg03321.html
- Initial series containing only the timed average infrastructure.
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
block/accounting.c | 123 ++++++++++++++-
block/block-backend.c | 1 +
block/qapi.c | 51 +++++++
blockdev.c | 53 +++++++
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/qemu/timed-average.h | 64 ++++++++
qapi/block-core.json | 103 ++++++++++++-
qemu-io-cmds.c | 9 ++
qmp-commands.hx | 80 +++++++++-
tests/Makefile | 4 +
tests/qemu-iotests/136 | 349 +++++++++++++++++++++++++++++++++++++++++++
tests/qemu-iotests/136.out | 5 +
tests/qemu-iotests/group | 1 +
tests/test-timed-average.c | 90 +++++++++++
util/Makefile.objs | 1 +
util/timed-average.c | 227 ++++++++++++++++++++++++++++
24 files changed, 1288 insertions(+), 48 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-timed-average.c
create mode 100644 util/timed-average.c
--
2.6.1
next reply other threads:[~2015-10-22 8:12 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-22 8:11 Alberto Garcia [this message]
2015-10-22 8:11 ` [Qemu-devel] [PATCH v3 01/21] xen_disk: Account for flush operations Alberto Garcia
2015-10-22 8:11 ` [Qemu-devel] [PATCH v3 02/21] ide: Account for write operations correctly Alberto Garcia
2015-10-22 8:11 ` [Qemu-devel] [PATCH v3 03/21] block: define 'clock_type' for the accounting code Alberto Garcia
2015-10-22 8:11 ` [Qemu-devel] [PATCH v3 04/21] util: Infrastructure for computing recent averages Alberto Garcia
2015-10-22 8:11 ` [Qemu-devel] [PATCH v3 05/21] block: Add idle_time_ns to BlockDeviceStats Alberto Garcia
2015-10-22 8:11 ` [Qemu-devel] [PATCH v3 06/21] block: Add statistics for failed and invalid I/O operations Alberto Garcia
2015-10-22 8:11 ` [Qemu-devel] [PATCH v3 07/21] block: Allow configuring whether to account failed and invalid ops Alberto Garcia
2015-10-22 8:11 ` [Qemu-devel] [PATCH v3 08/21] block: Compute minimum, maximum and average I/O latencies Alberto Garcia
2015-10-23 13:23 ` Stefan Hajnoczi
2015-10-22 8:11 ` [Qemu-devel] [PATCH v3 09/21] block: Add average I/O queue depth to BlockDeviceTimedStats Alberto Garcia
2015-10-23 13:31 ` Stefan Hajnoczi
2015-10-23 13:47 ` Alberto Garcia
2015-10-22 8:11 ` [Qemu-devel] [PATCH v3 10/21] block: New option to define the intervals for collecting I/O statistics Alberto Garcia
2015-10-22 8:11 ` [Qemu-devel] [PATCH v3 11/21] qemu-io: Account for failed, invalid and flush operations Alberto Garcia
2015-10-22 8:11 ` [Qemu-devel] [PATCH v3 12/21] block: Use QEMU_CLOCK_VIRTUAL for the accounting code in qtest mode Alberto Garcia
2015-10-22 8:11 ` [Qemu-devel] [PATCH v3 13/21] iotests: Add test for the block device statistics Alberto Garcia
2015-10-22 8:11 ` [Qemu-devel] [PATCH v3 14/21] nvme: Account for failed and invalid operations Alberto Garcia
2015-10-22 8:11 ` [Qemu-devel] [PATCH v3 15/21] virtio-blk: " Alberto Garcia
2015-10-22 8:11 ` [Qemu-devel] [PATCH v3 16/21] xen_disk: " Alberto Garcia
2015-10-22 8:11 ` [Qemu-devel] [PATCH v3 17/21] atapi: " Alberto Garcia
2015-10-22 8:11 ` [Qemu-devel] [PATCH v3 18/21] ide: " Alberto Garcia
2015-10-22 8:11 ` [Qemu-devel] [PATCH v3 19/21] macio: Account for failed operations Alberto Garcia
2015-10-22 8:11 ` [Qemu-devel] [PATCH v3 20/21] scsi-disk: " Alberto Garcia
2015-10-22 8:11 ` [Qemu-devel] [PATCH v3 21/21] block: Update copyright of the accounting code Alberto Garcia
2015-10-23 14:00 ` [Qemu-devel] [PATCH v3 00/21] Extended I/O accounting Stefan Hajnoczi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cover.1445500464.git.berto@igalia.com \
--to=berto@igalia.com \
--cc=armbru@redhat.com \
--cc=kwolf@redhat.com \
--cc=mreitz@redhat.com \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).