地方エンジニアの学習日記

興味ある技術の雑なメモだったりを書いてくブログ。たまに日記とガジェット紹介。

eBPFでPIDを取得

BCCのツールで直接取得

data.e_pid = bpf_get_current_pid_tgid();

上位32ビット TGID 下位32ビット PID

の64ビットを返り値で渡してくれるヘルパー関数

BCCでtask_struct構造体から取得する

struct task_struct *task;
task = (struct task_struct *)bpf_get_current_task();
data.t_pid = task->tgid;