Hi folks, This is the updated version of LKET. Compared with the previous version, it includes the following enhancements: 1. more event hooks 2. binary tracing for better performance 3. other performance enhancements & bugfixes 4. more backtrace support 5. a b2a converter to merge per-cpu files and convert binary format into ASCII format Currently LKET is actually a collection of SystemTap tapsets which are used to trace various events inside the kernel and generate the tracing data. This tool aims to provide an easy way to trace various events inside the kernel for the purpose of performance analysis. Since LKET is an extension to the tapsets library available on SystemTap, I hope LKET could go into SystemTap's tapsets library. So it will make SystemTap more easier to use even for those who don't know much about Linux Kernel internal, and thus benefit more people. Any comments about this proposal? Here's the events being implemented by now: System Call: entry of syscall return of syscall Process Creation: fork execve IO Scheduler: a request is retrieved from request queue a request is added to the request queue a request is completed Task Dispatching(scheduler): context switch cpu goes idle Scsi Activities mid-layer prepared a IO request Dispatch a command to the LLD I/O is done by LLD mid-layer processes the completed IO Pagefault a pagefault is taking place Networking Device network device receives a packet a packet will be sent out by network device During the LKET work, we also did some testing for overhead & accuracy. I planned to disclose the overhead testing result of LKET in the next couple of days. I attached the tgz package of LKET since the # of files is a little big. Suggestions, Comments, Flames are welcome. And thanks in advance for your help.