From mboxrd@z Thu Jan 1 00:00:00 1970 From: afaerber@suse.de (=?ISO-8859-1?Q?Andreas_F=E4rber?=) Date: Thu, 31 Jul 2014 07:31:30 +0200 Subject: [PATCH 3/4] arm64: LLVMLinux: Calculate current_thread_info from current_stack_pointer In-Reply-To: <1406764649-20326-4-git-send-email-behanw@converseincode.com> References: <1406764649-20326-1-git-send-email-behanw@converseincode.com> <1406764649-20326-4-git-send-email-behanw@converseincode.com> Message-ID: <53D9D4B2.8070008@suse.de> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Hi, Am 31.07.2014 01:57, schrieb behanw at converseincode.com: > From: Behan Webster > > Use the global current_stack_pointer to get the value of the stack pointer. > This change supports being able to compile the kernel with both gcc and clang. > > Signed-off-by: Behan Webster > Signed-off-by: Mark Charlebois > Reviewed-by: Jan-Simon M??ller Something went wrong with ? encoding here and in 2/4. > --- > arch/arm64/include/asm/thread_info.h | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/arch/arm64/include/asm/thread_info.h b/arch/arm64/include/asm/thread_info.h > index e6b6094..c2432d2 100644 > --- a/arch/arm64/include/asm/thread_info.h > +++ b/arch/arm64/include/asm/thread_info.h > @@ -80,8 +80,8 @@ static inline struct thread_info *current_thread_info(void) __attribute_const__; > > static inline struct thread_info *current_thread_info(void) > { > - register unsigned long sp asm ("sp"); > - return (struct thread_info *)(sp & ~(THREAD_SIZE - 1)); > + return (struct thread_info *) \ This is not a macro, so \ seems superfluous. Looks okay otherwise. Regards, Andreas > + (current_stack_pointer & ~(THREAD_SIZE - 1)); > } > > #define thread_saved_pc(tsk) \ -- SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 N?rnberg, Germany GF: Jeff Hawn, Jennifer Guild, Felix Imend?rffer; HRB 16746 AG N?rnberg