On 03/01/2012 10:20 AM, Liu Yuan wrote:

> v3:
> - fix trace_lookup_ip()
> - fix main thread ring buffer init
> - fix pop_return_trace()
> 
> v2:
>  - use ring buffer for trace output
>  - add a cat operation for collie
> 
> This patch set aims to provide a ftrace-like trace utility for performance 
> tuning 
> of online system in production environment. This means virtually no overhead 
> when
> disabled, rather low even enabled.
> 
> Currently 'graph' tracer is implemented, accounting CPU usage at funciton 
> granularity.
> 
> The patch set achieves this by dynamically patching the binary code at 
> runtime, making
> use of GCC -pg instrumentation features, which instrument a 5-bytes opcode in 
> every function.
> 
> When the trace is
>  turned off, the opcode is patched as NOP opcode.
>  turned on, the opcode is a call opcode to our trace functions and we can 
> hook callbacks both for
> function entry and exit. This is how the patch atually calculate the time 
> spent by function.
> 
> The underlying infrastructure is quite modular, I hope we can implement other 
> tracers that considered useful
> later.
> 

Hi Kazum,

How is my patch that remove the coroutine usage? Is there any problem?
Currently, trace can't work with coroutine.

Thanks,
Yuan

-- 
sheepdog mailing list
[email protected]
http://lists.wpkg.org/mailman/listinfo/sheepdog

Reply via email to