Sindbad~EG File Manager

Current Path : /proc/1603417/root/usr/share/systemtap/examples/process/
Upload File :
Current File : //proc/1603417/root/usr/share/systemtap/examples/process/sched-latency.stp

#!/usr/bin/stap

# inspired by Tom Zanussi's example from https://lkml.org/lkml/2017/2/8/996

global ts0%, latency%

function now() { return gettimeofday_us() }

probe kernel.trace("sched_wakeup") { ts0[$p->pid] = now() }
probe kernel.trace("sched_switch") {
       	if (ts0[$next->pid]) latency[$next->pid,$next->prio] <<< now() - ts0[$next->pid];
}
probe timer.s(5) {
	foreach ([pid+,x] in latency) {
	       	println("pid:", pid, " prio:", x) print(@hist_log(latency[pid,x]))
	}
       	delete latency 
}

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists