Loading arch/arm64/include/asm/percpu.h +2 −0 Original line number Original line Diff line number Diff line Loading @@ -16,6 +16,8 @@ #ifndef __ASM_PERCPU_H #ifndef __ASM_PERCPU_H #define __ASM_PERCPU_H #define __ASM_PERCPU_H #include <asm/stack_pointer.h> static inline void set_my_cpu_offset(unsigned long off) static inline void set_my_cpu_offset(unsigned long off) { { asm volatile("msr tpidr_el1, %0" :: "r" (off) : "memory"); asm volatile("msr tpidr_el1, %0" :: "r" (off) : "memory"); Loading arch/arm64/include/asm/perf_event.h +2 −0 Original line number Original line Diff line number Diff line Loading @@ -17,6 +17,8 @@ #ifndef __ASM_PERF_EVENT_H #ifndef __ASM_PERF_EVENT_H #define __ASM_PERF_EVENT_H #define __ASM_PERF_EVENT_H #include <asm/stack_pointer.h> #define ARMV8_PMU_MAX_COUNTERS 32 #define ARMV8_PMU_MAX_COUNTERS 32 #define ARMV8_PMU_COUNTER_MASK (ARMV8_PMU_MAX_COUNTERS - 1) #define ARMV8_PMU_COUNTER_MASK (ARMV8_PMU_MAX_COUNTERS - 1) Loading arch/arm64/include/asm/stack_pointer.h 0 → 100644 +9 −0 Original line number Original line Diff line number Diff line #ifndef __ASM_STACK_POINTER_H #define __ASM_STACK_POINTER_H /* * how to get the current stack pointer from C */ register unsigned long current_stack_pointer asm ("sp"); #endif /* __ASM_STACK_POINTER_H */ arch/arm64/include/asm/thread_info.h +1 −5 Original line number Original line Diff line number Diff line Loading @@ -36,6 +36,7 @@ struct task_struct; struct task_struct; #include <asm/stack_pointer.h> #include <asm/types.h> #include <asm/types.h> typedef unsigned long mm_segment_t; typedef unsigned long mm_segment_t; Loading Loading @@ -66,11 +67,6 @@ struct thread_info { #define init_thread_info (init_thread_union.thread_info) #define init_thread_info (init_thread_union.thread_info) #define init_stack (init_thread_union.stack) #define init_stack (init_thread_union.stack) /* * how to get the current stack pointer from C */ register unsigned long current_stack_pointer asm ("sp"); /* /* * how to get the thread information struct from C * how to get the thread information struct from C */ */ Loading arch/arm64/kernel/asm-offsets.c +0 −5 Original line number Original line Diff line number Diff line Loading @@ -39,11 +39,6 @@ int main(void) DEFINE(TI_FLAGS, offsetof(struct thread_info, flags)); DEFINE(TI_FLAGS, offsetof(struct thread_info, flags)); DEFINE(TI_PREEMPT, offsetof(struct thread_info, preempt_count)); DEFINE(TI_PREEMPT, offsetof(struct thread_info, preempt_count)); DEFINE(TI_ADDR_LIMIT, offsetof(struct thread_info, addr_limit)); DEFINE(TI_ADDR_LIMIT, offsetof(struct thread_info, addr_limit)); #ifdef CONFIG_ARM64_SW_TTBR0_PAN DEFINE(TI_TTBR0, offsetof(struct thread_info, ttbr0)); #endif DEFINE(TI_TASK, offsetof(struct thread_info, task)); DEFINE(TI_CPU, offsetof(struct thread_info, cpu)); #ifdef CONFIG_ARM64_SW_TTBR0_PAN #ifdef CONFIG_ARM64_SW_TTBR0_PAN DEFINE(TSK_TI_TTBR0, offsetof(struct thread_info, ttbr0)); DEFINE(TSK_TI_TTBR0, offsetof(struct thread_info, ttbr0)); #endif #endif Loading Loading
arch/arm64/include/asm/percpu.h +2 −0 Original line number Original line Diff line number Diff line Loading @@ -16,6 +16,8 @@ #ifndef __ASM_PERCPU_H #ifndef __ASM_PERCPU_H #define __ASM_PERCPU_H #define __ASM_PERCPU_H #include <asm/stack_pointer.h> static inline void set_my_cpu_offset(unsigned long off) static inline void set_my_cpu_offset(unsigned long off) { { asm volatile("msr tpidr_el1, %0" :: "r" (off) : "memory"); asm volatile("msr tpidr_el1, %0" :: "r" (off) : "memory"); Loading
arch/arm64/include/asm/perf_event.h +2 −0 Original line number Original line Diff line number Diff line Loading @@ -17,6 +17,8 @@ #ifndef __ASM_PERF_EVENT_H #ifndef __ASM_PERF_EVENT_H #define __ASM_PERF_EVENT_H #define __ASM_PERF_EVENT_H #include <asm/stack_pointer.h> #define ARMV8_PMU_MAX_COUNTERS 32 #define ARMV8_PMU_MAX_COUNTERS 32 #define ARMV8_PMU_COUNTER_MASK (ARMV8_PMU_MAX_COUNTERS - 1) #define ARMV8_PMU_COUNTER_MASK (ARMV8_PMU_MAX_COUNTERS - 1) Loading
arch/arm64/include/asm/stack_pointer.h 0 → 100644 +9 −0 Original line number Original line Diff line number Diff line #ifndef __ASM_STACK_POINTER_H #define __ASM_STACK_POINTER_H /* * how to get the current stack pointer from C */ register unsigned long current_stack_pointer asm ("sp"); #endif /* __ASM_STACK_POINTER_H */
arch/arm64/include/asm/thread_info.h +1 −5 Original line number Original line Diff line number Diff line Loading @@ -36,6 +36,7 @@ struct task_struct; struct task_struct; #include <asm/stack_pointer.h> #include <asm/types.h> #include <asm/types.h> typedef unsigned long mm_segment_t; typedef unsigned long mm_segment_t; Loading Loading @@ -66,11 +67,6 @@ struct thread_info { #define init_thread_info (init_thread_union.thread_info) #define init_thread_info (init_thread_union.thread_info) #define init_stack (init_thread_union.stack) #define init_stack (init_thread_union.stack) /* * how to get the current stack pointer from C */ register unsigned long current_stack_pointer asm ("sp"); /* /* * how to get the thread information struct from C * how to get the thread information struct from C */ */ Loading
arch/arm64/kernel/asm-offsets.c +0 −5 Original line number Original line Diff line number Diff line Loading @@ -39,11 +39,6 @@ int main(void) DEFINE(TI_FLAGS, offsetof(struct thread_info, flags)); DEFINE(TI_FLAGS, offsetof(struct thread_info, flags)); DEFINE(TI_PREEMPT, offsetof(struct thread_info, preempt_count)); DEFINE(TI_PREEMPT, offsetof(struct thread_info, preempt_count)); DEFINE(TI_ADDR_LIMIT, offsetof(struct thread_info, addr_limit)); DEFINE(TI_ADDR_LIMIT, offsetof(struct thread_info, addr_limit)); #ifdef CONFIG_ARM64_SW_TTBR0_PAN DEFINE(TI_TTBR0, offsetof(struct thread_info, ttbr0)); #endif DEFINE(TI_TASK, offsetof(struct thread_info, task)); DEFINE(TI_CPU, offsetof(struct thread_info, cpu)); #ifdef CONFIG_ARM64_SW_TTBR0_PAN #ifdef CONFIG_ARM64_SW_TTBR0_PAN DEFINE(TSK_TI_TTBR0, offsetof(struct thread_info, ttbr0)); DEFINE(TSK_TI_TTBR0, offsetof(struct thread_info, ttbr0)); #endif #endif Loading