diff options
author | Paolo Bonzini <pbonzini@redhat.com> | 2020-03-31 10:44:53 -0400 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2020-03-31 10:44:53 -0400 |
commit | cf39d37539068d53e015d8b4f1dcf42c65306b0d (patch) | |
tree | c8dcbbc3a5c92beee82e83e2a2b597f328a919a6 /arch/csky/kernel/process.c | |
parent | 830948eb68265ac7f3f364aa9801550feafec0d6 (diff) | |
parent | 463050599742a89e0508355e626e032e8d0dab8d (diff) | |
download | linux-cf39d37539068d53e015d8b4f1dcf42c65306b0d.tar.gz linux-cf39d37539068d53e015d8b4f1dcf42c65306b0d.tar.bz2 linux-cf39d37539068d53e015d8b4f1dcf42c65306b0d.zip |
Merge tag 'kvmarm-5.7' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into HEAD
KVM/arm updates for Linux 5.7
- GICv4.1 support
- 32bit host removal
Diffstat (limited to 'arch/csky/kernel/process.c')
-rw-r--r-- | arch/csky/kernel/process.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/arch/csky/kernel/process.c b/arch/csky/kernel/process.c index f320d9248a22..f7b231ca269a 100644 --- a/arch/csky/kernel/process.c +++ b/arch/csky/kernel/process.c @@ -16,6 +16,12 @@ struct cpuinfo_csky cpu_data[NR_CPUS]; +#ifdef CONFIG_STACKPROTECTOR +#include <linux/stackprotector.h> +unsigned long __stack_chk_guard __read_mostly; +EXPORT_SYMBOL(__stack_chk_guard); +#endif + asmlinkage void ret_from_fork(void); asmlinkage void ret_from_kernel_thread(void); @@ -34,10 +40,11 @@ unsigned long thread_saved_pc(struct task_struct *tsk) return sw->r15; } -int copy_thread(unsigned long clone_flags, +int copy_thread_tls(unsigned long clone_flags, unsigned long usp, unsigned long kthread_arg, - struct task_struct *p) + struct task_struct *p, + unsigned long tls) { struct switch_stack *childstack; struct pt_regs *childregs = task_pt_regs(p); @@ -64,7 +71,7 @@ int copy_thread(unsigned long clone_flags, childregs->usp = usp; if (clone_flags & CLONE_SETTLS) task_thread_info(p)->tp_value = childregs->tls - = childregs->regs[0]; + = tls; childregs->a0 = 0; childstack->r15 = (unsigned long) ret_from_fork; |