x86/gnttab: fix asm() operand in gnttab_clear_flag() The operand needs to use the 'w' modifier in case the compiler happens to pick a register (which apparently it does for no-one but the reporter of this problem). Reported-by: Lin Ming Signed-off-by: Jan Beulich --- a/xen/include/asm-x86/grant_table.h +++ b/xen/include/asm-x86/grant_table.h @@ -54,7 +54,7 @@ static inline void gnttab_clear_flag(uns * Note that this cannot be clear_bit(), as the access must be * confined to the specified 2 bytes. */ - asm volatile ("lock btrw %1,%0" : "=m" (*st) : "Ir" (nr), "m" (*st)); + asm volatile ("lock btrw %w1,%0" : "=m" (*st) : "Ir" (nr), "m" (*st)); } /* Foreign mappings of HHVM-guest pages do not modify the type count. */