--- linux-source-2.6.37-rc7/drivers/char/hw_random/via-rng.c.hxu1 2011-01-05 11:32:12.508274625 +0100 +++ linux-source-2.6.37-rc7/drivers/char/hw_random/via-rng.c 2011-01-05 12:57:19.712085325 +0100 @@ -82,7 +82,8 @@ static inline u32 xstore(u32 *addr, u32 asm(".byte 0x0F,0xA7,0xC0 /* xstore %%edi (addr=%0) */" :"=m"(*addr), "=a"(eax_out) - :"D"(addr), "d"(edx_in)); + :"D"(addr), "d"(edx_in) + :"edi", "edx"); irq_ts_restore(ts_state); return eax_out;