summaryrefslogtreecommitdiffstats
path: root/runtime
diff options
context:
space:
mode:
authorFrank Ch. Eigler <fche@elastic.org>2008-04-25 16:33:24 -0400
committerFrank Ch. Eigler <fche@elastic.org>2008-04-25 16:33:24 -0400
commit76d647dc1fdf1d6bb4397f4a3b819003492dfda6 (patch)
tree51b9d7a1f0ee75a41c487828d5e62c6a70b7fd28 /runtime
parentc47ccf304e6560cb50c86c2a5213c8de56678449 (diff)
parent9f99b110fbee8a6935ca60c152cc3c7cd809461b (diff)
downloadsystemtap-steved-76d647dc1fdf1d6bb4397f4a3b819003492dfda6.tar.gz
systemtap-steved-76d647dc1fdf1d6bb4397f4a3b819003492dfda6.tar.xz
systemtap-steved-76d647dc1fdf1d6bb4397f4a3b819003492dfda6.zip
Merge branch 'master' of ssh://sources.redhat.com/git/systemtap into pr6429-comp-unwindsyms
* 'master' of ssh://sources.redhat.com/git/systemtap: simplify systemtap.spec configuration vars Handles markers with no format string. Fixed task_finder.c kernel 2.6.25 change. PR6454: fix "stap -l" listing of space-laden probe point names Move examples to testsuite/systemtap.examples. PR6451: avoid one class of staprun shutdown deadlock (module/.ctl filehandle = 0) Made kernel 2.6.25 changes in task_finder.c. Move examples to testsuite/systemtap.examples PR6416: extend probing blacklist with more init/exit sections
Diffstat (limited to 'runtime')
-rw-r--r--runtime/ChangeLog9
-rw-r--r--runtime/staprun/ChangeLog6
-rw-r--r--runtime/staprun/common.c2
-rw-r--r--runtime/staprun/ctl.c4
-rw-r--r--runtime/task_finder.c11
5 files changed, 24 insertions, 8 deletions
diff --git a/runtime/ChangeLog b/runtime/ChangeLog
index e3c1ea8d..a2e49822 100644
--- a/runtime/ChangeLog
+++ b/runtime/ChangeLog
@@ -1,3 +1,12 @@
+2008-04-25 David Smith <dsmith@redhat.com>
+
+ From Srinivasa <srinivasa@in.ibm.com>
+ * task_finder.c (__stp_get_mm_path): Fixed kernel 2.6.25 change.
+
+2008-04-24 David Smith <dsmith@redhat.com>
+
+ * task_finder.c (__stp_get_mm_path): Made kernel 2.6.25 changes.
+
2008-04-16 David Smith <dsmith@redhat.com>
* task_finder.c (__stp_get_mm_path): Made kernel 2.6.18 changes.
diff --git a/runtime/staprun/ChangeLog b/runtime/staprun/ChangeLog
index f1abd736..9e0ccb73 100644
--- a/runtime/staprun/ChangeLog
+++ b/runtime/staprun/ChangeLog
@@ -1,3 +1,9 @@
+2008-04-24 Frank Ch. Eigler <fche@elastic.org>
+
+ PR 6451.
+ * common.c (control_channel): Initialize to -1.
+ * ctl.c (close_ctl_channel): Tolerate fd=0.
+
2008-04-22 Martin Hunt <hunt@redhat.com>
* cap.c (init_cap): Detect capabilities failure and
diff --git a/runtime/staprun/common.c b/runtime/staprun/common.c
index f8fc418c..b716d27f 100644
--- a/runtime/staprun/common.c
+++ b/runtime/staprun/common.c
@@ -31,7 +31,7 @@ char *modname = NULL;
char *modpath = "";
char *modoptions[MAXMODOPTIONS];
-int control_channel = 0;
+int control_channel = -1; /* NB: fd==0 possible */
void parse_args(int argc, char **argv)
{
diff --git a/runtime/staprun/ctl.c b/runtime/staprun/ctl.c
index 15c5c3d3..4597bf72 100644
--- a/runtime/staprun/ctl.c
+++ b/runtime/staprun/ctl.c
@@ -46,8 +46,8 @@ int init_ctl_channel(const char *name, int verb)
void close_ctl_channel(void)
{
- if (control_channel > 0) {
+ if (control_channel >= 0) {
close(control_channel);
- control_channel = 0;
+ control_channel = -1;
}
}
diff --git a/runtime/task_finder.c b/runtime/task_finder.c
index d0a9a40f..aafe9c32 100644
--- a/runtime/task_finder.c
+++ b/runtime/task_finder.c
@@ -153,11 +153,12 @@ __stp_get_mm_path(struct mm_struct *mm, char *buf, int buflen)
vma = vma->vm_next;
}
if (vma) {
- struct vfsmount *mnt = mntget(vma->vm_file->f_vfsmnt);
- struct dentry *dentry = dget(vma->vm_file->f_dentry);
- rc = d_path(dentry, mnt, buf, buflen);
- dput(dentry);
- mntput(mnt);
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,25)
+ rc = d_path(vma->vm_file->f_dentry, vma->vm_file->f_vfsmnt,
+ buf, buflen);
+#else
+ rc = d_path(&(vma->vm_file->f_path), buf, buflen);
+#endif
}
else {
*buf = '\0';