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). -- To unsubscribe from this list: send the line "unsubscribe linux-next" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html