- during an exec, flush the cached "stat", don't re-read it -

frysk-0.4-flushstat.patch
- document ftrace's -f/-follow option, update tests -
    frysk-0.4-ftrace.patch
This commit is contained in:
cagney 2010-03-30 19:26:58 +00:00
commit caaf827d2e
3 changed files with 75 additions and 1 deletions

26
frysk-0.4-flushstat.patch Normal file
View file

@ -0,0 +1,26 @@
diff -up frysk-0.4/frysk-core/frysk/proc/live/LinuxPtraceProc.java.flushstat frysk-0.4/frysk-core/frysk/proc/live/LinuxPtraceProc.java
--- frysk-0.4/frysk-core/frysk/proc/live/LinuxPtraceProc.java.flushstat 2010-03-30 14:06:41.000000000 -0400
+++ frysk-0.4/frysk-core/frysk/proc/live/LinuxPtraceProc.java 2010-03-30 14:44:09.000000000 -0400
@@ -244,6 +244,9 @@ public class LinuxPtraceProc extends Liv
return stat;
}
private Stat stat;
+ void flushStat() {
+ stat = null;
+ }
public String getCommand() {
return getStat().comm;
diff -up frysk-0.4/frysk-core/frysk/proc/live/LinuxPtraceTaskState.java.flushstat frysk-0.4/frysk-core/frysk/proc/live/LinuxPtraceTaskState.java
--- frysk-0.4/frysk-core/frysk/proc/live/LinuxPtraceTaskState.java.flushstat 2010-03-30 14:06:41.000000000 -0400
+++ frysk-0.4/frysk-core/frysk/proc/live/LinuxPtraceTaskState.java 2010-03-30 14:44:32.000000000 -0400
@@ -867,7 +867,8 @@ abstract class LinuxPtraceTaskState exte
}
LinuxPtraceTaskState handleExecedEvent(LinuxPtraceTask task) {
fine.log("handleExecedEvent", task);
- ((LinuxPtraceProc)task.getProc()).getStat().scan(task.tid);
+
+ ((LinuxPtraceProc)task.getProc()).flushStat();
// All breakpoints have been erased. We need to
// explicitly tell those attached to the current Task.

38
frysk-0.4-ftrace.patch Normal file
View file

@ -0,0 +1,38 @@
diff -up frysk-0.4/frysk-core/frysk/bindir/ftrace.xml-in.ftrace frysk-0.4/frysk-core/frysk/bindir/ftrace.xml-in
--- frysk-0.4/frysk-core/frysk/bindir/ftrace.xml-in.ftrace 2010-03-30 14:56:44.000000000 -0400
+++ frysk-0.4/frysk-core/frysk/bindir/ftrace.xml-in 2010-03-30 15:01:54.000000000 -0400
@@ -77,7 +77,8 @@
<refsynopsisdiv>
<cmdsynopsis>
<command>ftrace</command>
- <arg choice="opt">-c</arg>
+ <arg choice="opt">-f</arg>
+ <arg choice="opt">-follow</arg>
<arg choice="opt">-dl</arg>
<arg choice="opt">-m</arg>
<arg choice="opt">-o=<replaceable>FILE</replaceable></arg>
@@ -118,9 +119,10 @@
</varlistentry>
<varlistentry>
- <term>-c</term>
+ <term>-f</term>
+ <term>-follow</term>
<listitem>
- <para>Trace children: automatically attach to forks of
+ <para>Follow children: automatically attach to forks of
traced process.</para>
</listitem>
</varlistentry>
diff -up frysk-0.4/frysk-core/frysk/bindir/TestFtrace.java.ftrace frysk-0.4/frysk-core/frysk/bindir/TestFtrace.java
--- frysk-0.4/frysk-core/frysk/bindir/TestFtrace.java.ftrace 2010-03-30 14:56:36.000000000 -0400
+++ frysk-0.4/frysk-core/frysk/bindir/TestFtrace.java 2010-03-30 15:00:32.000000000 -0400
@@ -65,7 +65,7 @@ public class TestFtrace extends TestLib
"-sys=",
"/bin/ls"
});
- e.expect("execve");
+ e.expect("attached");
e.expect("close");
}

View file

@ -1,7 +1,7 @@
Summary: Execution analysis and debugging tool-suite.
Name: frysk
Version: 0.4
Release: 25%{?dist}
Release: 26%{?dist}
# antlrv2 is Public Domain; antlrv3 is BSD.
# getopt is GPLv2 with exception
@ -35,6 +35,8 @@ Patch12: frysk-0.4-taskstoperr.patch
Patch13: frysk-0.4-lostfork.patch
Patch14: frysk-0.4-nooptimize.patch
Patch15: frysk-0.4-skipdecl.patch
Patch16: frysk-0.4-flushstat.patch
Patch17: frysk-0.4-ftrace.patch
Patch100: frysk-0.4-aclocaljavac.patch
@ -167,6 +169,8 @@ mv frysk-core/frysk/util/ProcStopUtil.java frysk-core/frysk/util/TaskStopUtil.ja
%patch13 -p1 -z .lostfork
%patch14 -p1 -z .nooptimize
%patch15 -p1 -z .skipdecl
%patch16 -p1 -z .flushstat
%patch17 -p1 -z .ftrace
%if %{fedora}0 >= 130
%patch100 -p1 -z .aclocaljavac
@ -358,6 +362,12 @@ rm -rf %{buildroot}
%{_mandir}/man1/frysk.1.gz
%changelog
* Tue Mar 30 2010 Andrew Cagney <cagney [at] fedoraproject.org> - 0.4-26
- during an exec, flush the cached "stat", don't re-read it -
frysk-0.4-flushstat.patch
- document ftrace's -f/-follow option, update tests -
frysk-0.4-ftrace.patch
* Tue Mar 30 2010 Andrew Cagney <cagney [at] fedoraproject.org> - 0.4-25
- for stack tests use a pragma to reduce optimization level -
frysk-0.4-nooptimize