lkml.org 
[lkml]   [2022]   [Oct]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[tip: x86/core] x86/entry: Make sync_regs() invocation a tail call
    The following commit has been merged into the x86/core branch of tip:

    Commit-ID: ef79ed20e3ae9ee9ac2e0f3a4e12814893972e63
    Gitweb: https://git.kernel.org/tip/ef79ed20e3ae9ee9ac2e0f3a4e12814893972e63
    Author: Peter Zijlstra <peterz@infradead.org>
    AuthorDate: Thu, 15 Sep 2022 13:11:14 +02:00
    Committer: Peter Zijlstra <peterz@infradead.org>
    CommitterDate: Mon, 17 Oct 2022 16:41:09 +02:00

    x86/entry: Make sync_regs() invocation a tail call

    No point in having a call there. Spare the call/ret overhead.

    Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
    Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
    Link: https://lore.kernel.org/r/20220915111146.539578813@infradead.org
    ---
    arch/x86/entry/entry_64.S | 7 ++-----
    1 file changed, 2 insertions(+), 5 deletions(-)

    diff --git a/arch/x86/entry/entry_64.S b/arch/x86/entry/entry_64.S
    index 5c578a7..b24b84b 100644
    --- a/arch/x86/entry/entry_64.S
    +++ b/arch/x86/entry/entry_64.S
    @@ -1062,11 +1062,8 @@ SYM_CODE_START_LOCAL(error_entry)
    UNTRAIN_RET

    leaq 8(%rsp), %rdi /* arg0 = pt_regs pointer */
    -.Lerror_entry_from_usermode_after_swapgs:
    -
    /* Put us onto the real thread stack. */
    - call sync_regs
    - RET
    + jmp sync_regs

    /*
    * There are two places in the kernel that can potentially fault with
    @@ -1124,7 +1121,7 @@ SYM_CODE_START_LOCAL(error_entry)
    leaq 8(%rsp), %rdi /* arg0 = pt_regs pointer */
    call fixup_bad_iret
    mov %rax, %rdi
    - jmp .Lerror_entry_from_usermode_after_swapgs
    + jmp sync_regs
    SYM_CODE_END(error_entry)

    SYM_CODE_START_LOCAL(error_return)
    \
     
     \ /
      Last update: 2022-10-17 16:56    [W:3.411 / U:0.220 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site