On 03/07/15 17:25, Paul Durrant wrote: > By limiting hvmemul_do_io_addr() to reps falling within the page on which > a reference has already been taken, we can guarantee that calls to > hvm_copy_to/from_guest_phys() will not hit the HVMCOPY_gfn_paged_out > or HVMCOPY_gfn_shared cases. Thus we can remove the retry logic (added > by c/s 82ed8716b "fix direct PCI port I/O emulation retry and error > handling") from the intercept code and simplify it significantly. > > Normally hvmemul_do_io_addr() will only reference single page at a time. > It will, however, take an extra page reference for I/O spanning a page > boundary. > > It is still important to know, upon returning from x86_emulate(), whether > the number of reps was reduced so the mmio_retry flag is retained for that > purpose. > > Signed-off-by: Paul Durrant <paul.durr...@citrix.com> > Cc: Keir Fraser <k...@xen.org> > Cc: Jan Beulich <jbeul...@suse.com> > Cc: Andrew Cooper <andrew.coop...@citrix.com>
Reviewed-by: Andrew Cooper <andrew.coop...@citrix.com> _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel