Merge branch 'sh/stable-updates'
This commit is contained in:
commit
b195e46677
|
@ -121,7 +121,7 @@ noresched:
|
|||
ENTRY(resume_userspace)
|
||||
! r8: current_thread_info
|
||||
cli
|
||||
TRACE_IRQS_OfF
|
||||
TRACE_IRQS_OFF
|
||||
mov.l @(TI_FLAGS,r8), r0 ! current_thread_info->flags
|
||||
tst #(_TIF_WORK_MASK & 0xff), r0
|
||||
bt/s __restore_all
|
||||
|
|
|
@ -553,6 +553,8 @@ static int show_cpuinfo(struct seq_file *m, void *v)
|
|||
|
||||
if (cpu == 0)
|
||||
seq_printf(m, "machine\t\t: %s\n", get_system_type());
|
||||
else
|
||||
seq_printf(m, "\n");
|
||||
|
||||
seq_printf(m, "processor\t: %d\n", cpu);
|
||||
seq_printf(m, "cpu family\t: %s\n", init_utsname()->machine);
|
||||
|
|
|
@ -145,7 +145,7 @@ static inline int restore_sigcontext_fpu(struct sigcontext __user *sc)
|
|||
{
|
||||
struct task_struct *tsk = current;
|
||||
|
||||
if (!(current_cpu_data.flags & CPU_HAS_FPU))
|
||||
if (!(boot_cpu_data.flags & CPU_HAS_FPU))
|
||||
return 0;
|
||||
|
||||
set_used_math();
|
||||
|
@ -158,7 +158,7 @@ static inline int save_sigcontext_fpu(struct sigcontext __user *sc,
|
|||
{
|
||||
struct task_struct *tsk = current;
|
||||
|
||||
if (!(current_cpu_data.flags & CPU_HAS_FPU))
|
||||
if (!(boot_cpu_data.flags & CPU_HAS_FPU))
|
||||
return 0;
|
||||
|
||||
if (!used_math()) {
|
||||
|
@ -199,7 +199,7 @@ restore_sigcontext(struct pt_regs *regs, struct sigcontext __user *sc, int *r0_p
|
|||
#undef COPY
|
||||
|
||||
#ifdef CONFIG_SH_FPU
|
||||
if (current_cpu_data.flags & CPU_HAS_FPU) {
|
||||
if (boot_cpu_data.flags & CPU_HAS_FPU) {
|
||||
int owned_fp;
|
||||
struct task_struct *tsk = current;
|
||||
|
||||
|
@ -472,6 +472,7 @@ static int setup_rt_frame(int sig, struct k_sigaction *ka, siginfo_t *info,
|
|||
err |= __put_user(OR_R0_R0, &frame->retcode[6]);
|
||||
err |= __put_user((__NR_rt_sigreturn), &frame->retcode[7]);
|
||||
regs->pr = (unsigned long) frame->retcode;
|
||||
flush_icache_range(regs->pr, regs->pr + sizeof(frame->retcode));
|
||||
}
|
||||
|
||||
if (err)
|
||||
|
@ -497,8 +498,6 @@ static int setup_rt_frame(int sig, struct k_sigaction *ka, siginfo_t *info,
|
|||
pr_debug("SIG deliver (%s:%d): sp=%p pc=%08lx pr=%08lx\n",
|
||||
current->comm, task_pid_nr(current), frame, regs->pc, regs->pr);
|
||||
|
||||
flush_icache_range(regs->pr, regs->pr + sizeof(frame->retcode));
|
||||
|
||||
return 0;
|
||||
|
||||
give_sigsegv:
|
||||
|
|
|
@ -35,6 +35,8 @@ static inline void __init smp_store_cpu_info(unsigned int cpu)
|
|||
{
|
||||
struct sh_cpuinfo *c = cpu_data + cpu;
|
||||
|
||||
memcpy(c, &boot_cpu_data, sizeof(struct sh_cpuinfo));
|
||||
|
||||
c->loops_per_jiffy = loops_per_jiffy;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue