Hi, kernel newbies, We have: #define cpu_relax() asm volatile("rep; nop") in arch/x86/boot/boot.h. Why don't we use the PAUSE assembler instruction here ? According to Intel manuals, Intel® 64 and IA-32 Architectures Software Developer’s Manual Volume 2B: "This instruction was introduced in the Pentium 4 processors, but is backward compatible with all IA-32 processors. In earlier IA-32 processors, the PAUSE instruction operates like a NOP instruction. The Pentium 4 and Intel Xeon processors implement the PAUSE instruction as a delay. The delay is finite and can be zero for some processors. This instruction does not change the architectural state of the processor (that is, it performs essentially a delaying no-op operation). This instruction’s operation is the same in non-64-bit modes and 64-bit mode." And AFAIK, in spinlocks , PAUSE indeed replaced the rep;nop. Any ideas? Best, DS _______________________________________________ Kernelnewbies mailing list Kernelnewbies@xxxxxxxxxxxxxxxxx http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies