On Sun, Apr 28, 2013 at 09:25:15PM +0200, Lluís Vilanova wrote: > Stefan Hajnoczi writes: > > > On Fri, Apr 26, 2013 at 02:15:46PM +0200, Lluís Vilanova wrote: > > Advanced users will have to modify the QEMU source. > > >> > Basically I think putting a stable API in place here isn't going to fly. > >> > In terms of the tracing subsystem I don't mind, but I think it's a > >> > question for the larger QEMU community. > >> > >> What are you referring to as an API? The tracing events and their > >> signatures? > > > The interface that dynamic instrumentation libraries use to interact > > with QEMU. That means "stable" tracing events plus any operations that > > libraries can perform (stop/stop vcpu, peek/poke memory, dirty bitmaps, > > MMU, interrupts, etc). > > Not all events require being "stable", just a few that I established as > "abstract" and relate to some very generic guest state (which in their most > basic form can be boiled down to 5). As for the rest of the API and more > controversial events, as I said I have no problem in maintaining a separate > branch.
Can you split the work into two patch series: 1. Target-independent TCG events (e.g. vbbl_begin) 2. "custom" trace backend that links custom C trace event handler functions - but without dynamic libraries or stable API. It loses the dynamic library and stable API features but would be easy to merge. Stefan