From efac4101206a397355ea713cb09204f1b85fc82d Mon Sep 17 00:00:00 2001 From: Sam Ravnborg Date: Sun, 27 May 2012 23:35:16 +0200 Subject: [PATCH] --- yaml --- r: 309537 b: refs/heads/master c: 3732106a1a565a592966290fbcef322db9933f91 h: refs/heads/master i: 309535: 5fe74cb88599631b8812bd339b4b53af88a520a4 v: v3 --- [refs] | 2 +- trunk/arch/sparc/kernel/process_32.c | 35 ++++------------------------ 2 files changed, 6 insertions(+), 31 deletions(-) diff --git a/[refs] b/[refs] index 10880fcf8947..cee40ccc7ac0 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 805918f80fb11d95e9b117a6faf5a6a7a8339e49 +refs/heads/master: 3732106a1a565a592966290fbcef322db9933f91 diff --git a/trunk/arch/sparc/kernel/process_32.c b/trunk/arch/sparc/kernel/process_32.c index fe6787cc62fc..cb36e82dcd5d 100644 --- a/trunk/arch/sparc/kernel/process_32.c +++ b/trunk/arch/sparc/kernel/process_32.c @@ -65,50 +65,25 @@ extern void fpsave(unsigned long *, unsigned long *, void *, unsigned long *); struct task_struct *last_task_used_math = NULL; struct thread_info *current_set[NR_CPUS]; -#ifndef CONFIG_SMP - /* * the idle loop on a Sparc... ;) */ void cpu_idle(void) { - /* endless idle loop with no priority at all */ - for (;;) { - if (pm_idle) { - while (!need_resched()) - (*pm_idle)(); - } else { - while (!need_resched()) - cpu_relax(); - } - schedule_preempt_disabled(); - } -} - -#else + set_thread_flag(TIF_POLLING_NRFLAG); -/* This is being executed in task 0 'user space'. */ -void cpu_idle(void) -{ - set_thread_flag(TIF_POLLING_NRFLAG); /* endless idle loop with no priority at all */ - while(1) { -#ifdef CONFIG_SPARC_LEON - if (pm_idle) { - while (!need_resched()) + for (;;) { + while (!need_resched()) { + if (pm_idle) (*pm_idle)(); - } else -#endif - { - while (!need_resched()) + else cpu_relax(); } schedule_preempt_disabled(); } } -#endif - /* XXX cli/sti -> local_irq_xxx here, check this works once SMP is fixed. */ void machine_halt(void) {