[Top][All Lists]

[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: Leon Alrae
Subject: Re: [Qemu-devel] [PULL 08/21] rcu: run RCU callbacks under the BQL
Date: Wed, 25 Feb 2015 17:16:02 +0000
User-agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Thunderbird/24.5.0


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.

(gdb) bt
#0  0x00007ffff7b09fe3 in qemu_cpu_kick_thread (cpu=0x0) at
#1  0x00007ffff7b0a269 in qemu_mutex_lock_iothread () at
#2  0x00007ffff7ec5c39 in call_rcu_thread (opaque=0x0) at
#3  0x00007ffff38489d1 in start_thread () from /lib64/libpthread.so.0
#4  0x00007ffff359586d in clone () from /lib64/libc.so.6

qemu_mutex_lock_iothread() passes first_cpu to qemu_cpu_kick_thread().
Sometimes this is happening before executing cpu_exec_init(), which I
believe is the reason why qemu_cpu_kick_thread() receives a null pointer.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]