[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-commits] [qemu/qemu] dc71ce: blockjob: Add block_job_yield()
From: |
GitHub |
Subject: |
[Qemu-commits] [qemu/qemu] dc71ce: blockjob: Add block_job_yield() |
Date: |
Sun, 29 Jun 2014 08:30:05 -0700 |
Branch: refs/heads/master
Home: https://github.com/qemu/qemu
Commit: dc71ce45ded4e872e25c2de32d5e7a71842b0985
https://github.com/qemu/qemu/commit/dc71ce45ded4e872e25c2de32d5e7a71842b0985
Author: Fam Zheng <address@hidden>
Date: 2014-06-26 (Thu, 26 Jun 2014)
Changed paths:
M blockjob.c
M include/block/blockjob.h
Log Message:
-----------
blockjob: Add block_job_yield()
This will unset busy flag and put coroutine to sleep, can be used to
wait for QMP complete/cancel.
Signed-off-by: Fam Zheng <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: 9e48b025400b2d284e17860862b0a4aa02c6032d
https://github.com/qemu/qemu/commit/9e48b025400b2d284e17860862b0a4aa02c6032d
Author: Fam Zheng <address@hidden>
Date: 2014-06-26 (Thu, 26 Jun 2014)
Changed paths:
M block/mirror.c
Log Message:
-----------
mirror: Go through ready -> complete process for 0 len image
When mirroring or active committing a zero length image, BLOCK_JOB_READY
is not reported now, instead the job completes because we short circuit
the mirror job loop.
This is inconsistent with non-zero length images, and only confuses
management software.
Let's do the same thing when seeing a 0-length image: report ready
immediately; wait for block-job-cancel or block-job-complete; clear the
cancel flag as existing non-zero image synced case (cancelled after
ready); then jump to the exit.
Reported-by: Eric Blake <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: 8b9a30ca5bc10545637429486836f3c206c39fab
https://github.com/qemu/qemu/commit/8b9a30ca5bc10545637429486836f3c206c39fab
Author: Fam Zheng <address@hidden>
Date: 2014-06-26 (Thu, 26 Jun 2014)
Changed paths:
M tests/qemu-iotests/040
M tests/qemu-iotests/040.out
Log Message:
-----------
qemu-iotests: Test BLOCK_JOB_READY event for 0Kb image active commit
There should be a BLOCK_JOB_READY event with active commit, regardless
of image length. Let's test the 0 length image case, and make sure it
goes through the ready->complete process.
Signed-off-by: Fam Zheng <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: 3b9f27d2b34cb8c5cc6cec993712c7e1943e9de9
https://github.com/qemu/qemu/commit/3b9f27d2b34cb8c5cc6cec993712c7e1943e9de9
Author: Fam Zheng <address@hidden>
Date: 2014-06-26 (Thu, 26 Jun 2014)
Changed paths:
M tests/qemu-iotests/041
M tests/qemu-iotests/041.out
Log Message:
-----------
qemu-iotests: Test 0-length image for mirror
All behavior and invariant should hold for images with 0 length, so
add a class to repeat all the tests in TestSingleDrive.
Hide two unapplicable test methods that would fail with 0 image length
because it's also used as cluster size.
Signed-off-by: Fam Zheng <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: 7c24384b3b984f0256ba10eb26d877ec28985019
https://github.com/qemu/qemu/commit/7c24384b3b984f0256ba10eb26d877ec28985019
Author: Peter Lieven <address@hidden>
Date: 2014-06-26 (Thu, 26 Jun 2014)
Changed paths:
M block/nfs.c
Log Message:
-----------
block/nfs: fix url parameter checking
this patch fixes the incorrect usage of strncmp and
adds simple error checking by means of parse_uint_full
instead of atoi for the supplied URL parameters.
Signed-off-by: Peter Lieven <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: f42ca3cad10f74777481c201722b598763e1771c
https://github.com/qemu/qemu/commit/f42ca3cad10f74777481c201722b598763e1771c
Author: Peter Lieven <address@hidden>
Date: 2014-06-26 (Thu, 26 Jun 2014)
Changed paths:
M block/nfs.c
Log Message:
-----------
block/nfs: add knob to set readahead
upcoming libnfs will feature internal readahead support.
Add a knob to pass the optional readahead value as a URL
parameter.
Signed-off-by: Peter Lieven <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: f54120ff1aa030d96ee64aefef9898e9e80b3a71
https://github.com/qemu/qemu/commit/f54120ff1aa030d96ee64aefef9898e9e80b3a71
Author: Kevin Wolf <address@hidden>
Date: 2014-06-26 (Thu, 26 Jun 2014)
Changed paths:
M block.c
Log Message:
-----------
block: Create bdrv_fill_options()
The idea of bdrv_fill_options() is to convert every parameter for
opening images, in particular the filename and flags, to entries in the
options QDict.
This patch starts with moving the filename parsing and driver probing
part from bdrv_file_open() to the new function.
Signed-off-by: Kevin Wolf <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Commit: 462f5bcf69d3cae4a93ad55bee59516c15236a55
https://github.com/qemu/qemu/commit/462f5bcf69d3cae4a93ad55bee59516c15236a55
Author: Kevin Wolf <address@hidden>
Date: 2014-06-26 (Thu, 26 Jun 2014)
Changed paths:
M block.c
Log Message:
-----------
block: Move bdrv_fill_options() call to bdrv_open()
bs->options now contains the modified version of the options.
Signed-off-by: Kevin Wolf <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Commit: 5e5c4f63f4a7f48f571ea5671bf8452fe9655cdd
https://github.com/qemu/qemu/commit/5e5c4f63f4a7f48f571ea5671bf8452fe9655cdd
Author: Kevin Wolf <address@hidden>
Date: 2014-06-26 (Thu, 26 Jun 2014)
Changed paths:
M block.c
Log Message:
-----------
block: Move json: parsing to bdrv_fill_options()
Signed-off-by: Kevin Wolf <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Commit: 17b005f1d422d4581f8ce95b75d603deb081f4f3
https://github.com/qemu/qemu/commit/17b005f1d422d4581f8ce95b75d603deb081f4f3
Author: Kevin Wolf <address@hidden>
Date: 2014-06-26 (Thu, 26 Jun 2014)
Changed paths:
M block.c
M tests/qemu-iotests/051
M tests/qemu-iotests/051.out
Log Message:
-----------
block: Always pass driver name through options QDict
The "driver" entry in the options QDict is now only missing if we're
opening an image with format probing.
We also catch cases now where both the drv argument and a "driver"
option is specified, e.g. by specifying -drive format=qcow2,driver=raw
Signed-off-by: Kevin Wolf <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Commit: f4788adcb4903e20dadc5455d3d69d0a481f35e4
https://github.com/qemu/qemu/commit/f4788adcb4903e20dadc5455d3d69d0a481f35e4
Author: Kevin Wolf <address@hidden>
Date: 2014-06-26 (Thu, 26 Jun 2014)
Changed paths:
M block.c
Log Message:
-----------
block: Use common driver selection code for bdrv_open_file()
This moves the bdrv_open_file() call a bit down so that it can use the
bdrv_open() code that selects the right block driver.
The code between the old and the new call site is either common code
(the error message for an unknown driver has been unified now) or
doesn't run with cleared BDRV_O_PROTOCOL (added an if block in one
place, whereas the right path was already asserted in another place)
Signed-off-by: Kevin Wolf <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Benoit Canet <address@hidden>
Commit: b348f3311c1c54ab4abfd7958176ce5ec6407543
https://github.com/qemu/qemu/commit/b348f3311c1c54ab4abfd7958176ce5ec6407543
Author: Kevin Wolf <address@hidden>
Date: 2014-06-26 (Thu, 26 Jun 2014)
Changed paths:
M block.c
Log Message:
-----------
block: Inline bdrv_file_open()
It doesn't do much any more, we can move the code to bdrv_open() now.
Signed-off-by: Kevin Wolf <address@hidden>
Reviewed-by: Benoit Canet <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Commit: 76c591b013782217cad67b35c74cd249e0413439
https://github.com/qemu/qemu/commit/76c591b013782217cad67b35c74cd249e0413439
Author: Kevin Wolf <address@hidden>
Date: 2014-06-26 (Thu, 26 Jun 2014)
Changed paths:
M block.c
Log Message:
-----------
block: Remove second bdrv_open() recursion
This recursion was introduced in commit 505d7583 in order to allow
nesting image formats. It only ever takes effect when the user
explicitly specifies a driver name and that driver isn't suitable for
the protocol level.
We can check this earlier in bdrv_open() and if the explicitly
requested driver is a format driver, clear BDRV_O_PROTOCOL so that
another bs->file layer is opened.
Signed-off-by: Kevin Wolf <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Commit: 8ee79e707a005c9274df7ce34265bb7d008b8cef
https://github.com/qemu/qemu/commit/8ee79e707a005c9274df7ce34265bb7d008b8cef
Author: Kevin Wolf <address@hidden>
Date: 2014-06-26 (Thu, 26 Jun 2014)
Changed paths:
M block.c
M block/cow.c
M block/qcow.c
M block/qcow2.c
M block/qed.c
M block/vmdk.c
M include/block/block_int.h
M tests/qemu-iotests/051
M tests/qemu-iotests/051.out
Log Message:
-----------
block: Catch backing files assigned to non-COW drivers
Since we parse backing.* options to add a backing file from the command
line when the driver didn't assign one, it has been possible to have a
backing file for e.g. raw images (it just was never accessed).
This is obvious nonsense and should be rejected.
Signed-off-by: Kevin Wolf <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Commit: 20cca275c6190ca0027cf7dd369ba985e44a6537
https://github.com/qemu/qemu/commit/20cca275c6190ca0027cf7dd369ba985e44a6537
Author: Kevin Wolf <address@hidden>
Date: 2014-06-26 (Thu, 26 Jun 2014)
Changed paths:
M block.c
Log Message:
-----------
block: Remove a special case for protocols
The only semantic change is that bs->open_flags gets BDRV_O_PROTOCOL set
now. This isn't useful, but it doesn't hurt either. The code that was
previously skipped by 'goto done' is automatically disabled because
protocol drivers don't support backing files (and if they did, this
would probably be a fix) and can't have snapshot_flags set.
Signed-off-by: Kevin Wolf <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Commit: a760715095e9cda6eb97486c040aa35f82297945
https://github.com/qemu/qemu/commit/a760715095e9cda6eb97486c040aa35f82297945
Author: Michal Privoznik <address@hidden>
Date: 2014-06-26 (Thu, 26 Jun 2014)
Changed paths:
M util/qemu-option.c
Log Message:
-----------
qemu_opts_append: Play nicely with QemuOptsList's head
When running a libvirt test suite I've noticed the qemu-img is
crashing occasionally. Tracing the problem down led me to the
following valgrind output:
qemu.git $ valgrind -q ./qemu-img create -f qed
-obacking_file=/dev/null,backing_fmt=raw qed
==14881== Invalid write of size 8
==14881== at 0x1D263F: qemu_opts_create (qemu-option.c:692)
==14881== by 0x130782: bdrv_img_create (block.c:5531)
==14881== by 0x118DE0: img_create (qemu-img.c:462)
==14881== by 0x11E7E4: main (qemu-img.c:2830)
==14881== Address 0x11fedd38 is 24 bytes inside a block of size 232 free'd
==14881== at 0x4C2CA5E: realloc (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==14881== by 0x592D35E: g_realloc (in /usr/lib64/libglib-2.0.so.0.3800.2)
==14881== by 0x1D38D8: qemu_opts_append (qemu-option.c:1129)
==14881== by 0x13075E: bdrv_img_create (block.c:5528)
==14881== by 0x118DE0: img_create (qemu-img.c:462)
==14881== by 0x11E7E4: main (qemu-img.c:2830)
==14881==
Formatting 'qed', fmt=qed size=0 backing_file='/dev/null' backing_fmt='raw'
cluster_size=65536
==14881== Invalid write of size 8
==14881== at 0x1D28BE: qemu_opts_del (qemu-option.c:750)
==14881== by 0x130BF3: bdrv_img_create (block.c:5638)
==14881== by 0x118DE0: img_create (qemu-img.c:462)
==14881== by 0x11E7E4: main (qemu-img.c:2830)
==14881== Address 0x11fedd38 is 24 bytes inside a block of size 232 free'd
==14881== at 0x4C2CA5E: realloc (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==14881== by 0x592D35E: g_realloc (in /usr/lib64/libglib-2.0.so.0.3800.2)
==14881== by 0x1D38D8: qemu_opts_append (qemu-option.c:1129)
==14881== by 0x13075E: bdrv_img_create (block.c:5528)
==14881== by 0x118DE0: img_create (qemu-img.c:462)
==14881== by 0x11E7E4: main (qemu-img.c:2830)
==14881==
The problem is apparently in the qemu_opts_append(). Well, if it
gets called twice or more. On the first call, when @dst is NULL
some initialization is done during which @dst->head list gets
initialized. The list is initialized in a way, so that the list
tail points at the list head. However, the next time
qemu_opts_append() is called for new options to be added,
g_realloc() may move @dst to a new address making the old list tail
point at an invalid address. If that's the case, we must update the
list pointers.
Signed-off-by: Michal Privoznik <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: 9c75e168bc388094c04aabb6fc59c91abe06e81c
https://github.com/qemu/qemu/commit/9c75e168bc388094c04aabb6fc59c91abe06e81c
Author: Jeff Cody <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
M block.c
M blockdev.c
Log Message:
-----------
block: check for RESIZE blocker in the QMP command, not bdrv_truncate()
If we check for the RESIZE blocker in bdrv_truncate(), that means a
commit will fail if the overlay layer is larger than the base, due to
the backing blocker.
This is a regression in behavior from 2.0; currently, commit will try to
grow the size of the base image to match the overlay size, if the
overlay size is larger.
By moving this into the QMP command qmp_block_resize(), it allows
usage of bdrv_truncate() within block jobs.
Signed-off-by: Jeff Cody <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: d1fde4ad3c22137f8e589e625c21bf2ea7f6ba62
https://github.com/qemu/qemu/commit/d1fde4ad3c22137f8e589e625c21bf2ea7f6ba62
Author: Jeff Cody <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
A tests/qemu-iotests/095
A tests/qemu-iotests/095.out
M tests/qemu-iotests/group
Log Message:
-----------
block: add qemu-iotest for resize base during live commit
If 'base' is smaller than the overlay image being committed into it,
then the base image will be grown in commit_run via bdrv_truncate().
This tests to make sure that this works, and the bdrv_truncate() is
not blocked when it shouldn't be.
Signed-off-by: Jeff Cody <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: cf29a570a7aa7abab66bf256fdf9540873590811
https://github.com/qemu/qemu/commit/cf29a570a7aa7abab66bf256fdf9540873590811
Author: Benoît Canet <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
M block/quorum.c
M qapi/block-core.json
M tests/qemu-iotests/081
M tests/qemu-iotests/081.out
Log Message:
-----------
quorum: Add the rewrite-corrupted parameter to quorum
On read operations when this parameter is set and some replicas are corrupted
while quorum can be reached quorum will proceed to rewrite the correct version
of the data to fix the corrupted replicas.
This will shine with SSD where the FTL will remap the same block at another
place on rewrite.
Signed-off-by: Benoit Canet <address@hidden>
Reviewed-by: Max Reitz <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: 4c828dc61a0d729ae9bfa6fdee55558314135737
https://github.com/qemu/qemu/commit/4c828dc61a0d729ae9bfa6fdee55558314135737
Author: Benoît Canet <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
M blockdev.c
M hmp.c
M qapi/block-core.json
M qmp-commands.hx
Log Message:
-----------
block: Add node-name argument to drive-mirror
This new argument can be used to specify the node-name of the new mirrored BDS.
Signed-off-by: Benoit Canet <address@hidden>
Reviewed-by: Max Reitz <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: 09f645877037590415016b59f6d32be1a27229c6
https://github.com/qemu/qemu/commit/09f645877037590415016b59f6d32be1a27229c6
Author: Fam Zheng <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
M hw/block/virtio-blk.c
M include/hw/virtio/virtio-blk.h
Log Message:
-----------
virtio-blk: Move VirtIOBlockReq to header
For later reusing by dataplane code.
Signed-off-by: Fam Zheng <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: 671ec3f056559f22a2531a91dce3a258b9b5eb8a
https://github.com/qemu/qemu/commit/671ec3f056559f22a2531a91dce3a258b9b5eb8a
Author: Fam Zheng <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
M hw/block/virtio-blk.c
M include/hw/virtio/virtio-blk.h
Log Message:
-----------
virtio-blk: Convert VirtIOBlockReq.elem to pointer
This will make converging with dataplane code easier.
Add virtio_blk_free_request to handle the freeing of request internal
fields.
Signed-off-by: Fam Zheng <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: 0bcb34472db7b9b007415151a1f7a3d495b31f28
https://github.com/qemu/qemu/commit/0bcb34472db7b9b007415151a1f7a3d495b31f28
Author: Fam Zheng <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
M hw/block/dataplane/virtio-blk.c
Log Message:
-----------
virtio-blk: Drop bounce buffer from dataplane code
The block layer will handle the unaligned request.
Signed-off-by: Fam Zheng <address@hidden>
Reviewed-by: Paolo Bonzini <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: 98e2d49241cb474a9fdd26852cbdbbcf67f18d54
https://github.com/qemu/qemu/commit/98e2d49241cb474a9fdd26852cbdbbcf67f18d54
Author: Fam Zheng <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
M hw/block/dataplane/virtio-blk.c
Log Message:
-----------
virtio-blk: Drop VirtIOBlockRequest.read
Since it's set but not used.
Signed-off-by: Fam Zheng <address@hidden>
Reviewed-by: Paolo Bonzini <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: 04af2d70c58136be57d798ad684e1924dcde93f5
https://github.com/qemu/qemu/commit/04af2d70c58136be57d798ad684e1924dcde93f5
Author: Fam Zheng <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
M hw/block/dataplane/virtio-blk.c
M include/hw/virtio/virtio-blk.h
Log Message:
-----------
virtio-blk: Replace VirtIOBlockRequest with VirtIOBlockReq
Field "inhdr" is added temporarily for a more mechanical change, and
will be dropped in the next commit.
Signed-off-by: Fam Zheng <address@hidden>
Reviewed-by: Paolo Bonzini <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: eddb102e86f61d4b71877f8ac268ebc4bf7265bf
https://github.com/qemu/qemu/commit/eddb102e86f61d4b71877f8ac268ebc4bf7265bf
Author: Fam Zheng <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
M hw/block/dataplane/virtio-blk.c
M include/hw/virtio/virtio-blk.h
Log Message:
-----------
virtio-blk: Use VirtIOBlockReq.in to drop VirtIOBlockReq.inhdr
In current virtio spec, inhdr is a single byte, and is unlikely to
change for both functionality and compatibility considerations.
Non-dataplane uses .in, and we are on the way to converge them. So
let's unify it to get cleaner code.
Remove .inhdr and use .in.
Signed-off-by: Fam Zheng <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: 827805a2492c1bbf1c0712ed18ee069b4ebf3dd6
https://github.com/qemu/qemu/commit/827805a2492c1bbf1c0712ed18ee069b4ebf3dd6
Author: Fam Zheng <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
M hw/block/virtio-blk.c
M include/hw/virtio/virtio-blk.h
Log Message:
-----------
virtio-blk: Convert VirtIOBlockReq.out to structrue
The virtio code currently assumes that the outhdr is in its own iovec.
This is not guaranteed by the spec, so we should relax this assumption.
Convert the VirtIOBlockReq.out field to structrue so that we can use
iov_to_buf and then discard the header from the beginning of iovec.
Suggested-by: Paolo Bonzini <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>
Reviewed-by: Paolo Bonzini <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: ab2e3cd2dc97ad87fcdfb814a13b2ef386a5f13a
https://github.com/qemu/qemu/commit/ab2e3cd2dc97ad87fcdfb814a13b2ef386a5f13a
Author: Fam Zheng <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
M hw/block/dataplane/virtio-blk.c
Log Message:
-----------
virtio-blk: Fill in VirtIOBlockReq.out in dataplane code
VirtIOBlockReq is allocated in process_request, and freed in command
functions.
Signed-off-by: Fam Zheng <address@hidden>
Reviewed-by: Paolo Bonzini <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: ee17e84830e2e7030d57db5b415719e9022573cd
https://github.com/qemu/qemu/commit/ee17e84830e2e7030d57db5b415719e9022573cd
Author: Fam Zheng <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
M hw/block/virtio-blk.c
Log Message:
-----------
virtio-blk: Fix and clean up the in_sg and out_sg check
out_sg is checked by iov_to_buf below, so it can be dropped.
Add assert and iov_discard_back around in_sg, as the in_sg is handled in
dataplane code.
Signed-off-by: Fam Zheng <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: ac46821f2c6eb0617ac911daff111cbc30a4c40c
https://github.com/qemu/qemu/commit/ac46821f2c6eb0617ac911daff111cbc30a4c40c
Author: Stefan Hajnoczi <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
M block/qapi.c
M include/block/qapi.h
Log Message:
-----------
block: make bdrv_query_stats() static
This function is only called from block/qapi.c. There is no need to
keep it public.
Signed-off-by: Stefan Hajnoczi <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>
Tested-by: Paolo Bonzini <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: 13344f3a17e0a785c0eb8e36f69518f21aa8a91a
https://github.com/qemu/qemu/commit/13344f3a17e0a785c0eb8e36f69518f21aa8a91a
Author: Stefan Hajnoczi <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
M block/qapi.c
Log Message:
-----------
block: acquire AioContext in qmp_query_blockstats()
Make query-blockstats safe for dataplane by acquiring the
BlockDriverState's AioContext. This ensures that the dataplane IOThread
and the main loop's monitor code do not race.
Note the assumption that acquiring the drive's BDS AioContext also
protects ->file and ->backing_hd. This assumption is made by other
aio_context_acquire() callers too.
Signed-off-by: Stefan Hajnoczi <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>
Tested-by: Paolo Bonzini <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: bf4bd461b43d90c5af30f61f740c1bb675849ab9
https://github.com/qemu/qemu/commit/bf4bd461b43d90c5af30f61f740c1bb675849ab9
Author: Fam Zheng <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
M hw/block/virtio-blk.c
M include/hw/virtio/virtio-blk.h
Log Message:
-----------
virtio-blk: Make request completion function virtual
virtio_blk_req_complete will call VirtIOBlock.complete_request() to push
data and notify guest. No functional change.
Later, this will allow dataplane to provide it's own (vring_) version.
Signed-off-by: Fam Zheng <address@hidden>
Tested-by: Paolo Bonzini <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: fee65db77181e6697745b313906bc4fdb30d2ff9
https://github.com/qemu/qemu/commit/fee65db77181e6697745b313906bc4fdb30d2ff9
Author: Fam Zheng <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
M hw/block/virtio-blk.c
M include/hw/virtio/virtio-blk.h
Log Message:
-----------
virtio-blk: Export request handling functions to dataplane
So that dataplane can use virtio_blk_handle_request and
virtio_submit_multiwrite.
Signed-off-by: Fam Zheng <address@hidden>
Tested-by: Paolo Bonzini <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: 4407c1c56adb0d3ef2bcbf577592d72278d6e11f
https://github.com/qemu/qemu/commit/4407c1c56adb0d3ef2bcbf577592d72278d6e11f
Author: Fam Zheng <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
M hw/block/virtio-blk.c
Log Message:
-----------
virtio-blk: Schedule BH in the right context
The BH must be called in the AioContext of bs. Currently it is only the
main loop, but with coming changes, it could also be a dataplane
IOThread.
Signed-off-by: Fam Zheng <address@hidden>
Tested-by: Paolo Bonzini <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: b002254dbd4c19a01f29790f840f983803e26893
https://github.com/qemu/qemu/commit/b002254dbd4c19a01f29790f840f983803e26893
Author: Fam Zheng <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
M hw/block/dataplane/virtio-blk.c
Log Message:
-----------
virtio-blk: Unify {non-,}dataplane's request handlings
This drops request handling code from dataplane, and uses code from
hw/block/virtio-blk.c.
It starts to use multiwrite as non-dataplane does.
Dataplane sets VirtIOBlock.complete_request to vring version, and calls
into non-dataplane's process handling. In complete_request_early,
qiov.size is added to vring push length, because it's also called in rw
completion now.
Signed-off-by: Fam Zheng <address@hidden>
Tested-by: Paolo Bonzini <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: d64c60a75fde0fc40f7c97acbc972dea59db0162
https://github.com/qemu/qemu/commit/d64c60a75fde0fc40f7c97acbc972dea59db0162
Author: Fam Zheng <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
M hw/block/dataplane/virtio-blk.c
Log Message:
-----------
virtio-blk: Rename complete_request_early to complete_request_vring
The old name is misleading in its new usage, so rename it.
Signed-off-by: Fam Zheng <address@hidden>
Tested-by: Paolo Bonzini <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: 518848a214ff67bbaea087552a709afde4f88fa5
https://github.com/qemu/qemu/commit/518848a214ff67bbaea087552a709afde4f88fa5
Author: Markus Armbruster <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
M blockjob.c
M qapi/block-core.json
Log Message:
-----------
blockjob: Fix recent BLOCK_JOB_READY regression
Commit bcada37 dropped the (up to now undocumented) members type, len,
offset, speed, breaking tests/qemu-iotests/040 and 041.
Restore and document them. This fixes 040, and partially fixes 041.
Signed-off-by: Markus Armbruster <address@hidden>
Tested-By: Benoit Canet <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: 823c686356e6758bacb46d3a316b841536d6d707
https://github.com/qemu/qemu/commit/823c686356e6758bacb46d3a316b841536d6d707
Author: Markus Armbruster <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
M blockjob.c
M qapi/block-core.json
Log Message:
-----------
blockjob: Fix recent BLOCK_JOB_ERROR regression
Commit 5a2d2cb screwed up the the value of members device and action,
breaking tests/qemu-iotests/041.
Signed-off-by: Markus Armbruster <address@hidden>
Tested-By: Benoit Canet <address@hidden>
Reviewed-by: Kevin Wolf <address@hidden>
Reviewed-by: Luiz Capitulino <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: 09158f00e0fdb506dcbf36f67c615b7f6c604c5a
https://github.com/qemu/qemu/commit/09158f00e0fdb506dcbf36f67c615b7f6c604c5a
Author: Benoît Canet <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
M block.c
M block/mirror.c
M blockdev.c
M hmp.c
M include/block/block.h
M include/block/block_int.h
M qapi/block-core.json
M qmp-commands.hx
Log Message:
-----------
block: Add replaces argument to drive-mirror
drive-mirror will bdrv_swap the new BDS named node-name with the one
pointed by replaces when the mirroring is finished.
Signed-off-by: Benoit Canet <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: d88964aeda6cfc44585fe35c97c37537235c0a96
https://github.com/qemu/qemu/commit/d88964aeda6cfc44585fe35c97c37537235c0a96
Author: Benoît Canet <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
M tests/qemu-iotests/041
M tests/qemu-iotests/041.out
Log Message:
-----------
qemu-iotests: Add TestRepairQuorum to 041 to test drive-mirror node-name mode.
The to-replace-node-name is designed to allow repairing a broken Quorum file.
This patch introduces a new class TestRepairQuorum testing that the feature
works.
Some further work will be done on QEMU to improve the robustness of the tests.
Signed-off-by: Benoit Canet <address@hidden>
Reviewed-by: Max Reitz <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: 6b8aeca574a15668c47296d8e0c4f96c72e63c36
https://github.com/qemu/qemu/commit/6b8aeca574a15668c47296d8e0c4f96c72e63c36
Author: Chen Gang <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
M block.c
M include/block/block.h
Log Message:
-----------
block.c: Don't return success for bdrv_append_temp_snapshot() failure
When failure occurs, 'ret' need be set, or may return 0 to indicate
success. Previously, an error was set in errp, but 0 was returned
anyway. So let bdrv_append_temp_snapshot() return an error code and
use that for the bdrv_open() return value.
Also, error_propagate() need be called only one time within a function.
Signed-off-by: Chen Gang <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: e8f8624d3b920de968c56e76691f419b16d1ee4a
https://github.com/qemu/qemu/commit/e8f8624d3b920de968c56e76691f419b16d1ee4a
Author: Max Reitz <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
M tests/qemu-iotests/check
M tests/qemu-iotests/common
M tests/qemu-iotests/common.config
M tests/qemu-iotests/common.rc
M tests/qemu-iotests/iotests.py
Log Message:
-----------
iotests: Allow out-of-tree run
As out-of-tree builds are preferred for qemu, running the qemu-iotests
in that out-of-tree build should be supported as well. To do so, a
symbolic link has to be created pointing to the check script in the
source directory. That script will check whether it has been run through
a symlink, and if so, will assume it is run in the build tree. All
output and temporary operations performed by iotests are then redirected
here and, unless specified otherwise by the user, QEMU_PROG etc. will be
set to paths appropriate for the build tree.
Also, drop making every test case executable if it is not yet, as this
would modify the source tree which is not desired for out-of-tree runs
and should be fixed in the repository anyway.
Signed-off-by: Max Reitz <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: 76c7560ae7ad088d106ef05439ca6520b096d43e
https://github.com/qemu/qemu/commit/76c7560ae7ad088d106ef05439ca6520b096d43e
Author: Max Reitz <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
M configure
Log Message:
-----------
configure: Enable out-of-tree iotests
In order to allow out-of-tree iotests, create a symlink for the check
script in the build tree.
While doing so, also write configured options relevant to the iotests to
common.env in the build tree; currently, this is the command to invoke
Python 2.
Signed-off-by: Max Reitz <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: 7fed1a49ff72a5b794e3723612fa1731844b38f7
https://github.com/qemu/qemu/commit/7fed1a49ff72a5b794e3723612fa1731844b38f7
Author: Max Reitz <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
M tests/qemu-iotests/check
Log Message:
-----------
iotests: Source common.env
Source common.env in the iotests' check script.
Signed-off-by: Max Reitz <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: ea81ca9de1354e9f42c4e09ead2af1b4d010bdde
https://github.com/qemu/qemu/commit/ea81ca9de1354e9f42c4e09ead2af1b4d010bdde
Author: Max Reitz <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
M tests/qemu-iotests/031
M tests/qemu-iotests/036
M tests/qemu-iotests/039
M tests/qemu-iotests/054
M tests/qemu-iotests/060
M tests/qemu-iotests/061
M tests/qemu-iotests/083
M tests/qemu-iotests/check
Log Message:
-----------
iotests: Use $PYTHON for Python scripts
Instead of invoking Python scripts directly via ./, use $PYTHON to
obtain the correct Python interpreter command.
Signed-off-by: Max Reitz <address@hidden>
Reviewed-by: Fam Zheng <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: f99b4b5d7e53e85552892cdf6c7d2c3c86d409f8
https://github.com/qemu/qemu/commit/f99b4b5d7e53e85552892cdf6c7d2c3c86d409f8
Author: Max Reitz <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
M tests/qemu-iotests/065
Log Message:
-----------
iotests: Drop Python version from 065's Shebang
Test 065 specified python2 to be used in its Shebang; this might not
work on systems without a python2 symlink and furthermore it is now
counter-productive, as the check script compares the Shebang to
"#!/usr/bin/env python" and only uses the Python interpreter selected by
configure on an exact match.
Signed-off-by: Max Reitz <address@hidden>
Reviewed-by: Fam Zheng <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: f5264553c381c5f305d6e11bef18da6a29f3f423
https://github.com/qemu/qemu/commit/f5264553c381c5f305d6e11bef18da6a29f3f423
Author: Max Reitz <address@hidden>
Date: 2014-06-27 (Fri, 27 Jun 2014)
Changed paths:
M tests/qemu-iotests/083
Log Message:
-----------
iotests: Fix 083 for out-of-tree builds
iotest 083 filters out debug messages from nbd, which are prefixed (and
recognized) by __FILE__. However, the current filter (/^nbd\.c…/) is
valid for in-tree builds only, as out-of-tree builds will have a path
before that filename (e.g. "/tmp/qemu/nbd.c"). Fix this by adding .*
before "nbd\.c".
While working on this, also fix the regexes: '.' should be escaped and a
single backslash is not enough for escaping when enclosed by double
quotes.
Signed-off-by: Max Reitz <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
Commit: 2d40fa6987e26a4273ca8c57487e8bd61f409cc4
https://github.com/qemu/qemu/commit/2d40fa6987e26a4273ca8c57487e8bd61f409cc4
Author: Peter Maydell <address@hidden>
Date: 2014-06-29 (Sun, 29 Jun 2014)
Changed paths:
M block.c
M block/cow.c
M block/mirror.c
M block/nfs.c
M block/qapi.c
M block/qcow.c
M block/qcow2.c
M block/qed.c
M block/quorum.c
M block/vmdk.c
M blockdev.c
M blockjob.c
M configure
M hmp.c
M hw/block/dataplane/virtio-blk.c
M hw/block/virtio-blk.c
M include/block/block.h
M include/block/block_int.h
M include/block/blockjob.h
M include/block/qapi.h
M include/hw/virtio/virtio-blk.h
M qapi/block-core.json
M qmp-commands.hx
M tests/qemu-iotests/031
M tests/qemu-iotests/036
M tests/qemu-iotests/039
M tests/qemu-iotests/040
M tests/qemu-iotests/040.out
M tests/qemu-iotests/041
M tests/qemu-iotests/041.out
M tests/qemu-iotests/051
M tests/qemu-iotests/051.out
M tests/qemu-iotests/054
M tests/qemu-iotests/060
M tests/qemu-iotests/061
M tests/qemu-iotests/065
M tests/qemu-iotests/081
M tests/qemu-iotests/081.out
M tests/qemu-iotests/083
A tests/qemu-iotests/095
A tests/qemu-iotests/095.out
M tests/qemu-iotests/check
M tests/qemu-iotests/common
M tests/qemu-iotests/common.config
M tests/qemu-iotests/common.rc
M tests/qemu-iotests/group
M tests/qemu-iotests/iotests.py
M util/qemu-option.c
Log Message:
-----------
Merge remote-tracking branch 'remotes/kevin/tags/for-upstream' into staging
Block patches for 2.1.0-rc0
# gpg: Signature made Fri 27 Jun 2014 19:50:32 BST using RSA key ID C88F2FD6
# gpg: Good signature from "Kevin Wolf <address@hidden>"
* remotes/kevin/tags/for-upstream: (47 commits)
iotests: Fix 083 for out-of-tree builds
iotests: Drop Python version from 065's Shebang
iotests: Use $PYTHON for Python scripts
iotests: Source common.env
configure: Enable out-of-tree iotests
iotests: Allow out-of-tree run
block.c: Don't return success for bdrv_append_temp_snapshot() failure
qemu-iotests: Add TestRepairQuorum to 041 to test drive-mirror node-name mode.
block: Add replaces argument to drive-mirror
blockjob: Fix recent BLOCK_JOB_ERROR regression
blockjob: Fix recent BLOCK_JOB_READY regression
virtio-blk: Rename complete_request_early to complete_request_vring
virtio-blk: Unify {non-,}dataplane's request handlings
virtio-blk: Schedule BH in the right context
virtio-blk: Export request handling functions to dataplane
virtio-blk: Make request completion function virtual
block: acquire AioContext in qmp_query_blockstats()
block: make bdrv_query_stats() static
virtio-blk: Fix and clean up the in_sg and out_sg check
virtio-blk: Fill in VirtIOBlockReq.out in dataplane code
...
Signed-off-by: Peter Maydell <address@hidden>
Compare: https://github.com/qemu/qemu/compare/ac8076ac8638...2d40fa6987e2
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Qemu-commits] [qemu/qemu] dc71ce: blockjob: Add block_job_yield(),
GitHub <=