[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PULL 08/21] rcu: run RCU callbacks under the BQL
From: |
Paolo Bonzini |
Subject: |
Re: [Qemu-devel] [PULL 08/21] rcu: run RCU callbacks under the BQL |
Date: |
Thu, 26 Feb 2015 12:35:32 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.4.0 |
On 25/02/2015 18:16, Leon Alrae wrote:
> Hi,
>
> On 16/02/2015 18:17, Paolo Bonzini wrote:
>> This needs to go away sooner or later, but one complication is the
>> complex VFIO data structures that are modified in instance_finalize.
>> Take a shortcut for now.
>
> It looks like this commit introduced a race condition. QEMU segfaults
> very early in one of my tests where I boot Linux, and on one of my
> machines it's easier to reproduce than on the others.
This should be enough to fix it. If it works for you I'll send a pull
request as soon as possible.
diff --git a/cpus.c b/cpus.c
index 1cd9867..7bed67b 100644
--- a/cpus.c
+++ b/cpus.c
@@ -1115,7 +1115,7 @@ bool qemu_in_vcpu_thread(void)
void qemu_mutex_lock_iothread(void)
{
- if (!tcg_enabled()) {
+ if (!tcg_enabled() || !first_cpu) {
qemu_mutex_lock(&qemu_global_mutex);
} else {
iothread_requesting_mutex = true;
Paolo
- [Qemu-devel] [PULL 00/21] SCSI, RCU, KVM changes for 2015-02-16, Paolo Bonzini, 2015/02/16
- [Qemu-devel] [PULL 02/21] qdev: support to get a device firmware path directly, Paolo Bonzini, 2015/02/16
- [Qemu-devel] [PULL 03/21] vhost-scsi: add bootindex property, Paolo Bonzini, 2015/02/16
- [Qemu-devel] [PULL 04/21] vhost-scsi: expose the TYPE_FW_PATH_PROVIDER interface, Paolo Bonzini, 2015/02/16
- [Qemu-devel] [PULL 06/21] vhost-scsi: set the bootable value of channel/target/lun, Paolo Bonzini, 2015/02/16
- [Qemu-devel] [PULL 07/21] rcu: do not let RCU callbacks pile up indefinitely, Paolo Bonzini, 2015/02/16
- [Qemu-devel] [PULL 05/21] vhost-scsi: add a property for booting, Paolo Bonzini, 2015/02/16
- [Qemu-devel] [PULL 01/21] kvm_stat: Add kvm_exit reasons for aarch64, Paolo Bonzini, 2015/02/16
- [Qemu-devel] [PULL 08/21] rcu: run RCU callbacks under the BQL, Paolo Bonzini, 2015/02/16
[Qemu-devel] [PULL 10/21] pcie: remove mmconfig memory leak and wrap mmconfig update with transaction, Paolo Bonzini, 2015/02/16
[Qemu-devel] [PULL 11/21] pci: split shpc_cleanup and shpc_free, Paolo Bonzini, 2015/02/16
[Qemu-devel] [PULL 12/21] docs: clarify memory region lifecycle, Paolo Bonzini, 2015/02/16
[Qemu-devel] [PULL 14/21] exec: make iotlb RCU-friendly, Paolo Bonzini, 2015/02/16
[Qemu-devel] [PULL 15/21] exec: RCUify AddressSpaceDispatch, Paolo Bonzini, 2015/02/16
[Qemu-devel] [PULL 09/21] memory: keep the owner of the AddressSpace alive until do_address_space_destroy, Paolo Bonzini, 2015/02/16
[Qemu-devel] [PULL 13/21] exec: introduce cpu_reload_memory_map, Paolo Bonzini, 2015/02/16