iovisor / iovisor/bcc

bcc-tools: trace.py syscall trace not working for proccess in container(lxc)

Open
#4,946 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
C
Stars
22.7k
Forks
4.1k
Avg merge
10d 4h
Merged PRs (30d)
3

Description

im trying to debug a init proccess in a lxc container. for better reproduce, im using `mknod` tool instead bellow

with `trace 'c:mknodat "%s", arg2'` i can see the call to `mknodat` while im running `mknod test c 1 11` out of container.

but if i run the same thing in container. trace.py didnt show me anything. by using strace, i confirmed the `mknodat` syscall has been send out without any issue.

is this a expected behavior?

im using `trace 'filename_create(int dfd, struct filename *name, struct path *path, unsigned int lookup_flags) "%s", name->name' -UK` (and find through stack manually) as a alternative now. because `do_mknodat` not exported and optimized by compiler, which changed signature

version: 5f21a7274
kernel version: 6.8.1

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with trace.py and reproduce the mknodat case on kernel 6.8.1 both inside and outside the LXC container, comparing BCC output with strace. Determine whether the missing trace is expected and identify the relevant attachment or filtering behavior; done means the behavior is explained and a concrete correction or documentation outcome is defined.

Written by the indexing model from the issue text.

Assessment

Tech stack
linux, python
Domain
observability, operating-systems, tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.