On 01/20/2014 12:26 AM, Peter Zijlstra wrote: > On Sun, Jan 19, 2014 at 11:45:43PM -0500, Len Brown wrote: >> +static void mwait_idle(void) >> +{ >> + mwait_idle_with_hints(0, 0); >> +} >> + >> >> The reason the patch above will crash Core2 machines is because >> core2 machines don't support mwait_idle_with_hints(). >> >> The calling sequence for old and new MWAIT instructions is different. >> The former must be invoked with interrupts enabled, >> and the later can be invoked with interrupts disabled, >> which is a feature that Linux takes advantage of. > > What old and new? They're the same byte sequence: 0x0f 0x01 0xc9 > > And your 'old' __sti_mwait(0,0) has the exact same arguments as > mwait_idle_with_hints(0,0). >
The difference is the STI! -hpa -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/