[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-commits] [qemu/qemu] a8c574: qcow2: call CoQueue APIs under CoMute
From: |
GitHub |
Subject: |
[Qemu-commits] [qemu/qemu] a8c574: qcow2: call CoQueue APIs under CoMutex |
Date: |
Mon, 17 Jul 2017 04:52:08 -0700 |
Branch: refs/heads/master
Home: https://github.com/qemu/qemu
Commit: a8c57408cd5443186c5b1c7a393702b316d4722b
https://github.com/qemu/qemu/commit/a8c57408cd5443186c5b1c7a393702b316d4722b
Author: Paolo Bonzini <address@hidden>
Date: 2017-07-17 (Mon, 17 Jul 2017)
Changed paths:
M block/qcow2.c
Log Message:
-----------
qcow2: call CoQueue APIs under CoMutex
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Reviewed-by: Fam Zheng <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>
Commit: 667221c10d05a22573dae1928880bca525f8cd20
https://github.com/qemu/qemu/commit/667221c10d05a22573dae1928880bca525f8cd20
Author: Paolo Bonzini <address@hidden>
Date: 2017-07-17 (Mon, 17 Jul 2017)
Changed paths:
M include/qemu/coroutine.h
M util/qemu-coroutine-lock.c
Log Message:
-----------
coroutine-lock: add qemu_co_rwlock_downgrade and qemu_co_rwlock_upgrade
These functions are more efficient in the presence of contention.
qemu_co_rwlock_downgrade also guarantees not to block, which may
be useful in some algorithms too.
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Reviewed-by: Fam Zheng <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>
Commit: 1e886639791762e89b51aa0507f523c6a1448831
https://github.com/qemu/qemu/commit/1e886639791762e89b51aa0507f523c6a1448831
Author: Paolo Bonzini <address@hidden>
Date: 2017-07-17 (Mon, 17 Jul 2017)
Changed paths:
M block/vdi.c
Log Message:
-----------
vdi: make it thread-safe
The VirtualBox driver is using a mutex to order all allocating writes,
but it is not protecting accesses to the bitmap because they implicitly
happen under the AioContext mutex. Change this to use a CoRwlock
explicitly.
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Reviewed-by: Fam Zheng <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>
Commit: 778b087e513ea6fdc525c5a194ff7c9b8d3f53cb
https://github.com/qemu/qemu/commit/778b087e513ea6fdc525c5a194ff7c9b8d3f53cb
Author: Paolo Bonzini <address@hidden>
Date: 2017-07-17 (Mon, 17 Jul 2017)
Changed paths:
M block/vpc.c
Log Message:
-----------
vpc: make it thread-safe
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Reviewed-by: Fam Zheng <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>
Commit: 254aee4dbbec1b8ab0de23c435e927d1501bae34
https://github.com/qemu/qemu/commit/254aee4dbbec1b8ab0de23c435e927d1501bae34
Author: Paolo Bonzini <address@hidden>
Date: 2017-07-17 (Mon, 17 Jul 2017)
Changed paths:
M block/vvfat.c
Log Message:
-----------
vvfat: make it thread-safe
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Reviewed-by: Fam Zheng <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>
Commit: e7569c18292e1e17004d88a4543e2dfcdb2f6d90
https://github.com/qemu/qemu/commit/e7569c18292e1e17004d88a4543e2dfcdb2f6d90
Author: Paolo Bonzini <address@hidden>
Date: 2017-07-17 (Mon, 17 Jul 2017)
Changed paths:
M block/qed.c
Log Message:
-----------
qed: move tail of qed_aio_write_main to qed_aio_write_{cow, alloc}
This part is never called for in-place writes, move it away to avoid
the "backwards" coding style typical of callback-based code.
Reviewed-by: Stefan Hajnoczi <address@hidden>
Reviewed-by: Fam Zheng <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>
Commit: 61124f03ab7e71d269417aafddbc2501d0379bc6
https://github.com/qemu/qemu/commit/61124f03ab7e71d269417aafddbc2501d0379bc6
Author: Paolo Bonzini <address@hidden>
Date: 2017-07-17 (Mon, 17 Jul 2017)
Changed paths:
M block/io.c
M block/qed.c
M include/block/block_int.h
Log Message:
-----------
block: invoke .bdrv_drain callback in coroutine context and from AioContext
This will let the callback take a CoMutex in the next patch.
Reviewed-by: Stefan Hajnoczi <address@hidden>
Reviewed-by: Fam Zheng <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>
Commit: 61c7887e0f3dcfa9c4ccdfe43374243a4a5c0e8d
https://github.com/qemu/qemu/commit/61c7887e0f3dcfa9c4ccdfe43374243a4a5c0e8d
Author: Paolo Bonzini <address@hidden>
Date: 2017-07-17 (Mon, 17 Jul 2017)
Changed paths:
M block/qed.c
Log Message:
-----------
qed: introduce bdrv_qed_init_state
This will be used in the next patch, which will call bdrv_qed_do_open
with a CoMutex taken. bdrv_qed_init_state provides a nice place to
initialize it.
Signed-off-by: Paolo Bonzini <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Reviewed-by: Fam Zheng <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>
Commit: 1f01e50b8330c24714ddca5841fdbb703076b121
https://github.com/qemu/qemu/commit/1f01e50b8330c24714ddca5841fdbb703076b121
Author: Paolo Bonzini <address@hidden>
Date: 2017-07-17 (Mon, 17 Jul 2017)
Changed paths:
M block/qed-cluster.c
M block/qed-l2-cache.c
M block/qed-table.c
M block/qed.c
M block/qed.h
Log Message:
-----------
qed: protect table cache with CoMutex
This makes the driver thread-safe. The CoMutex is dropped temporarily
while accessing the data clusters or the backing file.
Signed-off-by: Paolo Bonzini <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Reviewed-by: Fam Zheng <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>
Commit: f1af3251f885f3b8adf73ba078500f2eeefbedae
https://github.com/qemu/qemu/commit/f1af3251f885f3b8adf73ba078500f2eeefbedae
Author: Paolo Bonzini <address@hidden>
Date: 2017-07-17 (Mon, 17 Jul 2017)
Changed paths:
M block/sheepdog.c
Log Message:
-----------
sheepdog: add queue_lock
Reviewed-by: Stefan Hajnoczi <address@hidden>
Reviewed-by: Fam Zheng <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>
Commit: 5aca18a4ff7950ac9f57cafd62476a626d713452
https://github.com/qemu/qemu/commit/5aca18a4ff7950ac9f57cafd62476a626d713452
Author: Paolo Bonzini <address@hidden>
Date: 2017-07-17 (Mon, 17 Jul 2017)
Changed paths:
M block/ssh.c
Log Message:
-----------
ssh: support I/O from any AioContext
The coroutine may run in a different AioContext, causing the
fd handler to busy wait. Fix this by resetting the handler
in restart_coroutine, before the coroutine is restarted.
Reviewed-by: Stefan Hajnoczi <address@hidden>
Reviewed-by: Fam Zheng <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>
Commit: 8a2390a4f4743f700da1d07c3bc04d6661ce1487
https://github.com/qemu/qemu/commit/8a2390a4f4743f700da1d07c3bc04d6661ce1487
Author: Daniel P. Berrange <address@hidden>
Date: 2017-07-17 (Mon, 17 Jul 2017)
Changed paths:
M tests/docker/Makefile.include
Log Message:
-----------
docker: Don't enable networking as a side-effect of DEBUG=1
When trying to debug problems with tests it is natural to set
DEBUG=1 when starting the docker environment. Unfortunately
this has a side-effect of enabling an eth0 network interface
in the container, which changes the operating environment of
the test suite. IOW tests with fail may suddenly start
working again if DEBUG=1 is set, due to changed network setup.
Add a separate NETWORK variable to allow enablement of
networking separately from DEBUG=1. This can be used in two
ways. To enable the default docker network backend
make address@hidden NETWORK=1
while to enable a specific network backend, eg join the network
associated with the container 'wibble':
make address@hidden NETWORK=container:wibble
Signed-off-by: Daniel P. Berrange <address@hidden>
Message-Id: <address@hidden>
[Drop the superfluous second $(subst ...). - Fam]
Signed-off-by: Fam Zheng <address@hidden>
Commit: 58bf7b6d8ccc469d8c001b8cf2b632d3f9e7fa38
https://github.com/qemu/qemu/commit/58bf7b6d8ccc469d8c001b8cf2b632d3f9e7fa38
Author: Fam Zheng <address@hidden>
Date: 2017-07-17 (Mon, 17 Jul 2017)
Changed paths:
M tests/docker/docker.py
Log Message:
-----------
docker.py: Drop infile parameter
The **kwargs can do this just well.
Signed-off-by: Fam Zheng <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>
Commit: 0b95ff72cb42567dd71685bfdafbcdcd9784ea83
https://github.com/qemu/qemu/commit/0b95ff72cb42567dd71685bfdafbcdcd9784ea83
Author: Fam Zheng <address@hidden>
Date: 2017-07-17 (Mon, 17 Jul 2017)
Changed paths:
M tests/docker/docker.py
Log Message:
-----------
docker.py: Improve subprocess exit code handling
A few error handlings are missing because we ignore the subprocess exit
code, for example "docker build" errors are currently ignored.
Introduce _do_check() aside the existing _do() method and use it in a
few places.
Signed-off-by: Fam Zheng <address@hidden>
Message-Id: <address@hidden>
Tested-by: Philippe Mathieu-Daudé <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>
Commit: 978373143cf9965a6ae1dec73b046fbf3d9f9689
https://github.com/qemu/qemu/commit/978373143cf9965a6ae1dec73b046fbf3d9f9689
Author: Paolo Bonzini <address@hidden>
Date: 2017-07-17 (Mon, 17 Jul 2017)
Changed paths:
M .travis.yml
Log Message:
-----------
travis: add no-TCG build
It's fairly easy for --disable-tcg to bitrot. Test it in our CI.
Signed-off-by: Paolo Bonzini <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>
Commit: 6632f6ff96f0537fc34cdc00c760656fc62e23c5
https://github.com/qemu/qemu/commit/6632f6ff96f0537fc34cdc00c760656fc62e23c5
Author: Peter Maydell <address@hidden>
Date: 2017-07-17 (Mon, 17 Jul 2017)
Changed paths:
M .travis.yml
M block/io.c
M block/qcow2.c
M block/qed-cluster.c
M block/qed-l2-cache.c
M block/qed-table.c
M block/qed.c
M block/qed.h
M block/sheepdog.c
M block/ssh.c
M block/vdi.c
M block/vpc.c
M block/vvfat.c
M include/block/block_int.h
M include/qemu/coroutine.h
M tests/docker/Makefile.include
M tests/docker/docker.py
M util/qemu-coroutine-lock.c
Log Message:
-----------
Merge remote-tracking branch
'remotes/famz/tags/block-and-testing-pull-request' into staging
# gpg: Signature made Mon 17 Jul 2017 04:47:05 BST
# gpg: using RSA key 0xCA35624C6A9171C6
# gpg: Good signature from "Fam Zheng <address@hidden>"
# gpg: WARNING: This key is not certified with a trusted signature!
# gpg: There is no indication that the signature belongs to the owner.
# Primary key fingerprint: 5003 7CB7 9706 0F76 F021 AD56 CA35 624C 6A91 71C6
* remotes/famz/tags/block-and-testing-pull-request:
travis: add no-TCG build
docker.py: Improve subprocess exit code handling
docker.py: Drop infile parameter
docker: Don't enable networking as a side-effect of DEBUG=1
ssh: support I/O from any AioContext
sheepdog: add queue_lock
qed: protect table cache with CoMutex
qed: introduce bdrv_qed_init_state
block: invoke .bdrv_drain callback in coroutine context and from AioContext
qed: move tail of qed_aio_write_main to qed_aio_write_{cow, alloc}
vvfat: make it thread-safe
vpc: make it thread-safe
vdi: make it thread-safe
coroutine-lock: add qemu_co_rwlock_downgrade and qemu_co_rwlock_upgrade
qcow2: call CoQueue APIs under CoMutex
Signed-off-by: Peter Maydell <address@hidden>
Compare: https://github.com/qemu/qemu/compare/acbaa0f4fd04...6632f6ff96f0
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Qemu-commits] [qemu/qemu] a8c574: qcow2: call CoQueue APIs under CoMutex,
GitHub <=