All of lore.kernel.org
 help / color / mirror / Atom feed
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

             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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.