On Tue, Feb 21, 2012 at 10:09:01AM +0100, Kevin Wolf wrote: > Am 21.02.2012 09:35, schrieb Paolo Bonzini: > > On 02/20/2012 11:50 AM, Alexander Graf wrote: > >>>> DMAAIOCB *dbs = qemu_aio_get(&dma_aio_pool, bs, cb, opaque); > >>>> > >>>> - trace_dma_bdrv_io(dbs, bs, sector_num, to_dev); > >>>> + trace_dma_bdrv_io(dbs, bs, sector_num, dir); > >> Was the trace wrong before or is it now? I don't see its definition > >> changed anywhere. > > > > Not sure what you mean. :) > > trace-events: > > dma_bdrv_io(void *dbs, void *bs, int64_t sector_num, bool to_dev) > "dbs=%p bs=%p sector_num=%" PRId64 " to_dev=%d"
Ah, damnit. Didn't find that file. I'll resubmit with trace-events updated too. > to_dev is declared bool here, and it should also be renamed to dir (the > unfortunate thing about DMADirection is that it swaps 0 and 1 compared > to bool to_dev... We need to check carefully that all occurrences have > been caught.) Yeah. And even more unfortunate that afaict there's no way to make gcc warn on enum<->bool conversions. Still there are only about 4 callers of dma_bdrv_io() - nearly everything uses the dma_bdrv_{read,write}() wrappers - so I'm confident I got them all. -- David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson