1. 17 Sep, 2010 4 commits
    • Peter Zijlstra's avatar
      perf: Fix perf_event_exit_cpu_context() · 917bdd1c
      Peter Zijlstra authored
      Use the right cpu-context.. spotted by preempt warning on
      hot-unplug
      Signed-off-by: default avatarPeter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Robert Richter <robert.richter@amd.com>
      LKML-Reference: <20100917093009.461794357@chello.nl>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      917bdd1c
    • Peter Zijlstra's avatar
      perf: Complete software pmu grouping · b04243ef
      Peter Zijlstra authored
      Aside from allowing software events into a !software group,
      allow adding !software events to pure software groups.
      
      Once we've moved the software group and attached the first
      !software event, the group will no longer be a pure software
      group and hence no longer be eligible for movement, at which
      point the straight ctx comparison is correct again.
      Signed-off-by: default avatarPeter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Robert Richter <robert.richter@amd.com>
      Cc: Paul Mackerras <paulus@samba.org>
      LKML-Reference: <20100917093009.410784731@chello.nl>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      b04243ef
    • Stephane Eranian's avatar
      perf_events: Fix broken event grouping · d14b12d7
      Stephane Eranian authored
      Events were not grouped anymore. The reason was that in
      perf_event_open(), the field event->group_leader was
      initialized before the function looked up the group_fd
      to find the event leader. This patch fixes this by
      reordering the code correctly.
      Signed-off-by: default avatarStephane Eranian <eranian@google.com>
      Signed-off-by: default avatarPeter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Robert Richter <robert.richter@amd.com>
      LKML-Reference: <20100917093009.360420946@chello.nl>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      d14b12d7
    • Jean Pihet's avatar
      tracing, perf: Add more power related events · 74704ac6
      Jean Pihet authored
      This patch adds new generic events for dynamic power management
      tracing:
      
       - clock events class: used for clock enable/disable and for
         clock rate change,
       - power_domain events class: used for power domains transitions.
      
      The OMAP architecture will be using the new events for PM debugging,
      however the new events are made generic enough to be used by all
      platforms.
      Signed-off-by: default avatarJean Pihet <j-pihet@ti.com>
      Acked-by: default avatarThomas Renninger <trenn@suse.de>
      Cc: discuss@lesswatts.org
      Cc: linux-pm@lists.linux-foundation.org
      Cc: Thomas Renninger <trenn@suse.de>
      Cc: Arjan van de Ven <arjan@linux.intel.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Len Brown <len.brown@intel.com>
      Cc: Kevin Hilman <khilman@deeprootsystems.com>
      LKML-Reference: <AANLkTinUmbSUUuxUzc8++pcb9gd1CZFdyTQFrveTBXyV@mail.gmail.com>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      74704ac6
  2. 15 Sep, 2010 15 commits
  3. 14 Sep, 2010 4 commits
    • Steven Rostedt's avatar
      tracing: Fix reading of set_ftrace_filter across lists · 57c072c7
      Steven Rostedt authored
      If we do:
      
       # cd /sys/kernel/debug
       # echo 'do_IRQ:traceon schedule:traceon sys_write:traceon' > \
          set_ftrace_filter
       # cat set_ftrace_filter
      
      We get the following output:
      
       #### all functions enabled ####
       sys_write:traceon:unlimited
       schedule:traceon:unlimited
       do_IRQ:traceon:unlimited
      
      This outputs two lists. One is the fact that all functions are
      currently enabled for function tracing, the other has three probed
      functions, which happen to have 'traceon' as their commands.
      
      Currently, when reading the first list (functions enabled) the
      seq_file code will receive a "NULL" from the t_next() function
      causing it to exit early. This makes "read()" from userspace stop
      reading the code at this boarder. Although read is allowed to do this,
      some (broken) applications might consider this an end of file and
      stop early.
      
      This patch adds the start of the second list to t_next() when it
      finishes the first list. It is a simple change and gives the
      set_ftrace_filter file nicer reading ability.
      Signed-off-by: default avatarSteven Rostedt <rostedt@goodmis.org>
      57c072c7
    • Steven Rostedt's avatar
      tracing: Keep track of set_ftrace_filter position and allow lseek again · 98c4fd04
      Steven Rostedt authored
      This patch keeps track of the index within the elements of
      set_ftrace_filter and if the position goes backwards, it nicely
      resets and starts from the beginning again.
      
      This allows for lseek and pread to work properly now.
      Signed-off-by: default avatarSteven Rostedt <rostedt@goodmis.org>
      98c4fd04
    • Steven Rostedt's avatar
      tracing: Replace typecasted void pointer in set_ftrace_filter code · 4aeb6967
      Steven Rostedt authored
      The set_ftrace_filter uses seq_file and reads from two lists. The
      pointer returned by t_next() can either be of type struct dyn_ftrace
      or struct ftrace_func_probe. If there is a bug (there was one)
      the wrong pointer may be used and the reference can cause an oops.
      
      This patch makes t_next() and friends only return the iterator structure
      which now has a pointer of type struct dyn_ftrace and struct
      ftrace_func_probe. The t_show() can now test if the pointer is NULL or
      not and if the pointer exists, it is guaranteed to be of the correct type.
      
      Now if there's a bug, only wrong data will be shown but not an oops.
      
      Cc: Chris Wright <chrisw@sous-sol.org>
      Signed-off-by: default avatarSteven Rostedt <rostedt@goodmis.org>
      4aeb6967
    • Steven Rostedt's avatar
      tracing: Do not reset *pos in set_ftrace_filter · 2bccfffd
      Steven Rostedt authored
      After the filtered functions are read, the probed functions are read
      from the hash in set_ftrace_filter. When the hashed probed functions
      are read, the *pos passed in is reset. Instead of modifying the pos
      given to the read function, just record the pos where the filtered
      functions ended and subtract from that.
      Signed-off-by: default avatarSteven Rostedt <rostedt@goodmis.org>
      2bccfffd
  4. 13 Sep, 2010 17 commits