On Mon, Aug 17, 2009 at 06:44:11PM +0200, Paolo Bonzini wrote:
On 08/17/2009 05:45 PM, Reimar Döffinger wrote:
+ cpu_synchronize_state(env, 0);
env->regs[R_EAX] = vmport_ioport_read(opaque, addr);
+ cpu_synchronize_state(env, 1);
This is not needed because the sync is done in vmport_ioport_read, isn't it?
Well... The cpu_synchronize_state could be dropped you are right, but
here we write R_EAX so the cpu_synchronize_state(env, 1) is necessary.
It might be slightly cleaner to rename the vmport_ioport_read (any name
suggestions?) and add a wrapper for register_ioport_read that does the
cpu_synchronize_state (so it looks similar to vmport_ioport_write).