On 17/03/16 08:35, Jan Beulich wrote: >>>> On 16.03.16 at 15:21, <paul.durr...@citrix.com> wrote: >> Commit b38d426a "flush remote tlbs by hypercall" add support to allow >> Windows to request flush of remote TLB via hypercall rather than IPI. >> Unfortunately it seems that this code was broken in a couple of ways: >> >> 1) The allocation of the per-vcpu ipi mask is gated on whether the >> domain has viridian features enabled but the call to allocate is >> made before the toolstack has enabled those features. This results >> in a NULL pointer dereference. >> >> 2) One of the flush hypercall variants is a rep op, but the code >> does not update the output data with the reps completed. Hence the >> guest will spin repeatedly making the hypercall because it believes >> it has uncompleted reps. >> >> This patch fixes both of these issues as follows: >> >> 1) The ipi mask need only be per-pcpu so it is made a per-pcpu static >> to avoid the need for allocation. >> >> 2) The rep complete count is updated to the rep count since the single >> flush that Xen does covers all reps anyway. >> >> Signed-off-by: Paul Durrant <paul.durr...@citrix.com> > Reviewed-by: Jan Beulich <jbeul...@suse.com> >
Reviewed-by: Andrew Cooper <andrew.coop...@citrix.com> _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel