* Re: [Qemu-devel] [PULL 00/42] Block patches
[not found] ` <CAFEAcA9cKPNKs_eR638eEqbAVW9sLxwHdnKVb-P-6hXJ3Kwyig@mail.gmail.com>
@ 2018-10-01 13:03 ` Peter Maydell
2018-10-01 14:14 ` Kevin Wolf
0 siblings, 1 reply; 9+ messages in thread
From: Peter Maydell @ 2018-10-01 13:03 UTC (permalink / raw)
To: Max Reitz; +Cc: Qemu-block, QEMU Developers, Kevin Wolf
On 28 September 2018 at 15:36, Peter Maydell <peter.maydell@linaro.org> wrote:
> I'm finding that test-bdrv-drain hangs intermittently on my OSX host.
Ping? Between this and test-replication I'm finding that my
parallel build tests for merges are failing about 50% of the
time :-(
If there's no immediate sign of a fix, could we disable these
tests?
thanks
-- PMM
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [Qemu-devel] [PULL 00/42] Block patches
2018-10-01 13:03 ` [Qemu-devel] [PULL 00/42] Block patches Peter Maydell
@ 2018-10-01 14:14 ` Kevin Wolf
2018-10-01 16:09 ` [Qemu-devel] [Qemu-block] " Kevin Wolf
0 siblings, 1 reply; 9+ messages in thread
From: Kevin Wolf @ 2018-10-01 14:14 UTC (permalink / raw)
To: Peter Maydell; +Cc: Max Reitz, Qemu-block, QEMU Developers
Am 01.10.2018 um 15:03 hat Peter Maydell geschrieben:
> On 28 September 2018 at 15:36, Peter Maydell <peter.maydell@linaro.org> wrote:
> > I'm finding that test-bdrv-drain hangs intermittently on my OSX host.
>
> Ping? Between this and test-replication I'm finding that my
> parallel build tests for merges are failing about 50% of the
> time :-(
Sorry, there wasn't much more than a weekend between your report and
now.
For the replication one, I think we can just take the AioContext lock in
the test case while we decide how the API should really be used. I'll
prepare a fix for that (and hopefully I'll be able to reproduce the
problem reliably enough to verify the fix).
Max said he could reproduce some hang in test-bdrv-drain (though we
don't know if this has anything to do with your OS X hang, which looked
rather odd) and would look into it, but I don't think we know the
problem yet. I'll try to reproduce that one after fixing the replication
test.
> If there's no immediate sign of a fix, could we disable these tests?
I hope we don't have to, though it depends on your definition of
immediate. :-)
Kevin
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [Qemu-devel] [Qemu-block] [PULL 00/42] Block patches
2018-10-01 14:14 ` Kevin Wolf
@ 2018-10-01 16:09 ` Kevin Wolf
0 siblings, 0 replies; 9+ messages in thread
From: Kevin Wolf @ 2018-10-01 16:09 UTC (permalink / raw)
To: Peter Maydell; +Cc: QEMU Developers, Qemu-block, Max Reitz, pbonzini
Am 01.10.2018 um 16:14 hat Kevin Wolf geschrieben:
> Am 01.10.2018 um 15:03 hat Peter Maydell geschrieben:
> > On 28 September 2018 at 15:36, Peter Maydell <peter.maydell@linaro.org> wrote:
> > > I'm finding that test-bdrv-drain hangs intermittently on my OSX host.
> >
> > Ping? Between this and test-replication I'm finding that my
> > parallel build tests for merges are failing about 50% of the
> > time :-(
>
> Sorry, there wasn't much more than a weekend between your report and
> now.
>
> For the replication one, I think we can just take the AioContext lock in
> the test case while we decide how the API should really be used. I'll
> prepare a fix for that (and hopefully I'll be able to reproduce the
> problem reliably enough to verify the fix).
>
> Max said he could reproduce some hang in test-bdrv-drain (though we
> don't know if this has anything to do with your OS X hang, which looked
> rather odd) and would look into it, but I don't think we know the
> problem yet. I'll try to reproduce that one after fixing the replication
> test.
So I sent two patches for the two test cases that should fix the bugs
that made the tests fail relatively frequently. I can still reproduce
another hang, which is a bit mysterious to me:
Thread 2 (Thread 3321.3818):
#0 0x00007f2ebbdcc4e9 in syscall () from /lib64/libc.so.6
#1 0x00005594d095690b in qemu_futex_wait (val=<optimized out>, f=<optimized out>) at /home/kwolf/source/qemu/include/qemu/futex.h:29
#2 qemu_event_wait (ev=ev@entry=0x5594d0bff228 <rcu_call_ready_event>) at util/qemu-thread-posix.c:442
#3 0x00005594d0965f58 in call_rcu_thread (opaque=<optimized out>) at util/rcu.c:261
#4 0x00007f2ebc09d36d in start_thread () from /lib64/libpthread.so.0
#5 0x00007f2ebbdd1b4f in clone () from /lib64/libc.so.6
Thread 1 (Thread 3321.3321):
#0 0x00007f2ebc09e89d in pthread_join () from /lib64/libpthread.so.0
#1 0x00005594d0956b6f in qemu_thread_join (thread=thread@entry=0x5594d16bd0b8) at util/qemu-thread-posix.c:565
#2 0x00005594d091f4d9 in iothread_join (iothread=0x5594d16bd0b0) at tests/iothread.c:62
#3 0x00005594d08806cc in test_iothread_common (drain_type=BDRV_DRAIN_ALL, drain_thread=<optimized out>) at tests/test-bdrv-drain.c:763
#4 0x00007f2ebd58e178 in g_test_run_suite_internal () from /lib64/libglib-2.0.so.0
#5 0x00007f2ebd58e37b in g_test_run_suite_internal () from /lib64/libglib-2.0.so.0
#6 0x00007f2ebd58e37b in g_test_run_suite_internal () from /lib64/libglib-2.0.so.0
#7 0x00007f2ebd58e51b in g_test_run_suite () from /lib64/libglib-2.0.so.0
#8 0x00007f2ebd58e571 in g_test_run () from /lib64/libglib-2.0.so.0
#9 0x00005594d087a534 in main (argc=<optimized out>, argv=<optimized out>) at tests/test-bdrv-drain.c:1606
This pthread_join() is waiting for a thread that doesn't even exist any
more. I caught the bug in rr and am clearly seeing how the iothread is
notified and terminates. But pthread_join() just doesn't return.
Kevin
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Qemu-devel] [PULL 00/42] Block patches
@ 2015-02-06 16:40 Kevin Wolf
0 siblings, 0 replies; 9+ messages in thread
From: Kevin Wolf @ 2015-02-06 16:40 UTC (permalink / raw)
To: qemu-devel; +Cc: kwolf
The following changes since commit cebbae86b4f7ee3d3dd9df906b97d269e70d9cc7:
Merge remote-tracking branch 'remotes/stefanha/tags/net-pull-request' into staging (2015-02-06 14:35:52 +0000)
are available in the git repository at:
git://repo.or.cz/qemu/kevin.git tags/for-upstream
for you to fetch changes up to 8c44dfbc62a50a8bc4113f199b8662861f757591:
qcow2: Rewrite qcow2_alloc_bytes() (2015-02-06 17:24:22 +0100)
----------------------------------------------------------------
Block patches for 2.3
----------------------------------------------------------------
Alberto Garcia (1):
block: Give always priority to unused entries in the qcow2 L2 cache
Denis V. Lunev (7):
block/raw-posix: create translate_err helper to merge errno values
block/raw-posix: create do_fallocate helper
block/raw-posix: refactor handle_aiocb_write_zeroes a bit
block: use fallocate(FALLOC_FL_ZERO_RANGE) in handle_aiocb_write_zeroes
block/raw-posix: call plain fallocate in handle_aiocb_write_zeroes
block: use fallocate(FALLOC_FL_PUNCH_HOLE) & fallocate(0) to write zeroes
nbd: fix max_discard/max_transfer_length
Don Slutz (1):
qemu-img: Add QEMU_PKGVERSION to QEMU_IMG_VERSION
Dr. David Alan Gilbert (2):
Restore atapi_dma flag across migration
atapi migration: Throw recoverable error to avoid recovery
Fam Zheng (2):
qed: Really remove unused field QEDAIOCB.finished
qemu-iotests: Fix supported_oses check
Francesco Romani (1):
block: add event when disk usage exceeds threshold
Jeff Cody (1):
block: fix off-by-one error in qcow and qcow2
Max Reitz (6):
iotests: Specify format for qemu-nbd
iotests: Fix 083
iotests: Fix 100 for nbd
iotests: Fix 104 for NBD
nbd: Improve error messages
qcow2: Rewrite qcow2_alloc_bytes()
Peter Lieven (7):
block: change default for discard and write zeroes to INT_MAX
block: add accounting for merged requests
hw/virtio-blk: add a constant for max number of merged requests
block-backend: expose bs->bl.max_transfer_length
virtio-blk: introduce multiread
virtio-blk: add a knob to disable request merging
block: introduce BDRV_REQUEST_MAX_SECTORS
Peter Wu (12):
block/dmg: properly detect the UDIF trailer
block/dmg: extract mish block decoding functionality
block/dmg: extract processing of resource forks
block/dmg: process a buffer instead of reading ints
block/dmg: validate chunk size to avoid overflow
block/dmg: process XML plists
block/dmg: set virtual size to a non-zero value
block/dmg: fix sector data offset calculation
block/dmg: use SectorNumber from BLKX header
block/dmg: factor out block type check
block/dmg: support bzip2 block entry types
block/dmg: improve zeroes handling
Stefan Hajnoczi (2):
qed: check for header size overflow
qemu-iotests: add 116 invalid QED input file tests
block.c | 35 +--
block/Makefile.objs | 2 +
block/accounting.c | 7 +
block/block-backend.c | 5 +
block/dmg.c | 502 ++++++++++++++++++++++++++++++---------
block/nbd-client.c | 4 +-
block/nbd-client.h | 2 +-
block/nbd.c | 11 +-
block/qapi.c | 5 +
block/qcow.c | 2 +-
block/qcow2-cache.c | 4 +-
block/qcow2-refcount.c | 78 +++---
block/qcow2.c | 2 +-
block/qed.c | 5 +
block/qed.h | 1 -
block/raw-posix.c | 125 +++++++---
block/write-threshold.c | 125 ++++++++++
configure | 50 ++++
hmp.c | 6 +-
hw/block/dataplane/virtio-blk.c | 8 +-
hw/block/virtio-blk.c | 299 +++++++++++++++--------
hw/ide/atapi.c | 17 ++
hw/ide/core.c | 1 +
hw/ide/internal.h | 2 +
hw/ide/pci.c | 11 +
include/block/accounting.h | 3 +
include/block/block.h | 3 +
include/block/block_int.h | 4 +
include/block/nbd.h | 2 +-
include/block/write-threshold.h | 64 +++++
include/hw/virtio/virtio-blk.h | 18 +-
include/sysemu/block-backend.h | 1 +
nbd.c | 42 ++--
qapi/block-core.json | 60 ++++-
qemu-img.c | 2 +-
qemu-nbd.c | 7 +-
qmp-commands.hx | 54 ++++-
tests/Makefile | 3 +
tests/qemu-iotests/067.out | 5 +
tests/qemu-iotests/083 | 3 +-
tests/qemu-iotests/083.out | 81 +++----
tests/qemu-iotests/100 | 12 +
tests/qemu-iotests/104 | 9 +-
tests/qemu-iotests/116 | 96 ++++++++
tests/qemu-iotests/116.out | 37 +++
tests/qemu-iotests/common.filter | 1 +
tests/qemu-iotests/common.rc | 2 +-
tests/qemu-iotests/group | 1 +
tests/qemu-iotests/iotests.py | 2 +-
tests/test-write-threshold.c | 119 ++++++++++
trace-events | 1 +
51 files changed, 1531 insertions(+), 410 deletions(-)
create mode 100644 block/write-threshold.c
create mode 100644 include/block/write-threshold.h
create mode 100755 tests/qemu-iotests/116
create mode 100644 tests/qemu-iotests/116.out
create mode 100644 tests/test-write-threshold.c
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [Qemu-devel] [PULL 00/42] Block patches
2014-06-06 16:13 Stefan Hajnoczi
@ 2014-06-09 12:04 ` Peter Maydell
0 siblings, 0 replies; 9+ messages in thread
From: Peter Maydell @ 2014-06-09 12:04 UTC (permalink / raw)
To: Stefan Hajnoczi; +Cc: QEMU Developers
On 6 June 2014 17:13, Stefan Hajnoczi <stefanha@redhat.com> wrote:
> The following changes since commit e00fcfeab3d452cba3d0a08991a39ab15df66424:
>
> Merge remote-tracking branch 'remotes/awilliam/tags/vfio-pci-for-qemu-20140602.0' into staging (2014-06-03 14:37:43 +0100)
>
> are available in the git repository at:
>
>
> git://github.com/stefanha/qemu.git tags/block-pull-request
>
> for you to fetch changes up to 2e95fa17196aa12e7e522925ad420000162153d0:
>
> qapi: Extract qapi/block.json definitions (2014-06-06 16:25:48 +0200)
>
> ----------------------------------------------------------------
> Block pull request
>
Applied, thanks.
-- PMM
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Qemu-devel] [PULL 00/42] Block patches
@ 2014-06-06 16:13 Stefan Hajnoczi
2014-06-09 12:04 ` Peter Maydell
0 siblings, 1 reply; 9+ messages in thread
From: Stefan Hajnoczi @ 2014-06-06 16:13 UTC (permalink / raw)
To: qemu-devel; +Cc: Peter Maydell, Stefan Hajnoczi
The following changes since commit e00fcfeab3d452cba3d0a08991a39ab15df66424:
Merge remote-tracking branch 'remotes/awilliam/tags/vfio-pci-for-qemu-20140602.0' into staging (2014-06-03 14:37:43 +0100)
are available in the git repository at:
git://github.com/stefanha/qemu.git tags/block-pull-request
for you to fetch changes up to 2e95fa17196aa12e7e522925ad420000162153d0:
qapi: Extract qapi/block.json definitions (2014-06-06 16:25:48 +0200)
----------------------------------------------------------------
Block pull request
----------------------------------------------------------------
Benoît Canet (4):
qapi: Extract qapi/common.json definitions
qapi: create two block related json modules
qapi: Extract qapi/block-core.json definitions
qapi: Extract qapi/block.json definitions
Fam Zheng (4):
block: Move declaration of bdrv_get_aio_context to block.h
virtio-blk: Allow config-wce in dataplane
virtio-blk: Factor out virtio_blk_handle_scsi_req from virtio_blk_handle_scsi
dataplane: Support VIRTIO_BLK_T_SCSI_CMD
Hitoshi Mitake (2):
sheepdog: fix vdi object update after live snapshot
sheepdog: reload only header in a case of live snapshot
Kevin Wolf (1):
rbd: Fix leaks in rbd_start_aio() error path
Max Reitz (1):
qemu-img: Document check exit codes
Stefan Hajnoczi (29):
aio: fix qemu_bh_schedule() bh->ctx race condition
block: use BlockDriverState AioContext
block: acquire AioContext in bdrv_*_all()
block: acquire AioContext in bdrv_drain_all()
block: add bdrv_set_aio_context()
blkdebug: use BlockDriverState's AioContext
blkverify: implement .bdrv_detach/attach_aio_context()
curl: implement .bdrv_detach/attach_aio_context()
gluster: use BlockDriverState's AioContext
iscsi: implement .bdrv_detach/attach_aio_context()
nbd: implement .bdrv_detach/attach_aio_context()
nfs: implement .bdrv_detach/attach_aio_context()
qed: use BlockDriverState's AioContext
quorum: implement .bdrv_detach/attach_aio_context()
block/raw-posix: implement .bdrv_detach/attach_aio_context()
block/linux-aio: fix memory and fd leak
block/raw-win32: create one QEMUWin32AIOState per BDRVRawState
block/raw-win32: implement .bdrv_detach/attach_aio_context()
rbd: use BlockDriverState's AioContext
sheepdog: implement .bdrv_detach/attach_aio_context()
ssh: use BlockDriverState's AioContext
vmdk: implement .bdrv_detach/attach_aio_context()
dataplane: use the QEMU block layer for I/O
dataplane: delete IOQueue since it is no longer used
dataplane: implement async flush
raw-posix: drop raw_get_aio_fd() since it is no longer used
throttle: add throttle_detach/attach_aio_context()
throttle: add detach/attach test case
blockdev: acquire AioContext in block_set_io_throttle
chai wen (1):
block: fix wrong order in live block migration setup
async.c | 14 +-
block-migration.c | 3 +-
block.c | 140 +++-
block/blkdebug.c | 2 +-
block/blkverify.c | 47 +-
block/curl.c | 192 +++--
block/gluster.c | 7 +-
block/iscsi.c | 80 +-
block/linux-aio.c | 24 +-
block/nbd-client.c | 24 +-
block/nbd-client.h | 4 +
block/nbd.c | 87 +-
block/nfs.c | 81 +-
block/qed-table.c | 8 +-
block/qed.c | 35 +-
block/quorum.c | 48 +-
block/raw-aio.h | 8 +
block/raw-posix.c | 82 +-
block/raw-win32.c | 54 +-
block/rbd.c | 10 +-
block/sheepdog.c | 167 ++--
block/ssh.c | 36 +-
block/vmdk.c | 23 +
block/win32-aio.c | 27 +-
blockdev.c | 6 +
hw/block/dataplane/Makefile.objs | 2 +-
hw/block/dataplane/ioq.c | 117 ---
hw/block/dataplane/ioq.h | 57 --
hw/block/dataplane/virtio-blk.c | 256 +++---
hw/block/virtio-blk.c | 83 +-
include/block/block.h | 27 +-
include/block/block_int.h | 35 +-
include/hw/virtio/virtio-blk.h | 3 +
include/qemu/throttle.h | 10 +
qapi-schema.json | 1667 +-------------------------------------
qapi/block-core.json | 1412 ++++++++++++++++++++++++++++++++
qapi/block.json | 166 ++++
qapi/common.json | 89 ++
qemu-img.c | 9 +-
qemu-img.texi | 23 +
tests/test-throttle.c | 49 +-
util/throttle.c | 27 +-
42 files changed, 2833 insertions(+), 2408 deletions(-)
delete mode 100644 hw/block/dataplane/ioq.c
delete mode 100644 hw/block/dataplane/ioq.h
create mode 100644 qapi/block-core.json
create mode 100644 qapi/block.json
create mode 100644 qapi/common.json
--
1.9.3
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Qemu-devel] [PULL 00/42] Block patches
@ 2014-01-15 10:22 Kevin Wolf
0 siblings, 0 replies; 9+ messages in thread
From: Kevin Wolf @ 2014-01-15 10:22 UTC (permalink / raw)
To: anthony; +Cc: kwolf, qemu-devel
The following changes since commit 1cf892ca2689c84960b4ce4d2723b6bee453711c:
SPARC: Fix LEON3 power down instruction (2014-01-15 15:37:33 +1000)
are available in the git repository at:
git://repo.or.cz/qemu/kevin.git tags/for-anthony
for you to fetch changes up to 01dfcc17541a97e2662b6ce403ff8b06a8ec4280:
block: fix backing file segfault (2014-01-15 11:02:51 +0100)
----------------------------------------------------------------
Block patches
----------------------------------------------------------------
Bharata B Rao (3):
gluster: Convert aio routines into coroutines
gluster: Implement .bdrv_co_write_zeroes for gluster
gluster: Add support for creating zero-filled image
Fam Zheng (4):
qemu-iotests: Introduce _unsupported_imgopts
qemu-iotests: Add _unsupported_imgopts for vmdk subformats
qemu-iotests: Clean up all extents for vmdk
vmdk: Fix big flat extent IO
Kewei Yu (1):
qtest: Fix the bug about disable vnc causes "make check" fail
Liu Yuan (1):
sheepdog: fix clone operation by 'qemu-img create -b'
Max Reitz (24):
blkdebug: Use errp for read_config()
blkdebug: Don't require sophisticated filename
qdict: Add qdict_array_split()
qapi: extend qdict_flatten() for QLists
qemu-option: Add qemu_config_parse_qdict()
blkdebug: Always call read_config()
blkdebug: Use command-line in read_config()
block: Allow reference for bdrv_file_open()
block: Pass reference to bdrv_file_open()
block: Allow block devices without files
block: Add bdrv_open_image()
block: Use bdrv_open_image() in bdrv_open()
block: Allow recursive "file"s
blockdev: Move "file" to legacy_opts
blkdebug: Allow command-line file configuration
blkverify: Allow command-line configuration
blkverify: Don't require protocol filename
qapi: Add "errno" to the list of polluted words
qapi: QMP interface for blkdebug and blkverify
qemu-io: Make filename optional
tests: Add test for qdict_array_split()
tests: Add test for qdict_flatten()
iotests: Test new blkdebug/blkverify interface
iotests: Test file format nesting
Peter Feiner (1):
block: fix backing file segfault
Peter Lieven (1):
block/iscsi: return -ENOMEM if an async call fails immediately
Stefan Hajnoczi (7):
rbd: switch from pipe to QEMUBH completion notification
docs: qcow2 compat=1.1 is now the default
readline: decouple readline from the monitor
readline: move readline to a generic location
osdep: add qemu_set_tty_echo()
qemu-io: use readline.c
qemu-io: add command completion
Makefile.objs | 1 -
block.c | 128 ++++++++++++--
block/blkdebug.c | 59 ++++---
block/blkverify.c | 29 +---
block/cow.c | 3 +-
block/gluster.c | 318 ++++++++++++++++++-----------------
block/iscsi.c | 12 +-
block/qcow.c | 3 +-
block/qcow2.c | 2 +-
block/qed.c | 4 +-
block/rbd.c | 130 +++-----------
block/sheepdog.c | 20 +--
block/vhdx.c | 2 +-
block/vmdk.c | 12 +-
blockdev.c | 19 ++-
configure | 8 +
hmp.c | 6 +-
include/block/block.h | 6 +-
include/monitor/monitor.h | 2 +-
include/qapi/qmp/qdict.h | 1 +
include/qemu-io.h | 3 +
include/qemu/config-file.h | 6 +
include/qemu/osdep.h | 2 +
include/{monitor => qemu}/readline.h | 20 ++-
monitor.c | 41 ++++-
qapi-schema.json | 113 ++++++++++++-
qemu-doc.texi | 8 +-
qemu-img.texi | 8 +-
qemu-io-cmds.c | 15 ++
qemu-io.c | 119 +++++++------
qobject/qdict.c | 91 +++++++++-
scripts/qapi.py | 2 +-
tests/check-qdict.c | 156 +++++++++++++++++
tests/fdc-test.c | 5 +-
tests/ide-test.c | 3 -
tests/qemu-iotests/017 | 1 +
tests/qemu-iotests/018 | 1 +
tests/qemu-iotests/019 | 3 +
tests/qemu-iotests/020 | 3 +
tests/qemu-iotests/034 | 3 +
tests/qemu-iotests/037 | 3 +
tests/qemu-iotests/051.out | 2 +-
tests/qemu-iotests/059 | 10 ++
tests/qemu-iotests/059.out | 74 ++++++++
tests/qemu-iotests/063 | 3 +
tests/qemu-iotests/069 | 1 +
tests/qemu-iotests/071 | 239 ++++++++++++++++++++++++++
tests/qemu-iotests/071.out | 90 ++++++++++
tests/qemu-iotests/072 | 69 ++++++++
tests/qemu-iotests/072.out | 21 +++
tests/qemu-iotests/common.rc | 28 ++-
tests/qemu-iotests/group | 2 +
util/Makefile.objs | 1 +
util/oslib-posix.c | 18 ++
util/oslib-win32.c | 19 +++
util/qemu-config.c | 100 +++++++++++
readline.c => util/readline.c | 46 ++---
57 files changed, 1617 insertions(+), 477 deletions(-)
rename include/{monitor => qemu}/readline.h (69%)
create mode 100755 tests/qemu-iotests/071
create mode 100644 tests/qemu-iotests/071.out
create mode 100755 tests/qemu-iotests/072
create mode 100644 tests/qemu-iotests/072.out
rename readline.c => util/readline.c (92%)
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Qemu-devel] [PULL 00/42] Block patches
@ 2013-09-06 15:38 Stefan Hajnoczi
0 siblings, 0 replies; 9+ messages in thread
From: Stefan Hajnoczi @ 2013-09-06 15:38 UTC (permalink / raw)
To: qemu-devel; +Cc: Stefan Hajnoczi, Anthony Liguori
A couple of patch series make this pull request large:
* Benoit Canet's new I/O throttling implementation
* Fam Zheng's BlockDriverState refcount
* Paolo Bonzini's get_block_status() and qemu-img map command
The following changes since commit df7131623daf4823e087eb1128f6c1c351519774:
Merge remote-tracking branch 'bonzini/iommu-for-anthony' into staging (2013-09-05 13:38:53 -0500)
are available in the git repository at:
git://github.com/stefanha/qemu.git block
for you to fetch changes up to 8f94b077877151de93a63c73f796897309568ddb:
qemu-iotests: Fixed test case 026 (2013-09-06 15:25:10 +0200)
----------------------------------------------------------------
Alex Bligh (1):
aio / timers: fix build of test/test-aio.c on non-linux platforms
Alexandre Derumier (1):
add qemu-img convert -n option (skip target volume creation)
Benoît Canet (5):
throttle: Add a new throttling API implementing continuous leaky bucket.
throttle: Add units tests
block: Enable the new throttling code in the block layer.
block: Add support for throttling burst max in QMP and the command line.
block: Add iops_size to do the iops accounting for a given io size.
Cornelia Huck (1):
dataplane: Fix startup race.
Fam Zheng (8):
vvfat: use bdrv_new() to allocate BlockDriverState
iscsi: use bdrv_new() instead of stack structure
block: implement reference count for BlockDriverState
block: make bdrv_delete() static
migration: omit drive ref as we have bdrv_ref now
xen_disk: simplify blk_disconnect with refcnt
nbd: use BlockDriverState refcnt
block: use BDS ref for block jobs
Kevin Wolf (2):
qemu-iotests: Whitespace cleanup
qemu-iotests: Fixed test case 026
Max Reitz (2):
qemu-iotests: Adjust test result 039
qmp: Documentation for BLOCK_IMAGE_CORRUPTED
Paolo Bonzini (21):
cow: make reads go at a decent speed
cow: make writes go at a less indecent speed
cow: do not call bdrv_co_is_allocated
block: keep bs->total_sectors up to date even for growable block devices
block: make bdrv_co_is_allocated static
block: do not use ->total_sectors in bdrv_co_is_allocated
block: remove bdrv_is_allocated_above/bdrv_co_is_allocated_above distinction
block: expect errors from bdrv_co_is_allocated
qemu-img: always probe the input image for allocated sectors
block: make bdrv_has_zero_init return false for copy-on-write-images
block: introduce bdrv_get_block_status API
block: define get_block_status return value
block: return get_block_status data and flags for formats
block: use bdrv_has_zero_init to return BDRV_BLOCK_ZERO
block: return BDRV_BLOCK_ZERO past end of backing file
qemu-img: add a "map" subcommand
docs, qapi: document qemu-img map
raw-posix: return get_block_status data and flags
raw-posix: report unwritten extents as zero
block: add default get_block_status implementation for protocols
block: look for zero blocks in bs->file
Stefan Weil (1):
w32: Fix access to host devices (regression)
QMP/qmp-events.txt | 22 ++
block-migration.c | 4 +-
block.c | 556 ++++++++++++++------------------
block/backup.c | 6 +-
block/blkverify.c | 4 +-
block/commit.c | 6 +-
block/cow.c | 93 ++++--
block/iscsi.c | 16 +-
block/mirror.c | 6 +-
block/qapi.c | 50 ++-
block/qcow.c | 15 +-
block/qcow2.c | 26 +-
block/qed.c | 41 ++-
block/raw-posix.c | 24 +-
block/raw-win32.c | 36 ++-
block/raw_bsd.c | 10 +-
block/sheepdog.c | 20 +-
block/snapshot.c | 2 +-
block/stream.c | 12 +-
block/vdi.c | 17 +-
block/vmdk.c | 33 +-
block/vvfat.c | 21 +-
blockdev-nbd.c | 10 +-
blockdev.c | 242 ++++++++------
blockjob.c | 1 +
hmp.c | 36 ++-
hw/block/dataplane/virtio-blk.c | 9 +
hw/block/xen_disk.c | 13 +-
include/block/block.h | 38 ++-
include/block/block_int.h | 35 +--
include/qemu/throttle.h | 110 +++++++
nbd.c | 5 +
qapi-schema.json | 69 +++-
qemu-img-cmds.hx | 10 +-
qemu-img.c | 317 ++++++++++++++++---
qemu-img.texi | 70 ++++-
qemu-io-cmds.c | 4 +
qemu-io.c | 6 +-
qemu-options.hx | 6 +-
qmp-commands.hx | 32 +-
tests/Makefile | 2 +
tests/qemu-iotests/026.out | 28 +-
tests/qemu-iotests/026.out.nocache | 626 +++++++++++++++++++++++++++++++++++++
tests/qemu-iotests/039.out | 4 +-
tests/qemu-iotests/063 | 97 ++++++
tests/qemu-iotests/063.out | 10 +
tests/qemu-iotests/check | 240 +++++++-------
tests/qemu-iotests/common | 422 ++++++++++++-------------
tests/qemu-iotests/common.config | 6 +-
tests/qemu-iotests/common.filter | 42 +--
tests/qemu-iotests/common.pattern | 4 +-
tests/qemu-iotests/common.rc | 92 +++---
tests/qemu-iotests/group | 1 +
tests/test-aio.c | 11 +-
tests/test-throttle.c | 481 ++++++++++++++++++++++++++++
util/Makefile.objs | 1 +
util/throttle.c | 396 +++++++++++++++++++++++
57 files changed, 3407 insertions(+), 1089 deletions(-)
create mode 100644 include/qemu/throttle.h
create mode 100644 tests/qemu-iotests/026.out.nocache
create mode 100755 tests/qemu-iotests/063
create mode 100644 tests/qemu-iotests/063.out
create mode 100644 tests/test-throttle.c
create mode 100644 util/throttle.c
--
1.8.3.1
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Qemu-devel] [PULL 00/42] Block patches
@ 2013-08-22 20:10 Stefan Hajnoczi
0 siblings, 0 replies; 9+ messages in thread
From: Stefan Hajnoczi @ 2013-08-22 20:10 UTC (permalink / raw)
To: qemu-devel; +Cc: Stefan Hajnoczi, Anthony Liguori
I'm away tomorrow and Kevin is also on vacation. So here is the weekly pull
request one day early. We've got plenty of patches sitting in the block queue
:).
The following changes since commit ecfe10c9a6f9bc77d0e4b7eb5d0f5d61e8fbaed8:
Merge remote-tracking branch 'pmaydell/tags/pull-target-arm-20130820' into staging (2013-08-20 11:23:52 -0500)
are available in the git repository at:
git://github.com/stefanha/qemu.git block
for you to fetch changes up to b10577df13fa4a1b38ea6c1ea7b66c6dfd90a07a:
win32-aio: drop win32_aio_flush_cb() (2013-08-22 22:05:04 +0200)
----------------------------------------------------------------
Alex Bligh (32):
aio / timers: Rename qemu_timer_* functions
aio / timers: Rename qemu_new_clock and expose clock types
aio / timers: add qemu-timer.c utility functions
aio / timers: Consistent treatment of disabled clocks for deadlines
aio / timers: add ppoll support with qemu_poll_ns
aio / timers: Add prctl(PR_SET_TIMERSLACK, 1, ...) to reduce timer slack
aio / timers: Make qemu_run_timers and qemu_run_all_timers return progress
aio / timers: Split QEMUClock into QEMUClock and QEMUTimerList
aio / timers: Untangle include files
aio / timers: Add QEMUTimerListGroup and helper functions
aio / timers: Add QEMUTimerListGroup to AioContext
aio / timers: Add a notify callback to QEMUTimerList
aio / timers: aio_ctx_prepare sets timeout from AioContext timers
aio / timers: Add aio_timer_init & aio_timer_new wrappers
aio / timers: Convert aio_poll to use AioContext timers' deadline
aio / timers: Convert mainloop to use timeout
aio / timers: On timer modification, qemu_notify or aio_notify
aio / timers: Introduce new API timer_new and friends
aio / timers: Use all timerlists in icount warp calculations
aio / timers: Add documentation and new format calls
aio / timers: Remove alarm timers
aio / timers: Remove legacy qemu_clock_deadline & qemu_timerlist_deadline
aio / timers: Add qemu_clock_get_ms and qemu_clock_get_ms
aio / timers: Rearrange timer.h & make legacy functions call non-legacy
aio / timers: Remove main_loop_timerlist
aio / timers: Convert rtc_clock to be a QEMUClockType
aio / timers: convert block_job_sleep_ns and co_sleep_ns to new API
aio / timers: Add test harness for AioContext timers
aio / timers: Add scripts/switch-timer-api
aio / timers: Switch entire codebase to the new timer API
aio / timers: Remove legacy interface
aio / timers: remove dummy_io_handler_flush from tests/test-aio.c
Asias He (1):
block: Introduce bs->zero_beyond_eof
Fam Zheng (4):
block: better error message for read only format name
vmdk: Move l1_size check into vmdk_add_extent()
vmdk: fix L1 and L2 table size in vmdk3 open
vmdk: support vmfsSparse files
Kevin Wolf (1):
qcow2: Change default for new images to compat=1.1
MORITA Kazutaka (1):
block: Produce zeros when protocols reading beyond end of file
Paolo Bonzini (1):
vmdk: support vmfs files
Stefan Hajnoczi (2):
aio-win32: replace incorrect AioHandler->opaque usage with ->e
win32-aio: drop win32_aio_flush_cb()
aio-posix.c | 18 +-
aio-win32.c | 24 +-
arch_init.c | 12 +-
async.c | 20 +-
audio/audio.c | 6 +-
audio/noaudio.c | 4 +-
audio/spiceaudio.c | 4 +-
audio/wavaudio.c | 2 +-
backends/baum.c | 16 +-
block.c | 46 ++-
block/backup.c | 4 +-
block/commit.c | 2 +-
block/iscsi.c | 14 +-
block/mirror.c | 10 +-
block/qcow2.c | 5 +-
block/qed.c | 10 +-
block/stream.c | 2 +-
block/vmdk.c | 52 +--
block/win32-aio.c | 10 +-
blockdev.c | 8 +-
blockjob.c | 4 +-
configure | 37 ++
cpus.c | 138 +++++---
dma-helpers.c | 1 +
hmp.c | 8 +-
hw/acpi/core.c | 8 +-
hw/acpi/piix4.c | 2 +-
hw/alpha/typhoon.c | 2 +-
hw/arm/omap1.c | 52 +--
hw/arm/pxa2xx.c | 61 ++--
hw/arm/spitz.c | 6 +-
hw/arm/stellaris.c | 10 +-
hw/arm/strongarm.c | 34 +-
hw/audio/adlib.c | 2 +-
hw/audio/intel-hda.c | 4 +-
hw/audio/sb16.c | 6 +-
hw/block/fdc.c | 6 +-
hw/block/nvme.c | 20 +-
hw/block/pflash_cfi01.c | 2 +-
hw/block/pflash_cfi02.c | 10 +-
hw/bt/hci-csr.c | 4 +-
hw/bt/hci.c | 38 +-
hw/bt/l2cap.c | 8 +-
hw/char/cadence_uart.c | 12 +-
hw/char/serial.c | 22 +-
hw/char/virtio-serial-bus.c | 10 +-
hw/core/ptimer.c | 18 +-
hw/display/qxl-logger.c | 2 +-
hw/display/qxl.c | 2 +-
hw/display/vga.c | 6 +-
hw/dma/pl330.c | 6 +-
hw/dma/rc4030.c | 4 +-
hw/dma/soc_dma.c | 8 +-
hw/dma/xilinx_axidma.c | 1 +
hw/i386/kvm/apic.c | 2 +-
hw/i386/kvm/i8254.c | 6 +-
hw/i386/xen_domainbuild.c | 6 +-
hw/ide/core.c | 6 +-
hw/input/hid.c | 10 +-
hw/input/lm832x.c | 8 +-
hw/input/tsc2005.c | 16 +-
hw/input/tsc210x.c | 32 +-
hw/intc/apic.c | 16 +-
hw/intc/apic_common.c | 2 +-
hw/intc/armv7m_nvic.c | 16 +-
hw/intc/i8259.c | 4 +-
hw/mips/cputimer.c | 16 +-
hw/misc/arm_sysctl.c | 2 +-
hw/misc/macio/cuda.c | 34 +-
hw/misc/macio/macio.c | 4 +-
hw/misc/vfio.c | 14 +-
hw/net/dp8393x.c | 20 +-
hw/net/e1000.c | 12 +-
hw/net/lan9118.c | 4 +-
hw/net/pcnet-pci.c | 4 +-
hw/net/pcnet.c | 10 +-
hw/net/rtl8139.c | 28 +-
hw/net/virtio-net.c | 20 +-
hw/openrisc/cputimer.c | 10 +-
hw/ppc/ppc.c | 64 ++--
hw/ppc/ppc405_uc.c | 8 +-
hw/ppc/ppc_booke.c | 10 +-
hw/ppc/spapr.c | 8 +-
hw/sd/sdhci.c | 28 +-
hw/sparc64/sun4u.c | 24 +-
hw/timer/arm_mptimer.c | 12 +-
hw/timer/arm_timer.c | 1 +
hw/timer/cadence_ttc.c | 6 +-
hw/timer/etraxfs_timer.c | 2 +-
hw/timer/exynos4210_mct.c | 3 +-
hw/timer/exynos4210_pwm.c | 1 +
hw/timer/grlib_gptimer.c | 2 +
hw/timer/hpet.c | 20 +-
hw/timer/i8254.c | 26 +-
hw/timer/i8254_common.c | 4 +-
hw/timer/imx_epit.c | 1 +
hw/timer/imx_gpt.c | 1 +
hw/timer/lm32_timer.c | 1 +
hw/timer/m48t59.c | 18 +-
hw/timer/mc146818rtc.c | 50 +--
hw/timer/omap_gptimer.c | 24 +-
hw/timer/omap_synctimer.c | 2 +-
hw/timer/pl031.c | 19 +-
hw/timer/puv3_ost.c | 1 +
hw/timer/pxa2xx_timer.c | 34 +-
hw/timer/sh_timer.c | 1 +
hw/timer/slavio_timer.c | 1 +
hw/timer/tusb6010.c | 12 +-
hw/timer/twl92230.c | 14 +-
hw/timer/xilinx_timer.c | 1 +
hw/tpm/tpm_tis.c | 1 +
hw/usb/hcd-ehci.c | 10 +-
hw/usb/hcd-musb.c | 6 +-
hw/usb/hcd-ohci.c | 12 +-
hw/usb/hcd-uhci.c | 15 +-
hw/usb/hcd-xhci.c | 26 +-
hw/usb/host-libusb.c | 6 +-
hw/usb/host-linux.c | 6 +-
hw/usb/redirect.c | 16 +-
hw/virtio/virtio-balloon.c | 8 +-
hw/virtio/virtio-rng.c | 14 +-
hw/watchdog/wdt_i6300esb.c | 6 +-
hw/watchdog/wdt_ib700.c | 10 +-
hw/xtensa/pic_cpu.c | 10 +-
include/block/aio.h | 52 ++-
include/block/block_int.h | 4 +
include/block/blockjob.h | 2 +-
include/block/coroutine.h | 3 +-
include/hw/acpi/acpi.h | 2 +-
include/qemu/ratelimit.h | 2 +-
include/qemu/timer.h | 676 ++++++++++++++++++++++++++++++++---
include/qemu/typedefs.h | 3 +
include/sysemu/sysemu.h | 2 +-
main-loop.c | 57 ++-
migration-exec.c | 1 +
migration-fd.c | 1 +
migration-tcp.c | 1 +
migration-unix.c | 1 +
migration.c | 17 +-
monitor.c | 8 +-
nbd.c | 1 +
net/dump.c | 2 +-
net/net.c | 1 +
net/socket.c | 1 +
qemu-char.c | 2 +-
qemu-coroutine-io.c | 1 +
qemu-coroutine-sleep.c | 10 +-
qemu-io-cmds.c | 1 +
qemu-nbd.c | 1 +
qemu-timer.c | 834 +++++++++++++++-----------------------------
qtest.c | 10 +-
savevm.c | 24 +-
scripts/switch-timer-api | 178 ++++++++++
slirp/if.c | 2 +-
slirp/misc.c | 1 +
slirp/slirp.c | 4 +-
stubs/clock-warp.c | 2 +-
target-alpha/sys_helper.c | 12 +-
target-arm/cpu.c | 4 +-
target-arm/helper.c | 10 +-
target-ppc/kvm.c | 8 +-
target-ppc/kvm_ppc.c | 6 +-
target-s390x/cpu.c | 4 +-
target-s390x/misc_helper.c | 6 +-
target-xtensa/op_helper.c | 2 +-
tests/libqtest.h | 24 +-
tests/test-aio.c | 132 +++++++
tests/test-thread-pool.c | 3 +
thread-pool.c | 1 +
ui/console.c | 30 +-
ui/input.c | 6 +-
ui/spice-core.c | 10 +-
ui/vnc-auth-sasl.h | 1 +
ui/vnc-auth-vencrypt.c | 2 +-
ui/vnc-ws.c | 1 +
vl.c | 14 +-
xen-all.c | 12 +-
177 files changed, 2362 insertions(+), 1503 deletions(-)
create mode 100755 scripts/switch-timer-api
--
1.8.3.1
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2018-10-01 16:09 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <20180925151541.18932-1-mreitz@redhat.com>
[not found] ` <CAFEAcA-3bf02knEbNgq5ouFVnJDL6a9HqAvCo3Z4vaWYu-8yUw@mail.gmail.com>
[not found] ` <CAFEAcA9cKPNKs_eR638eEqbAVW9sLxwHdnKVb-P-6hXJ3Kwyig@mail.gmail.com>
2018-10-01 13:03 ` [Qemu-devel] [PULL 00/42] Block patches Peter Maydell
2018-10-01 14:14 ` Kevin Wolf
2018-10-01 16:09 ` [Qemu-devel] [Qemu-block] " Kevin Wolf
2015-02-06 16:40 [Qemu-devel] " Kevin Wolf
-- strict thread matches above, loose matches on Subject: below --
2014-06-06 16:13 Stefan Hajnoczi
2014-06-09 12:04 ` Peter Maydell
2014-01-15 10:22 Kevin Wolf
2013-09-06 15:38 Stefan Hajnoczi
2013-08-22 20:10 Stefan Hajnoczi
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.