On Fri, 26 Aug 2011 15:40:08 +1000, David Gibson <da...@gibson.dropbear.id.au> wrote: > Near the top of hw/virtio.c we have this: > > /* QEMU doesn't strictly need write barriers since everything runs in > * lock-step. We'll leave the calls to wmb() in though to make it > obvious for > * KVM or if kqemu gets SMP support. > * In any case, we must prevent the compiler from reordering the code. > * TODO: we likely need some rmb()/mb() as well. > */ > > #define wmb() __asm__ __volatile__("": : :"memory") > > > However, as far as I can tell when using both kvm and io-thread, the > assertion that barriers aren't necessary just isn't true. Although it > probably works on x86 with its strongly ordered model.
That looks very much like it's cribbed from the original lguest code. Very wrong, please fix! Thanks, Rusty.