Commit 33615dd1 authored by Linus Torvalds's avatar Linus Torvalds

Fix sysenter restart backwards jump, add offset comments,

and make the alignment of the return point 
be saner.
parent 6c39ac1f
...@@ -233,7 +233,7 @@ need_resched: ...@@ -233,7 +233,7 @@ need_resched:
#endif #endif
/* Points to after the "sysenter" instruction in the vsyscall page */ /* Points to after the "sysenter" instruction in the vsyscall page */
#define SYSENTER_RETURN 0xffffe00a #define SYSENTER_RETURN 0xffffe010
# sysenter call handler stub # sysenter call handler stub
ALIGN ALIGN
......
...@@ -57,12 +57,17 @@ static int __init sysenter_setup(void) ...@@ -57,12 +57,17 @@ static int __init sysenter_setup(void)
0x51, /* push %ecx */ 0x51, /* push %ecx */
0x52, /* push %edx */ 0x52, /* push %edx */
0x55, /* push %ebp */ 0x55, /* push %ebp */
/* 3: backjump target */
0x89, 0xe5, /* movl %esp,%ebp */ 0x89, 0xe5, /* movl %esp,%ebp */
0x0f, 0x34, /* sysenter */ 0x0f, 0x34, /* sysenter */
0x00, /* align return point */
/* System call restart point is here! (SYSENTER_RETURN - 2) */ /* 7: align return point with nop's to make disassembly easier */
0xeb, 0xfa, /* jmp to "movl %esp,%ebp" */ 0x90, 0x90, 0x90, 0x90,
/* System call normal return point is here! (SYSENTER_RETURN in entry.S) */ 0x90, 0x90, 0x90,
/* 14: System call restart point is here! (SYSENTER_RETURN - 2) */
0xeb, 0xf3, /* jmp to "movl %esp,%ebp" */
/* 16: System call normal return point is here! (SYSENTER_RETURN in entry.S) */
0x5d, /* pop %ebp */ 0x5d, /* pop %ebp */
0x5a, /* pop %edx */ 0x5a, /* pop %edx */
0x59, /* pop %ecx */ 0x59, /* pop %ecx */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment