diff options
Diffstat (limited to 'arch/x86/kernel/entry_64.S')
-rw-r--r-- | arch/x86/kernel/entry_64.S | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/x86/kernel/entry_64.S b/arch/x86/kernel/entry_64.S index 8f8f61a1fce8..860afce9660a 100644 --- a/arch/x86/kernel/entry_64.S +++ b/arch/x86/kernel/entry_64.S | |||
@@ -410,6 +410,8 @@ END(save_paranoid) | |||
410 | ENTRY(ret_from_fork) | 410 | ENTRY(ret_from_fork) |
411 | DEFAULT_FRAME | 411 | DEFAULT_FRAME |
412 | 412 | ||
413 | LOCK ; btr $TIF_FORK,TI_flags(%r8) | ||
414 | |||
413 | push kernel_eflags(%rip) | 415 | push kernel_eflags(%rip) |
414 | CFI_ADJUST_CFA_OFFSET 8 | 416 | CFI_ADJUST_CFA_OFFSET 8 |
415 | popf # reset kernel eflags | 417 | popf # reset kernel eflags |
@@ -1146,7 +1148,7 @@ ENTRY(native_load_gs_index) | |||
1146 | CFI_STARTPROC | 1148 | CFI_STARTPROC |
1147 | pushf | 1149 | pushf |
1148 | CFI_ADJUST_CFA_OFFSET 8 | 1150 | CFI_ADJUST_CFA_OFFSET 8 |
1149 | DISABLE_INTERRUPTS(CLBR_ANY | ~(CLBR_RDI)) | 1151 | DISABLE_INTERRUPTS(CLBR_ANY & ~CLBR_RDI) |
1150 | SWAPGS | 1152 | SWAPGS |
1151 | gs_change: | 1153 | gs_change: |
1152 | movl %edi,%gs | 1154 | movl %edi,%gs |