1. 22 5月, 2008 1 次提交
  2. 24 4月, 2008 1 次提交
  3. 25 3月, 2008 1 次提交
    • D
      [SPARC64]: Make save_stack_trace() more efficient. · 85a79353
      David S. Miller 提交于
      Doing a 'flushw' every stack trace capture creates so much overhead
      that it makes lockdep next to unusable.
      
      We only care about the frame pointer chain and the function caller
      program counters, so flush those by hand to the stack frame.
      
      This is significantly more efficient than a 'flushw' because:
      
      1) We only save 16 bytes per active register window to the stack.
      
      2) This doesn't push the entire register window context of the current
         call chain out of the cpu, forcing register window fill traps as we
         return back down.
      
      Note that we can't use 'restore' and 'save' instructions to move
      around the register windows because that wouldn't work on Niagara
      processors.  They optimize 'save' into a new register window by
      simply clearing out the registers instead of pulling them in from
      the on-chip register window backing store.
      
      Based upon a report by Tom Callaway.
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      85a79353
  4. 09 5月, 2007 1 次提交
  5. 10 12月, 2006 1 次提交