On Mon, Mar 04, 2013 at 10:01:43PM +0100, Lluís Vilanova wrote: > Stefan Hajnoczi writes: > > > On Fri, Mar 01, 2013 at 04:29:35PM +0100, Lluís Vilanova wrote: > >> Provides a generic event state description structure (TraceEvent) and a > >> more > >> detailed event control and query interface. > >> > >> This is achieved by creating a new "non-public" tracing backend (i.e., not > >> selectable by the user at configure time) that will generate the > >> appropriate > >> event description information. > >> > >> Signed-off-by: Lluís Vilanova <vilan...@ac.upc.edu> > >> --- > >> > >> Changes in v11: > >> > >> * Rebase on a4bcea3 from master. > > > Hi Lluís, > > Thanks for rebasing. Unfortunately I still hit the hang on shutdown > > with the simple trace backend. > > > Steps to reproduce: > > $ ./configure --target-list=x86_64-softmmu --enable-trace-backend=simple > > $ make > > $ cat my-events > > bdrv_open_common > > $ x86_64-softmmu/qemu-system-x86_64 \ > > -enable-kvm -m 1024 \ > > -trace events=my-events \ > > -drive if=virtio,cache=none,file=test.img > > Ctrl-Alt-2 > > (qemu) quit > > ...hang... > > > Please let me know if you are able to reproduce it. qemu.git/master > > does not behave this way. > > I've been unable to reproduce it with v11, but was able to using v10 (although > only a couple of times). > > What I saw in v10 looked like a deadlock between 'flush_trace_file' and > 'wait_for_trace_records_available' (both use 'trace_lock'), but I only was > able > to reproduce it a couple of times, so I couldn't haunt the problem down. > > After a quick re-read of the patches, the changes should have no effect on how > the mutexes in the "simple" backend are handled, so maybe the problem is not > related to this change (it just makes it more frequent in your build).
I'll take a look here since it reproduces every time on this host. > Could it be possible that you exit QEMU before calling 'trace_backend_init'? > (as unlikely as it might be) No, the guest is running at the BIOS prompt. Stefan