x86/tracing: comment need for atomic nop
authorSteven Rostedt <srostedt@redhat.com>
Thu, 10 Sep 2009 21:22:44 +0000 (17:22 -0400)
committerSteven Rostedt <rostedt@goodmis.org>
Thu, 10 Sep 2009 21:22:44 +0000 (17:22 -0400)
The dynamic function tracer relys on the macro P6_NOP5 always being
an atomic NOP. If for some reason it is changed to be two operations
(like a nop2 nop3) it can faults within the kernel when the function
tracer modifies the code.

This patch adds a comment to note that the P6_NOPs are expected to
be atomic. This will hopefully prevent anyone from changing that.

Reported-by: Mathieu Desnoyer <mathieu.desnoyers@polymtl.ca>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
arch/x86/include/asm/nops.h

index ad2668ee1aa7af8cc6fa62fdede3e58b08966ab1..6d8723a766cc1dc67c4a92264d02083f7c2127ed 100644 (file)
@@ -65,6 +65,8 @@
    6: osp nopl 0x00(%eax,%eax,1)
    7: nopl 0x00000000(%eax)
    8: nopl 0x00000000(%eax,%eax,1)
+   Note: All the above are assumed to be a single instruction.
+       There is kernel code that depends on this.
 */
 #define P6_NOP1        GENERIC_NOP1
 #define P6_NOP2        ".byte 0x66,0x90\n"