| Summary: | tapset/nd_syscalls.stp:# FIXME: doesn't handle sys_epoll_create1() | ||
|---|---|---|---|
| Product: | systemtap | Reporter: | Mark Wielaard <mark> |
| Component: | tapsets | Assignee: | Unassigned <systemtap> |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | CC: | dsmith |
| Priority: | P2 | ||
| Version: | unspecified | ||
| Target Milestone: | --- | ||
| Host: | Target: | ||
| Build: | Last reconfirmed: | ||
| Project(s) to access: | ssh public key: | ||
| Bug Depends on: | 11424 | ||
| Bug Blocks: | |||
The reason why it is done this way in syscalls.stp is that in the kernel sys_epoll_create is just a wrapper around sys_epoll_create1. This way we ignore the sys_epoll_create call, and only catch the sys_epoll_create1 call on kernels with sys_epoll_create1. Unfortunately, as bug #11424 notes, '!' (optional and sufficient) doesn't work for kprobe.function probes. So, the above logic will be difficult to duplicate in tapset/nd_syscalls.stp. Now that bug #11424 and bug #14378 are fixed, this bug can be addressed. Fixed in commit 3b9ac30. |
The corresponding tapset/syscalls.stp has: probe syscall.epoll_create = kernel.function("sys_epoll_create1").call !, kernel.function("sys_epoll_create").call ?