mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-11 21:14:07 +08:00
92652cf986
To follow the existing per-arch conventions replace open-coded uses of asm "sp" as "current_stack_pointer". This will let it be used in non-arch places (like HARDENED_USERCOPY). Cc: Chris Zankel <chris@zankel.net> Cc: Marc Zyngier <maz@kernel.org> Cc: linux-xtensa@linux-xtensa.org Signed-off-by: Kees Cook <keescook@chromium.org> Acked-by: Max Filippov <jcmvbkbc@gmail.com> Link: https://lore.kernel.org/lkml/CAMo8BfJFJE-n3=AF+pb9_6oF3gzxX7a+7aBrASHjjNX5byqDqw@mail.gmail.com
41 lines
740 B
C
41 lines
740 B
C
/*
|
|
* include/asm-xtensa/current.h
|
|
*
|
|
* This file is subject to the terms and conditions of the GNU General Public
|
|
* License. See the file "COPYING" in the main directory of this archive
|
|
* for more details.
|
|
*
|
|
* Copyright (C) 2001 - 2005 Tensilica Inc.
|
|
*/
|
|
|
|
#ifndef _XTENSA_CURRENT_H
|
|
#define _XTENSA_CURRENT_H
|
|
|
|
#include <asm/thread_info.h>
|
|
|
|
#ifndef __ASSEMBLY__
|
|
|
|
#include <linux/thread_info.h>
|
|
|
|
struct task_struct;
|
|
|
|
static inline struct task_struct *get_current(void)
|
|
{
|
|
return current_thread_info()->task;
|
|
}
|
|
|
|
#define current get_current()
|
|
|
|
register unsigned long current_stack_pointer __asm__("a1");
|
|
|
|
#else
|
|
|
|
#define GET_CURRENT(reg,sp) \
|
|
GET_THREAD_INFO(reg,sp); \
|
|
l32i reg, reg, TI_TASK \
|
|
|
|
#endif
|
|
|
|
|
|
#endif /* XTENSA_CURRENT_H */
|