This is the mail archive of the systemtap@sourceware.org mailing list for the systemtap project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug tapsets/16667] need to add clone() syscall support to the syscall/nd_syscall tapsets


https://sourceware.org/bugzilla/show_bug.cgi?id=16667

--- Comment #2 from David Smith <dsmith at redhat dot com> ---
I was working on a fix to look at the syscall number to figure out if the user
had called fork() vs. vfork() vs. clone(). It worked pretty well, until I
tested it against a 3.10 kernel on ppc64.

Our syscall.fork really probes 'kernel.function("do_fork")', the function that
sys_fork(), sys_vfork(), and sys_clone() call. However, do_fork() can be
inlined on 3.10 ppc64, and sys_vfork() ends up calling the inlined version of
do_fork(). We can access the arguments of the inlined version of do_fork(), but
we miss the .return.

So, I'm now thinking of splitting out fork/vfork/clone and just probe the
sys_fork()/sys_vfork()/sys_clone() entry points. This is a behavior change, but
perhaps for the best.

-- 
You are receiving this mail because:
You are the assignee for the bug.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]