Patch #1 fixed a rcu stall warning when traversing large number of tasks/files without overflowing seq_file buffer. The method is to control the number of visited objects in bpf_seq_read() so all bpf iterators will benefit. Patch #2 calculated tid properly in a namespace in order to avoid visiting the name task multiple times. Patch #3 handled read() error code EAGAIN properly in bpftool bpf_iter userspace code to collect pids. The change is needed due to Patch #1. Yonghong Song (3): bpf: fix a rcu_sched stall issue with bpf task/task_file iterator bpf: avoid visit same object multiple times bpftool: handle EAGAIN error code properly in pids collection kernel/bpf/bpf_iter.c | 15 ++++++++++++++- kernel/bpf/task_iter.c | 3 ++- tools/bpf/bpftool/pids.c | 2 ++ 3 files changed, 18 insertions(+), 2 deletions(-) -- 2.24.1