On Tue, Mar 29, 2016 at 04:02:24PM +0100, Richard W.M. Jones wrote:
> Back in the day you used to be able to set DEBUG_IOPORT in ioport.c
> and get qemu to dump what (x86) I/O ports were being accessed by the
> guest.  This was rather useful for finding out what closed source
> device drivers were up to.
> 
> Now you're supposed to use cpu_in/cpu_out tracepoints instead.
> However for the majority of guests these tracepoints will never be
> called.
> 
> So this patch tries to rationalize all of that.  It:
> 
>  - replaces cpu_in/cpu_out with ioport_in/ioport_out tracepoints
> 
>  - moves them down in the stack, so they actually get called
> 
>  - fixes various details like address size
> 
> It turns out this is still not particularly useful for debugging
> because (a) it creates massive amounts of log messages and (b) there's
> no way to select a range of addresses or a device of interest.  For
> example, if you have a serial port, everything else gets swamped by
> I/O access to the serial port.  Maybe using a different tracing
> backend (eg. stap) would help?
> 
> Anyway, it still seems to me to be an improvement over the current
> situation.

I use "perf -e kvm:kvm_pio" but it's worth fixing QEMU's own trace
events.

Stefan

Attachment: signature.asc
Description: PGP signature

Reply via email to