xtensa: consolidate kernel stack size related definitions
Define kernel stack size in kmem_layout and use it in current_thread_info, GET_THREAD_INFO, THREAD_SIZE and THERAD_SIZE_ORDER definitions. Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
This commit is contained in:
parent
5cf97ebd8b
commit
f4431396be
|
@ -11,6 +11,8 @@
|
|||
#ifndef _XTENSA_CURRENT_H
|
||||
#define _XTENSA_CURRENT_H
|
||||
|
||||
#include <asm/thread_info.h>
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
|
||||
#include <linux/thread_info.h>
|
||||
|
@ -26,8 +28,6 @@ static inline struct task_struct *get_current(void)
|
|||
|
||||
#else
|
||||
|
||||
#define CURRENT_SHIFT 13
|
||||
|
||||
#define GET_CURRENT(reg,sp) \
|
||||
GET_THREAD_INFO(reg,sp); \
|
||||
l32i reg, reg, TI_TASK \
|
||||
|
|
|
@ -71,4 +71,7 @@
|
|||
|
||||
#endif
|
||||
|
||||
#define KERNEL_STACK_SHIFT 13
|
||||
#define KERNEL_STACK_SIZE (1 << KERNEL_STACK_SHIFT)
|
||||
|
||||
#endif
|
||||
|
|
|
@ -10,6 +10,7 @@
|
|||
#ifndef _XTENSA_PTRACE_H
|
||||
#define _XTENSA_PTRACE_H
|
||||
|
||||
#include <asm/kmem_layout.h>
|
||||
#include <uapi/asm/ptrace.h>
|
||||
|
||||
/*
|
||||
|
@ -38,8 +39,6 @@
|
|||
* +-----------------------+ --------
|
||||
*/
|
||||
|
||||
#define KERNEL_STACK_SIZE (2 * PAGE_SIZE)
|
||||
|
||||
/* Offsets for exception_handlers[] (3 x 64-entries x 4-byte tables). */
|
||||
|
||||
#define EXC_TABLE_KSTK 0x004 /* Kernel Stack */
|
||||
|
|
|
@ -11,7 +11,9 @@
|
|||
#ifndef _XTENSA_THREAD_INFO_H
|
||||
#define _XTENSA_THREAD_INFO_H
|
||||
|
||||
#ifdef __KERNEL__
|
||||
#include <asm/kmem_layout.h>
|
||||
|
||||
#define CURRENT_SHIFT KERNEL_STACK_SHIFT
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
# include <asm/processor.h>
|
||||
|
@ -84,7 +86,7 @@ struct thread_info {
|
|||
static inline struct thread_info *current_thread_info(void)
|
||||
{
|
||||
struct thread_info *ti;
|
||||
__asm__("extui %0,a1,0,13\n\t"
|
||||
__asm__("extui %0, a1, 0, "__stringify(CURRENT_SHIFT)"\n\t"
|
||||
"xor %0, a1, %0" : "=&r" (ti) : );
|
||||
return ti;
|
||||
}
|
||||
|
@ -93,7 +95,7 @@ static inline struct thread_info *current_thread_info(void)
|
|||
|
||||
/* how to get the thread information struct from ASM */
|
||||
#define GET_THREAD_INFO(reg,sp) \
|
||||
extui reg, sp, 0, 13; \
|
||||
extui reg, sp, 0, CURRENT_SHIFT; \
|
||||
xor reg, sp, reg
|
||||
#endif
|
||||
|
||||
|
@ -130,8 +132,7 @@ static inline struct thread_info *current_thread_info(void)
|
|||
*/
|
||||
#define TS_USEDFPU 0x0001 /* FPU was used by this task this quantum (SMP) */
|
||||
|
||||
#define THREAD_SIZE 8192 //(2*PAGE_SIZE)
|
||||
#define THREAD_SIZE_ORDER 1
|
||||
#define THREAD_SIZE KERNEL_STACK_SIZE
|
||||
#define THREAD_SIZE_ORDER (KERNEL_STACK_SHIFT - PAGE_SHIFT)
|
||||
|
||||
#endif /* __KERNEL__ */
|
||||
#endif /* _XTENSA_THREAD_INFO */
|
||||
|
|
Loading…
Reference in New Issue