This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
[SYSTEMTAP/PATCH v3 0/9] RT aware systemtap patch set
- From: Santosh Shukla <sshukla at mvista dot com>
- To: fche at redhat dot com, dsmith at redhat dot com, jistone at redhat dot com
- Cc: systemtap at sourceware dot org, Santosh Shukla <sshukla at mvista dot com>
- Date: Mon, 22 Sep 2014 12:56:53 +0530
- Subject: [SYSTEMTAP/PATCH v3 0/9] RT aware systemtap patch set
- Authentication-results: sourceware.org; auth=none
Hi,
This is a v3 version of -rt aware systemtap patchset, Majorly includes bug fixes
reported by systemtap autotest "make installcheck". Tested for 3.14.12-rt9
kernel for -rt and non-rt mode. Test went fine. For v1 & v2 related details
refer thread [1], [2]. Patchset based on stap upstream link [3] master branch,
commit id 687a0c357137cf05c6350bffc94f7161a93a7
Change summary;
v2->v3 :
- Deadlock fixes noticed by "make installcheck".
- Tested for non-rt 3.14.12 vanilla kernel using el7 default config.
- Tested for -rt kernel using same el7 default desktop config.
v1->v2 :
- added Locking helper api. tested for -rt and voluntary mode, works fine.
- reverted v1 change of rd/wr lock with rcu to raw_spinlock in this patch, that
is beacuse for rcu to effectively get in use in stap modules like utrace.c
and task_finder.c, require to make desing change in general. However it would
improve the performance,
- Removed v1's adder_map patch set, as it wasn't troubling -rt mode.
Test script used for testing :
- /usr/local/stap/bin/stap -v testsuite/systemtap.examples/network/netdev.stp
- /usr/local/stap/bin/stap -v testsuite/systemtap.examples/network/tcpdumplike.stp
- Few other test example script used :
cat ../test-indent.stp
probe kernel.function("*@net/socket.c").call
{
printf ("%s -> %s\n", thread_indent(1), probefunc())
}
probe kernel.function("*@net/socket.c").return
{
printf ("%s <- %s\n", thread_indent(-1), probefunc())
}
- AND tested for "make installcheck"
[1] http://sourceware-org.1504.n7.nabble.com/SYSTEMTAP-PATCH-0-4-RT-aware-systemtap-patch-set-td282463.html
[2] http://sourceware-org.1504.n7.nabble.com/SYSTEMTAP-PATCH-v2-0-6-RT-aware-systemtap-patch-set-td283446.html
[3] git://sourceware.org/git/systemtap.git; branch master
Let me know your fedback. Hopefully v3 could be final version to get merged to
uptsream as initial -rt version patchset. And from there onwards I would look
at optimising locking in general[todo].. Thanks.
Santosh Shukla (9):
stp: rt: locking helper api
stp: rt: replace __stp_tf_map_lock rd/wr lock with stp style raw lock
stp: rt: replace __stp_tf_vma_lock rd/wr lock with stp style of raw
lock
stp: rt: replace utrace->lock with stp style raw lock
stp: rt: replace utrace_struct lock to stp style raw lock
stp: rt: replace __stp_tf_task_work_list_lock to stp raw
stp: rt: replace addr_map_lock rd/wr lock with stp type raw lock
stp: rt: replace stp_print lock with stp style lock
stp: rt: fix preemptible bug_on for STAT_GET_CPU
runtime/linux/addr-map.c | 15 +++---
runtime/linux/stat_runtime.h | 4 ++
runtime/linux/task_finder2.c | 14 +++---
runtime/linux/task_finder_map.c | 27 ++++++-----
runtime/print_flush.c | 6 +--
runtime/stp_helper_lock.h | 80 +++++++++++++++++++++++++++++++
runtime/stp_utrace.c | 103 ++++++++++++++++++++--------------------
runtime/task_finder_vma.c | 33 ++++++-------
8 files changed, 185 insertions(+), 97 deletions(-)
create mode 100644 runtime/stp_helper_lock.h
--
1.8.3.1