]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commitdiff
ARM: obtain thread info structure later
authorRussell King <rmk+kernel@armlinux.org.uk>
Fri, 24 Mar 2017 16:19:12 +0000 (16:19 +0000)
committerRussell King <rmk+kernel@armlinux.org.uk>
Wed, 2 Aug 2017 13:15:04 +0000 (14:15 +0100)
Obtain the thread info structure later in the syscall processing, so
that we free up a register for earlier code.

Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
arch/arm/kernel/entry-common.S

index 9abe47a206d9141bd759bf15994a8679ecf7690e..374c28723547d64ab1452673151024809c4ed337 100644 (file)
@@ -152,7 +152,6 @@ ENTRY(vector_swi)
        alignment_trap r10, ip, __cr_alignment
        enable_irq
        ct_user_exit
-       get_thread_info tsk
 
        /*
         * Get the system call number.
@@ -209,6 +208,7 @@ ENTRY(vector_swi)
        bic     scno, scno, #0xff000000         @ mask off SWI op-code
        eor     scno, scno, #__NR_SYSCALL_BASE  @ check OS number
 #endif
+       get_thread_info tsk
 
 local_restart:
        ldr     r10, [tsk, #TI_FLAGS]           @ check for syscall tracing
@@ -240,6 +240,7 @@ local_restart:
 9001:
        sub     lr, saved_pc, #4
        str     lr, [sp, #S_PC]
+       get_thread_info tsk
        b       ret_fast_syscall
 #endif
 ENDPROC(vector_swi)