[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] x86/hvm: put value of emulated register reads into trace records
# HG changeset patch # User David Vrabel <david.vrabel@xxxxxxxxxx> # Date 1337010892 -3600 # Node ID 53144d27a9273008c8fcf20a345d13ba0d001edc # Parent a2e3b99a9bc4a0571e8631a6c0c2da181f0026b9 x86/hvm: put value of emulated register reads into trace records The tracepoint for emulated MMIO and I/O port reads was always before the emulated read or write was done. This means that for reads the register value in the trace record was always 0. So for reads, move the tracepoint until the register value is available. Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx> Committed-by: Keir Fraser <keir@xxxxxxx> --- diff -r a2e3b99a9bc4 -r 53144d27a927 xen/arch/x86/hvm/emulate.c --- a/xen/arch/x86/hvm/emulate.c Mon May 14 16:34:29 2012 +0100 +++ b/xen/arch/x86/hvm/emulate.c Mon May 14 16:54:52 2012 +0100 @@ -191,7 +191,8 @@ static int hvmemul_do_io( p->df = df; p->data = value; - hvmtrace_io_assist(is_mmio, p); + if ( dir == IOREQ_WRITE ) + hvmtrace_io_assist(is_mmio, p); if ( is_mmio ) { @@ -232,6 +233,9 @@ static int hvmemul_do_io( } finish_access: + if ( dir == IOREQ_READ ) + hvmtrace_io_assist(is_mmio, p); + if ( p_data != NULL ) memcpy(p_data, &vio->io_data, size); _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |