1. 14 1月, 2009 4 次提交
    • F
      tracing: add a new workqueue tracer · e1d8aa9f
      Frederic Weisbecker 提交于
      Impact: new tracer
      
      The workqueue tracer provides some statistical informations
      about each cpu workqueue thread such as the number of the
      works inserted and executed since their creation. It can help
      to evaluate the amount of work each of them have to perform.
      For example it can help a developer to decide whether he should
      choose a per cpu workqueue instead of a singlethreaded one.
      
      It only traces statistical informations for now but it will probably later
      provide event tracing too.
      
      Such a tracer could help too, and be improved, to help rt priority sorted
      workqueue development.
      
      To have a snapshot of the workqueues state at any time, just do
      
      cat /debugfs/tracing/trace_stat/workqueues
      
      Ie:
      
        1    125        125       reiserfs/1
        1      0          0       scsi_tgtd/1
        1      0          0       aio/1
        1      0          0       ata/1
        1    114        114       kblockd/1
        1      0          0       kintegrityd/1
        1   2147       2147       events/1
      
        0      0          0       kpsmoused
        0    105        105       reiserfs/0
        0      0          0       scsi_tgtd/0
        0      0          0       aio/0
        0      0          0       ata_aux
        0      0          0       ata/0
        0      0          0       cqueue
        0      0          0       kacpi_notify
        0      0          0       kacpid
        0    149        149       kblockd/0
        0      0          0       kintegrityd/0
        0   1000       1000       khelper
        0   2270       2270       events/0
      
      Changes in V2:
      
      _ Drop the static array based on NR_CPU and dynamically allocate the stat array
        with num_possible_cpus() and other cpu mask facilities....
      _ Trace workqueue insertion at a bit lower level (insert_work instead of queue_work) to handle
        even the workqueue barriers.
      Signed-off-by: NFrederic Weisbecker <fweisbec@gmail.com>
      Signed-off-by: NSteven Rostedt <srostedt@redhat.com>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      e1d8aa9f
    • F
      tracing/ftrace: separate events tracing and stats tracing engine · 002bb86d
      Frederic Weisbecker 提交于
      Impact: tracing's Api change
      
      Currently, the stat tracing depends on the events tracing.
      When you switch to a new tracer, the stats files of the previous tracer
      will disappear. But it's more scalable to separate those two engines.
      This way, we can keep the stat files of one or several tracers when we
      want, without bothering of multiple tracer stat files or tracer switching.
      
      To build/destroys its stats files, a tracer just have to call
      register_stat_tracer/unregister_stat_tracer everytimes it wants to.
      Signed-off-by: NFrederic Weisbecker <fweisbec@gmail.com>
      Signed-off-by: NSteven Rostedt <srostedt@redhat.com>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      002bb86d
    • S
      ftrace, ia64: Add macro for ftrace_caller · f0001207
      Shaohua Li 提交于
      Define FTRACE_ADDR. In IA64, a function pointer isn't a 'unsigned long' but a
      'struct {unsigned long ip, unsigned long gp}'.
      Signed-off-by: NShaohua Li <shaohua.li@intel.com>
      Signed-off-by: NSteven Rostedt <srostedt@redhat.com>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      f0001207
    • S
      ftrace, ia64: explictly ignore a file in recordmcount.pl · 25aac9dc
      Shaohua Li 提交于
      In IA64, a function pointer isn't a 'unsigned long' but a
      'struct {unsigned long ip, unsigned long gp}'. MCOUNT_ADDR is determined
      at link time not compile time, so explictly ignore kernel/trace/ftrace.o
      in recordmcount.pl.
      Signed-off-by: NShaohua Li <shaohua.li@intel.com>
      Signed-off-by: NSteven Rostedt <srostedt@redhat.com>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      25aac9dc
  2. 11 1月, 2009 5 次提交
  3. 10 1月, 2009 3 次提交
  4. 09 1月, 2009 27 次提交
  5. 08 1月, 2009 1 次提交