frysk.ftrace
Class TaskTracer

java.lang.Object
  extended by frysk.ftrace.TaskTracer
All Implemented Interfaces:
Ftrace.Driver

 class TaskTracer
extends Object
implements Ftrace.Driver

Package private implementation of Ftrace.Driver interface.


Nested Class Summary
private  class TaskTracer.AddressObserver
           
private  class TaskTracer.FunctionEnterObserver
           
private  class TaskTracer.FunctionReturnObserver
           
private  class TaskTracer.TracePoint
           
 
Field Summary
(package private)  Arch arch
           
private static Log fine
           
private static Log finest
           
private  Ftrace ftrace
           
private  Map functionReturnObservers
           
private  Map symbolObserversForTask
           
private static Log warning
           
 
Constructor Summary
TaskTracer(Ftrace ftrace, Task task)
           
 
Method Summary
private  Long getAddress(DwflSymbol sym, PLTEntry entry)
           
private  TaskTracer.FunctionEnterObserver getObserver(Task task, DwflSymbol sym, PLTEntry entry)
           
 void traceAddress(Task task, Long addrToken, long bias, ObjectFile objf)
           
 void tracePLTEntry(Task task, PLTEntry entry)
           
 void traceSymbol(Task task, DwflSymbol sym)
           
 void untrace(Task task, List traceables)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

fine

private static final Log fine

finest

private static final Log finest

warning

private static final Log warning

functionReturnObservers

private Map functionReturnObservers

arch

final Arch arch

ftrace

private final Ftrace ftrace

symbolObserversForTask

private final Map symbolObserversForTask
Constructor Detail

TaskTracer

public TaskTracer(Ftrace ftrace,
                  Task task)
Method Detail

getAddress

private Long getAddress(DwflSymbol sym,
                        PLTEntry entry)

getObserver

private TaskTracer.FunctionEnterObserver getObserver(Task task,
                                                     DwflSymbol sym,
                                                     PLTEntry entry)

traceSymbol

public void traceSymbol(Task task,
                        DwflSymbol sym)
Specified by:
traceSymbol in interface Ftrace.Driver

tracePLTEntry

public void tracePLTEntry(Task task,
                          PLTEntry entry)
Specified by:
tracePLTEntry in interface Ftrace.Driver

untrace

public void untrace(Task task,
                    List traceables)
Specified by:
untrace in interface Ftrace.Driver

traceAddress

public void traceAddress(Task task,
                         Long addrToken,
                         long bias,
                         ObjectFile objf)
Specified by:
traceAddress in interface Ftrace.Driver