]> git.karo-electronics.de Git - mv-sheeva.git/commitdiff
Merge branch 'perf-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
authorLinus Torvalds <torvalds@linux-foundation.org>
Tue, 15 Feb 2011 18:18:48 +0000 (10:18 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 15 Feb 2011 18:18:48 +0000 (10:18 -0800)
* 'perf-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  x86: Fix text_poke_smp_batch() deadlock
  perf tools: Fix thread_map event synthesizing in top and record
  watchdog, nmi: Lower the severity of error messages
  ARM: oprofile: Fix backtraces in timer mode
  oprofile: Fix usage of CONFIG_HW_PERF_EVENTS for oprofile_perf_init and friends

1  2 
arch/arm/oprofile/common.c

index 6adda2b5fa31728a934c7400bcd17d5724d265ca,2b663918c464352b459029f0376c3e8e6bce05a4..c074e66ad224e83d18d1f278afc78aa00e18b494
@@@ -10,8 -10,6 +10,6 @@@
   */
  
  #include <linux/cpumask.h>
- #include <linux/err.h>
- #include <linux/errno.h>
  #include <linux/init.h>
  #include <linux/mutex.h>
  #include <linux/oprofile.h>
@@@ -46,6 -44,7 +44,7 @@@ char *op_name_from_perf_id(void
                return NULL;
        }
  }
+ #endif
  
  static int report_trace(struct stackframe *frame, void *d)
  {
@@@ -85,7 -84,7 +84,7 @@@ static struct frame_tail* user_backtrac
  
        /* frame pointers should strictly progress back up the stack
         * (towards higher addresses) */
 -      if (tail >= buftail[0].fp)
 +      if (tail + 1 >= buftail[0].fp)
                return NULL;
  
        return buftail[0].fp-1;
@@@ -111,6 -110,7 +110,7 @@@ static void arm_backtrace(struct pt_reg
  
  int __init oprofile_arch_init(struct oprofile_operations *ops)
  {
+       /* provide backtrace support also in timer mode: */
        ops->backtrace          = arm_backtrace;
  
        return oprofile_perf_init(ops);
@@@ -120,11 -120,3 +120,3 @@@ void __exit oprofile_arch_exit(void
  {
        oprofile_perf_exit();
  }
- #else
- int __init oprofile_arch_init(struct oprofile_operations *ops)
- {
-       pr_info("oprofile: hardware counters not available\n");
-       return -ENODEV;
- }
- void __exit oprofile_arch_exit(void) {}
- #endif /* CONFIG_HW_PERF_EVENTS */