top | item 27164037

(no title)

bonobocop | 4 years ago

I used BPF (using _both_ of Brendan Gregg's recent books!) on our Jenkins builds recently to figure out why `TRUNCATE` statements were taking longer than I expected.

The underlying cause was that `ext4` filesystem was journalled and the `fsync`s were waiting on `jbd2_log_wait_commit`, which offcpu sampling let me pick up.

I don't think I would have been able to trace the kernel call and link it all the way back to the application call without BPF (at least I wouldn't have been able to).

discuss

order

mettamage|4 years ago

Thanks for this story! I haven’t seen many practical examples yet.

Fun fun :)