On 14/09/2015 19:31, Richard Henderson wrote: > On 09/14/2015 10:23 AM, Paolo Bonzini wrote: >> >> >> On 14/09/2015 19:21, Richard Henderson wrote: >>>>> About implementing DE in TCG: I really don't think it is easier, but if >>>>>>> somebody wants to implement it, it would be welcome. >>>>> >>>>> Actually I agree that it's easier, and even a partial implementation >>>>> (e.g. no I/O port breakpoints) would be nice to have because recent >>>>> Windows IIRC requires DE. >>> Isn't I/O port breakpoints the only thing we're missing from DE? >> >> I was thinking of the CR4 bit, but it looks like we don't raise #GP at >> all on writes to unknown CR0 or CR4 bits. > > Nor do we #gp accesses to dr[45] with DE, nor map dr[45] to dr[67] without DE. > > Does the i/o breakpoint happen before or after the access? If before, we > could > implement the breakpoint in check_io. Otherwise we'd need a new helper.
Table 6-3 says it's a trap, so it occurs after. Paolo