On 03/30/2017 03:05 PM, Jan Beulich wrote: > What I do note though is that you don't copy back the value > __cmpxchg() returns, yet that's what is needed. *map may > have changed again already.
Changing the code to: 1162 ret = __cmpxchg(map, old, new, bytes); 1163 1164 if ( ret != old ) 1165 { 1166 memcpy(p_old, &ret, bytes); 1167 rc = X86EMUL_CMPXCHG_FAILED; 1168 } where ret is an unsigned long still triggers BSODs when I add my patch to yours. I'll need to dig deeper. Thanks, Razvan _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org https://lists.xen.org/xen-devel