linux/arch/ia64/oprofile/init.c
<<
>>
Prefs
   1/**
   2 * @file init.c
   3 *
   4 * @remark Copyright 2002 OProfile authors
   5 * @remark Read the file COPYING
   6 *
   7 * @author John Levon <levon@movementarian.org>
   8 */
   9
  10#include <linux/kernel.h>
  11#include <linux/oprofile.h>
  12#include <linux/init.h>
  13#include <linux/errno.h>
  14 
  15extern int perfmon_init(struct oprofile_operations *ops);
  16extern void perfmon_exit(void);
  17extern void ia64_backtrace(struct pt_regs * const regs, unsigned int depth);
  18
  19int __init oprofile_arch_init(struct oprofile_operations *ops)
  20{
  21        int ret = -ENODEV;
  22
  23#ifdef CONFIG_PERFMON
  24        /* perfmon_init() can fail, but we have no way to report it */
  25        ret = perfmon_init(ops);
  26#endif
  27        ops->backtrace = ia64_backtrace;
  28
  29        return ret;
  30}
  31
  32
  33void oprofile_arch_exit(void)
  34{
  35#ifdef CONFIG_PERFMON
  36        perfmon_exit();
  37#endif
  38}
  39