On Mon, Apr 12, 2021 at 08:13:19PM +0000, Wei Liu wrote: > On Mon, Apr 12, 2021 at 07:00:16PM +0200, Siddharth Chandrasekaran wrote: > > + > > +static inline void kvm_hv_hypercall_read_xmm(struct kvm_hv_hcall *hc) > > Do you really need inline here? The compiler should be smart enough to > inline this function if necessary. Removed. > > +{ > > + int reg; > > + > > + kvm_fpu_get(); > > + for (reg = 0; reg < KVM_HV_HYPERCALL_MAX_XMM_REGISTERS; reg++) > > + _kvm_read_sse_reg(reg, &hc->xmm[reg]); > > + kvm_fpu_put(); > > + hc->xmm_dirty = false; > > There is no code that sets xmm_dirty to true? What am I missing? I guess > that's because you haven't implemented the hypercalls that need writing > back to guest? Yes, when a hypercall want to return data via XMM registers, it should update hc->xmm[] and set hc->dirty (I plan on using this in a future patch). The reason why I didn't differ this change to actual patch needs it is that it pairs nicely with the read/write xmm_reg() calls in kvm_hv_hypercall(). ~ Sid. Amazon Development Center Germany GmbH Krausenstr. 38 10117 Berlin Geschaeftsfuehrung: Christian Schlaeger, Jonathan Weiss Eingetragen am Amtsgericht Charlottenburg unter HRB 149173 B Sitz: Berlin Ust-ID: DE 289 237 879