1. 29 Jan, 2010 28 commits
  2. 28 Jan, 2010 2 commits
    • Anton Blanchard's avatar
      perf: Fix inconsistency between IP and callchain sampling · 339ce1a4
      Anton Blanchard authored
      When running perf across all cpus with backtracing (-a -g), sometimes we
      get samples without associated backtraces:
      
          23.44%         init  [kernel]                     [k] restore
          11.46%         init                       eeba0c  [k] 0x00000000eeba0c
           6.77%      swapper  [kernel]                     [k] .perf_ctx_adjust_freq
           5.73%         init  [kernel]                     [k] .__trace_hcall_entry
           4.69%         perf  libc-2.9.so                  [.] 0x0000000006bb8c
                             |
                             |--11.11%-- 0xfffa941bbbc
      
      It turns out the backtrace code has a check for the idle task and the IP
      sampling does not. This creates problems when profiling an interrupt
      heavy workload (in my case 10Gbit ethernet) since we get no backtraces
      for interrupts received while idle (ie most of the workload).
      
      Right now x86 and sh check that current is not NULL, which should never
      happen so remove that too.
      
      Idle task's exclusion must be performed from the core code, on top
      of perf_event_attr:exclude_idle.
      Signed-off-by: default avatarAnton Blanchard <anton@samba.org>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Paul Mundt <lethal@linux-sh.org>
      LKML-Reference: <20100118054707.GT12666@kryten>
      Signed-off-by: default avatarFrederic Weisbecker <fweisbec@gmail.com>
      339ce1a4
    • Mahesh Salgaonkar's avatar
      hw_breakpoints: Release the bp slot if arch_validate_hwbkpt_settings() fails. · b23ff0e9
      Mahesh Salgaonkar authored
      On a given architecture, when hardware breakpoint registration fails
      due to un-supported access type (read/write/execute), we lose the bp
      slot since register_perf_hw_breakpoint() does not release the bp slot
      on failure.
      Hence, any subsequent hardware breakpoint registration starts failing
      with 'no space left on device' error.
      
      This patch introduces error handling in register_perf_hw_breakpoint()
      function and releases bp slot on error.
      Signed-off-by: default avatarMahesh Salgaonkar <mahesh@linux.vnet.ibm.com>
      Cc: Ananth N Mavinakayanahalli <ananth@in.ibm.com>
      Cc: K. Prasad <prasad@linux.vnet.ibm.com>
      Cc: Maneesh Soni <maneesh@in.ibm.com>
      LKML-Reference: <20100121125516.GA32521@in.ibm.com>
      Signed-off-by: default avatarFrederic Weisbecker <fweisbec@gmail.com>
      b23ff0e9
  3. 27 Jan, 2010 9 commits
  4. 26 Jan, 2010 1 commit