ia64: Remove perfmon
[linux-2.6-microblaze.git] / arch / ia64 / kernel / process.c
index f19cb97..e74e10f 100644 (file)
 
 #include "entry.h"
 
-#ifdef CONFIG_PERFMON
-# include <asm/perfmon.h>
-#endif
-
 #include "sigframe.h"
 
 void (*ia64_mark_idle)(int);
@@ -174,15 +170,6 @@ do_notify_resume_user(sigset_t *unused, struct sigscratch *scr, long in_syscall)
                return;
        }
 
-#ifdef CONFIG_PERFMON
-       if (current->thread.pfm_needs_checking)
-               /*
-                * Note: pfm_handle_work() allow us to call it with interrupts
-                * disabled, and may enable interrupts within the function.
-                */
-               pfm_handle_work();
-#endif
-
        /* deal with pending signal delivery */
        if (test_thread_flag(TIF_SIGPENDING)) {
                local_irq_enable();     /* force interrupt enable */
@@ -264,41 +251,15 @@ void arch_cpu_idle(void)
 void
 ia64_save_extra (struct task_struct *task)
 {
-#ifdef CONFIG_PERFMON
-       unsigned long info;
-#endif
-
        if ((task->thread.flags & IA64_THREAD_DBG_VALID) != 0)
                ia64_save_debug_regs(&task->thread.dbr[0]);
-
-#ifdef CONFIG_PERFMON
-       if ((task->thread.flags & IA64_THREAD_PM_VALID) != 0)
-               pfm_save_regs(task);
-
-       info = __this_cpu_read(pfm_syst_info);
-       if (info & PFM_CPUINFO_SYST_WIDE)
-               pfm_syst_wide_update_task(task, info, 0);
-#endif
 }
 
 void
 ia64_load_extra (struct task_struct *task)
 {
-#ifdef CONFIG_PERFMON
-       unsigned long info;
-#endif
-
        if ((task->thread.flags & IA64_THREAD_DBG_VALID) != 0)
                ia64_load_debug_regs(&task->thread.dbr[0]);
-
-#ifdef CONFIG_PERFMON
-       if ((task->thread.flags & IA64_THREAD_PM_VALID) != 0)
-               pfm_load_regs(task);
-
-       info = __this_cpu_read(pfm_syst_info);
-       if (info & PFM_CPUINFO_SYST_WIDE)
-               pfm_syst_wide_update_task(task, info, 1);
-#endif
 }
 
 /*
@@ -432,11 +393,6 @@ copy_thread(unsigned long clone_flags, unsigned long user_stack_base,
         */
        child_ptregs->cr_ipsr = ((child_ptregs->cr_ipsr | IA64_PSR_BITS_TO_SET)
                                 & ~(IA64_PSR_BITS_TO_CLEAR | IA64_PSR_PP | IA64_PSR_UP));
-
-#ifdef CONFIG_PERFMON
-       if (current->thread.pfm_context)
-               pfm_inherit(p, child_ptregs);
-#endif
        return retval;
 }
 
@@ -563,15 +519,6 @@ exit_thread (struct task_struct *tsk)
 {
 
        ia64_drop_fpu(tsk);
-#ifdef CONFIG_PERFMON
-       /* if needed, stop monitoring and flush state to perfmon context */
-       if (tsk->thread.pfm_context)
-               pfm_exit_thread(tsk);
-
-       /* free debug register resources */
-       if (tsk->thread.flags & IA64_THREAD_DBG_VALID)
-               pfm_release_debug_registers(tsk);
-#endif
 }
 
 unsigned long