1. 19 7月, 2014 7 次提交
  2. 17 7月, 2014 5 次提交
  3. 16 7月, 2014 1 次提交
  4. 09 7月, 2014 1 次提交
  5. 02 7月, 2014 1 次提交
  6. 01 7月, 2014 22 次提交
  7. 30 6月, 2014 3 次提交
    • S
      ftrace: Add ftrace_rec_counter() macro to simplify the code · 0376bde1
      Steven Rostedt (Red Hat) 提交于
      The ftrace dynamic record has a flags element that also has a counter.
      Instead of hard coding "rec->flags & ~FTRACE_FL_MASK" all over the
      place. Use a macro instead.
      Signed-off-by: NSteven Rostedt <rostedt@goodmis.org>
      0376bde1
    • S
      ftrace: Use macros for numbers in ftrace rec shift bits · cf2cb0b2
      Steven Rostedt (Red Hat) 提交于
      As new flags will be added to the ftrace dynamic record, and since
      the flags field is also a counter, converting the numbers used to
      do the shifting and masking into a set of macros where we only need
      to deal with the max bit count of the counter and the number of bits
      for the flags will prevent mistakes in the future.
      
      Dealing with only two numbers is much easier than updating all the
      macros that deal with shifting and masking.
      Signed-off-by: NSteven Rostedt <rostedt@goodmis.org>
      cf2cb0b2
    • S
      ftrace: Allow no regs if no more callbacks require it · 4fbb48cb
      Steven Rostedt (Red Hat) 提交于
      When registering a function callback for the function tracer, the ops
      can specify if it wants to save full regs (like an interrupt would)
      for each function that it traces, or if it does not care about regs
      and just wants to have the fastest return possible.
      
      Once a ops has registered a function, if other ops register that
      function they all will receive the regs too. That's because it does
      the work once, it does it for everyone.
      
      Now if the ops wanting regs unregisters the function so that there's
      only ops left that do not care about regs, those ops will still
      continue getting regs and going through the work for it on that
      function. This is because the disabling of the rec counter only
      sees the ops registered, and does not see the ops that are still
      attached, and does not know if the current ops that are still attached
      want regs or not. To play it safe, it just keeps regs being processed
      until no function is registered anymore.
      
      Instead of doing that, check the ops that are still registered for that
      function and if none want regs for it anymore, then disable the
      processing of regs.
      Signed-off-by: NSteven Rostedt <rostedt@goodmis.org>
      4fbb48cb