-
Notifications
You must be signed in to change notification settings - Fork 314
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
elf: perf event ordering has bugs #42
Comments
Discussion about clock bpf_ktime_get_ns and clock_gettime: iovisor/bcc#931
|
@alban what's left here? Could this be the cause of weaveworks/scope#2650 ? |
We continue to observe events arriving out of order from time to time. Would it be an idea to adjust |
The algorithm to re-order perf events coming from several cpus has some bugs:
incoming
is modified inside the loopI can reproduce the issue with incorrect ordering with this test. I attach a eBPF kprobe on the
uname
system call. A shell script to rununame
in a loop was not fast enough to reproduce the problem, so I needed to write a small program in Golang runningsyscall.Uname
as fast as possible, then execute it in parallel in 2 different cpus:taskset --cpu-list 0 uname-loop
taskset --cpu-list 1 uname-loop
I am working on a patch. I want to avoid using the userspace clock
clock_gettime
at all./cc @iaguis @krnowak @2opremio
The text was updated successfully, but these errors were encountered: