From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 27743 invoked by alias); 26 Nov 2007 08:48:27 -0000 Received: (qmail 27734 invoked by uid 22791); 26 Nov 2007 08:48:25 -0000 X-Spam-Status: No, hits=0.0 required=5.0 tests=AWL,BAYES_50,DK_POLICY_SIGNSOME,FORGED_RCVD_HELO,SPF_HELO_PASS,SPF_PASS,WLS_URI_OPT_0 X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (66.187.233.31) by sourceware.org (qpsmtpd/0.31) with ESMTP; Mon, 26 Nov 2007 08:48:18 +0000 Received: from int-mx1.corp.redhat.com (int-mx1.corp.redhat.com [172.16.52.254]) by mx1.redhat.com (8.13.8/8.13.1) with ESMTP id lAQ8mGV5015953 for ; Mon, 26 Nov 2007 03:48:16 -0500 Received: from pobox-2.corp.redhat.com (pobox-2.corp.redhat.com [10.11.255.15]) by int-mx1.corp.redhat.com (8.13.1/8.13.1) with ESMTP id lAQ8mGE4017852 for ; Mon, 26 Nov 2007 03:48:16 -0500 Received: from localhost.localdomain (vpn-6-11.fab.redhat.com [10.33.6.11]) by pobox-2.corp.redhat.com (8.13.1/8.13.1) with ESMTP id lAQ8mECP022735 for ; Mon, 26 Nov 2007 03:48:15 -0500 Message-ID: <474A884E.7070203@redhat.com> Date: Mon, 26 Nov 2007 08:48:00 -0000 From: Phil Muldoon User-Agent: Thunderbird 2.0.0.9 (X11/20071115) MIME-Version: 1.0 To: frysk@sourceware.org Subject: Re: [SCM] <..>: swagiaal: fstack now prints shortened path names by default References: <20071123205633.21966.qmail@sourceware.org> In-Reply-To: <20071123205633.21966.qmail@sourceware.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-IsSubscribed: yes Mailing-List: contact frysk-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: frysk-owner@sourceware.org X-SW-Source: 2007-q4/txt/msg00177.txt.bz2 swagiaal@sourceware.org wrote: Sami I think this code caused a small regression. Filed details here: http://sourceware.org/bugzilla/show_bug.cgi?id=5401 Regards Phil > The branch, master has been updated > via 62aaf4a1ee1f7a68ac9f8d694dd0bddba90c08ed (commit) > from 61673966237af43b52cb33a5f93a1803c66d2884 (commit) > > Those revisions listed above that are new to this repository have > not appeared on any other notification email. > > - Log ----------------------------------------------------------------- > commit 62aaf4a1ee1f7a68ac9f8d694dd0bddba90c08ed > Author: Sami Wagiaalla > Date: Fri Nov 23 15:48:53 2007 -0500 > > swagiaal: fstack now prints shortened path names by default > > frysk-core/frysk/bindir/ChangeLog > +2007-11-23 Sami Wagiaalla > + > + * fstack.java: Added -fullpath option > + > > frysk-core/frysk/debuginfo/ChangeLog > +2007-11-23 Sami Wagiaalla > + > + * DebugInfoFrame.java: Added ".../" befor abbrivated file path. > + * DebugInfoStackFactory.java: Removed misc print statement. > + > > frysk-core/frysk/proc/dead/ChangeLog > @@ -1,3 +1,7 @@ > +2007-11-23 Sami Wagiaalla > + > + * TestLinuxCore.java: Updated. > + > > frysk-core/frysk/stack/ChangeLog > +2007-11-23 Sami Wagiaalla > + > + * Frame.java (toPrint): Removed printlibrary boolean argument. > + added fullpath boolean argument. > + * StackFactory.java: Updated > + > > frysk-core/frysk/util/ChangeLog > +2007-11-23 Sami Wagiaalla > + > + Removed printlibrary boolean argument from Frame.toPrint() > + added fullpath boolean argument. > + * StacktraceAction.java: Updated. > + * StressTestFStack.java: Updated. > + * TestFStack.java: Updated. > + > > ----------------------------------------------------------------------- > > Summary of changes: > frysk-core/frysk/bindir/ChangeLog | 6 ++++++ > frysk-core/frysk/bindir/TestFstack.java | 14 +++++++------- > frysk-core/frysk/bindir/fstack.java | 16 +++++++++++----- > frysk-core/frysk/debuginfo/ChangeLog | 5 +++++ > frysk-core/frysk/debuginfo/DebugInfoFrame.java | 2 +- > .../frysk/debuginfo/DebugInfoStackFactory.java | 4 +--- > frysk-core/frysk/proc/dead/ChangeLog | 4 ++++ > frysk-core/frysk/proc/dead/TestLinuxCore.java | 4 ++-- > frysk-core/frysk/stack/ChangeLog | 6 ++++++ > frysk-core/frysk/stack/Frame.java | 15 +++++++++------ > frysk-core/frysk/stack/StackFactory.java | 4 ++-- > frysk-core/frysk/util/ChangeLog | 8 ++++++++ > frysk-core/frysk/util/StacktraceAction.java | 6 ++---- > frysk-core/frysk/util/StressTestFStack.java | 2 +- > frysk-core/frysk/util/TestFStack.java | 4 ++-- > 15 files changed, 67 insertions(+), 33 deletions(-) > > First 500 lines of diff: > diff --git a/frysk-core/frysk/bindir/ChangeLog b/frysk-core/frysk/bindir/ChangeLog > index 1921a3d..bc95dbe 100644 > --- a/frysk-core/frysk/bindir/ChangeLog > +++ b/frysk-core/frysk/bindir/ChangeLog > @@ -1,3 +1,9 @@ > +2007-11-23 Sami Wagiaalla > + > + * TestFstack.java (testBackTraceWithDashN): Updated regex to not > + match newline. > + * fstack.java: Added -fullpath option > + > 2007-11-22 Sami Wagiaalla > > * TestFstack.java (testBackTraceWithDashN): enabled test. > diff --git a/frysk-core/frysk/bindir/TestFstack.java b/frysk-core/frysk/bindir/TestFstack.java > index 61cd6ac..00f7eef 100644 > --- a/frysk-core/frysk/bindir/TestFstack.java > +++ b/frysk-core/frysk/bindir/TestFstack.java > @@ -142,18 +142,18 @@ public class TestFstack > > Expect e = fstack("funit-long-stack", new String[]{"-n","5"}); > e.expect("\\#0 .*crash[^\\r\\n]*"); > - e.expect("\\#1 .*first[^\\r\\n]*"); > - e.expect("\\#2 .*first[^\\r\\n]*"); > - e.expect("\\#3 .*first[^\\r\\n]*"); > - e.expect("\\#4 .*first[^\\r\\n]*"); > + e.expect("\\#1 [^\r\n]*first[^\\r\\n]*"); > + e.expect("\\#2 [^\r\n]*first[^\\r\\n]*"); > + e.expect("\\#3 [^\r\n]*first[^\\r\\n]*"); > + e.expect("\\#4 [^\r\n]*first[^\\r\\n]*"); > e.expect("..."); > e.close(); > > e = fstack("funit-long-stack", new String[]{"-n","4"}); > e.expect("\\#0 .*crash[^\\r\\n]*"); > - e.expect("\\#1 .*first[^\\r\\n]*"); > - e.expect("\\#2 .*first[^\\r\\n]*"); > - e.expect("\\#3 .*first[^\\r\\n]*"); > + e.expect("\\#1 [^\r\n]*first[^\\r\\n]*"); > + e.expect("\\#2 [^\r\n]*first[^\\r\\n]*"); > + e.expect("\\#3 [^\r\n]*first[^\\r\\n]*"); > e.expect("..."); > e.close(); > > diff --git a/frysk-core/frysk/bindir/fstack.java b/frysk-core/frysk/bindir/fstack.java > index bb4f250..98e1046 100644 > --- a/frysk-core/frysk/bindir/fstack.java > +++ b/frysk-core/frysk/bindir/fstack.java > @@ -73,7 +73,6 @@ public final class fstack > static boolean printParameters = false; > static boolean printScopes = false; > static boolean fullpath = false; > - static boolean printSourceLibrary = true; > > private static class Stacker extends StacktraceAction > { > @@ -81,9 +80,9 @@ public final class fstack > Proc proc; > public Stacker (PrintWriter printWriter, Proc theProc, Event theEvent,int numberOfFrames, boolean elfOnly, boolean virtualFrames, > boolean printParameters, boolean printScopes, > - boolean fullpath, boolean printSourceLibrary) > + boolean fullpath) > { > - super(printWriter, theProc, theEvent, numberOfFrames, elfOnly,virtualFrames, printParameters, printScopes, fullpath,printSourceLibrary); > + super(printWriter, theProc, theEvent, numberOfFrames, elfOnly,virtualFrames, printParameters, printScopes, fullpath); > this.proc = theProc; > } > > @@ -142,7 +141,7 @@ public final class fstack > { > > Proc proc = Util.getProcFromCoreExePair(coreExePair); > - stacker = new Stacker(printWriter, proc, new PrintEvent(), numberOfFrames, elfOnly,virtualFrames,printParameters,printScopes, fullpath,printSourceLibrary); > + stacker = new Stacker(printWriter, proc, new PrintEvent(), numberOfFrames, elfOnly,virtualFrames,printParameters,printScopes, fullpath); > new ProcCoreAction(proc, stacker); > Manager.eventLoop.run(); > } > @@ -150,7 +149,7 @@ public final class fstack > private static void stackPid (ProcId procId) > { > Proc proc = Util.getProcFromPid(procId); > - stacker = new Stacker(printWriter, proc, new AbandonPrintEvent(proc), numberOfFrames, elfOnly,virtualFrames,printParameters,printScopes, fullpath,printSourceLibrary); > + stacker = new Stacker(printWriter, proc, new AbandonPrintEvent(proc), numberOfFrames, elfOnly,virtualFrames,printParameters,printScopes, fullpath); > new ProcBlockAction(proc, stacker); > Manager.eventLoop.run(); > } > @@ -189,6 +188,13 @@ public final class fstack > } > }); > > + parser.add(new Option("fullpath", 'f', "print full path." + > + "-f prints full path") { > + public void parsed(String arg) throws OptionException { > + fullpath = true; > + } > + }); > + > > parser.add(new Option("all", 'a', "print all information that can currently be retrieved" + > "about the stack\n" + > diff --git a/frysk-core/frysk/debuginfo/ChangeLog b/frysk-core/frysk/debuginfo/ChangeLog > index c4b34b3..47e4b91 100644 > --- a/frysk-core/frysk/debuginfo/ChangeLog > +++ b/frysk-core/frysk/debuginfo/ChangeLog > @@ -1,5 +1,10 @@ > 2007-11-23 Sami Wagiaalla > > + * DebugInfoFrame.java: Added ".../" befor abbrivated file path. > + * DebugInfoStackFactory.java: Removed misc print statement. > + > +2007-11-23 Sami Wagiaalla > + > * TestTypeEntry.java (testClassWithStaticMembers): enabled > test. > > diff --git a/frysk-core/frysk/debuginfo/DebugInfoFrame.java b/frysk-core/frysk/debuginfo/DebugInfoFrame.java > index 5a60f7e..3c17d38 100644 > --- a/frysk-core/frysk/debuginfo/DebugInfoFrame.java > +++ b/frysk-core/frysk/debuginfo/DebugInfoFrame.java > @@ -231,7 +231,7 @@ public class DebugInfoFrame extends FrameDecorator { > writer.print(line.getLine()); > } else { > Line line = this.getLines()[0]; > - writer.print(line.getFile().getName()); > + writer.print(".../"+line.getFile().getName()); > writer.print("#"); > writer.print(line.getLine()); > } > diff --git a/frysk-core/frysk/debuginfo/DebugInfoStackFactory.java b/frysk-core/frysk/debuginfo/DebugInfoStackFactory.java > index 83a0cb3..dda6ea5 100644 > --- a/frysk-core/frysk/debuginfo/DebugInfoStackFactory.java > +++ b/frysk-core/frysk/debuginfo/DebugInfoStackFactory.java > @@ -124,9 +124,7 @@ public class DebugInfoStackFactory { > boolean printScopes, > boolean fullpath) { > > - System.out.println("DebugInfoStackFactory.printStackTrace() numberOfFrames " + numberOfFrames); > - > - int count = 0; > + int count = 0; > for (DebugInfoFrame frame = topFrame; frame != null; > frame = frame.getOuterDebugInfoFrame()) { > > diff --git a/frysk-core/frysk/proc/dead/ChangeLog b/frysk-core/frysk/proc/dead/ChangeLog > index 63adddf..377d92e 100644 > --- a/frysk-core/frysk/proc/dead/ChangeLog > +++ b/frysk-core/frysk/proc/dead/ChangeLog > @@ -1,3 +1,7 @@ > +2007-11-23 Sami Wagiaalla > + > + * TestLinuxCore.java: Updated. > + > 2007-11-23 Mark Wielaard > > * LinuxExeTask.java (bankBuffers): New final field. > diff --git a/frysk-core/frysk/proc/dead/TestLinuxCore.java b/frysk-core/frysk/proc/dead/TestLinuxCore.java > index 8d41403..3845f70 100644 > --- a/frysk-core/frysk/proc/dead/TestLinuxCore.java > +++ b/frysk-core/frysk/proc/dead/TestLinuxCore.java > @@ -159,7 +159,7 @@ public class TestLinuxCore > liveStacktrace = new StacktraceAction(new PrintWriter(liveStackOutput), > testProc, > new RequestStopEvent(Manager.eventLoop),0, > - true, false, false, false, false, false) > + true, false, false, false, false) > > { > > @@ -191,7 +191,7 @@ public class TestLinuxCore > coreProc, > new PrintEvent(),0, > true, false, false, false , > - false, false) > + false) > { > > public void addFailed (Object observable, Throwable w) > diff --git a/frysk-core/frysk/stack/ChangeLog b/frysk-core/frysk/stack/ChangeLog > index 72d529b..514e3fa 100644 > --- a/frysk-core/frysk/stack/ChangeLog > +++ b/frysk-core/frysk/stack/ChangeLog > @@ -1,3 +1,9 @@ > +2007-11-23 Sami Wagiaalla > + > + * Frame.java (toPrint): Removed printlibrary boolean argument. > + added fullpath boolean argument. > + * StackFactory.java: Updated > + > 2007-11-23 Mark Wielaard > > * LibunwindAddressSpace.java (getModuleFromAddress): Removed. > diff --git a/frysk-core/frysk/stack/Frame.java b/frysk-core/frysk/stack/Frame.java > index 1eee2eb..9a84283 100644 > --- a/frysk-core/frysk/stack/Frame.java > +++ b/frysk-core/frysk/stack/Frame.java > @@ -39,6 +39,7 @@ > > package frysk.stack; > > +import java.io.File; > import java.io.PrintWriter; > > import frysk.isa.Register; > @@ -150,7 +151,7 @@ public abstract class Frame { > * Write a simple string representation of this stack frame. > * @param printWriter > */ > - public void toPrint (PrintWriter writer, boolean printSourceLibrary) { > + public void toPrint (PrintWriter writer, boolean fullpath) { > // the address, padded with 0s based on the task's word size, ... > writer.write("0x"); > String addr = Long.toHexString(getAddress()); > @@ -165,11 +166,13 @@ public abstract class Frame { > if (symbol != SymbolFactory.UNKNOWN) > writer.write(" ()"); > // the library if known ... > - if (printSourceLibrary) { > - String library = getLibraryName(); > - if (library != null) { > - writer.print(" from "); > - writer.print(library); > + File library = new File(getLibraryName()); > + if (library != null) { > + writer.print(" from "); > + if (fullpath) { > + writer.print(library.getAbsolutePath()); > + }else{ > + writer.print(".../"+library.getName()); > } > } > } > diff --git a/frysk-core/frysk/stack/StackFactory.java b/frysk-core/frysk/stack/StackFactory.java > index 0bdaced..4a68a58 100644 > --- a/frysk-core/frysk/stack/StackFactory.java > +++ b/frysk-core/frysk/stack/StackFactory.java > @@ -87,7 +87,7 @@ public class StackFactory > > public static final void printTaskStackTrace(PrintWriter writer, > Task task, > - boolean printSourceLibrary, int numberOfFrames) { > + boolean fullpath, int numberOfFrames) { > if (task != null) { > writer.print("Task #"); > writer.print(task.getTid()); > @@ -102,7 +102,7 @@ public class StackFactory > > frame.printLevel(writer); > writer.print(" "); > - frame.toPrint(writer, printSourceLibrary); > + frame.toPrint(writer, fullpath); > writer.println(); > } > } > diff --git a/frysk-core/frysk/util/ChangeLog b/frysk-core/frysk/util/ChangeLog > index f3b20f5..b7b6829 100644 > --- a/frysk-core/frysk/util/ChangeLog > +++ b/frysk-core/frysk/util/ChangeLog > @@ -1,3 +1,11 @@ > +2007-11-23 Sami Wagiaalla > + > + Removed printlibrary boolean argument from Frame.toPrint() > + added fullpath boolean argument. > + * StacktraceAction.java: Updated. > + * StressTestFStack.java: Updated. > + * TestFStack.java: Updated. > + > 2007-11-23 Mark Wielaard > > * CountDownLatch.java (await): Mark as synchronized. > diff --git a/frysk-core/frysk/util/StacktraceAction.java b/frysk-core/frysk/util/StacktraceAction.java > index 2418dc7..855eea3 100644 > --- a/frysk-core/frysk/util/StacktraceAction.java > +++ b/frysk-core/frysk/util/StacktraceAction.java > @@ -83,7 +83,6 @@ public abstract class StacktraceAction > boolean printParameters; > boolean printScopes; > boolean fullpath; > - boolean printSourceLibrary; > private boolean virtualFrames; > > protected static Logger logger = Logger.getLogger("frysk"); > @@ -106,7 +105,7 @@ public abstract class StacktraceAction > * file path is printed other wise only the name of the file is printed. > * @throws ProcException > */ > - public StacktraceAction (PrintWriter printWriter, Proc theProc, Event theEvent, int numberOfFrames, boolean elfOnly, boolean virtualFrames, boolean printParameters, boolean printScopes, boolean fullpath, boolean printSourceLibrary) > + public StacktraceAction (PrintWriter printWriter, Proc theProc, Event theEvent, int numberOfFrames, boolean elfOnly, boolean virtualFrames, boolean printParameters, boolean printScopes, boolean fullpath) > { > event = theEvent; > > @@ -116,7 +115,6 @@ public abstract class StacktraceAction > this.printParameters = printParameters; > this.printScopes = printScopes; > this.fullpath = fullpath; > - this.printSourceLibrary = printSourceLibrary; > > this.printWriter = printWriter; > Manager.eventLoop.add(new InterruptEvent(theProc)); > @@ -153,7 +151,7 @@ public abstract class StacktraceAction > Task task = (Task) iter.next(); > > if(elfOnly){ > - StackFactory.printTaskStackTrace(printWriter,task,printSourceLibrary, numberOfFrames); > + StackFactory.printTaskStackTrace(printWriter,task,fullpath, numberOfFrames); > }else{ > if(virtualFrames){ > DebugInfoStackFactory.printVirtualTaskStackTrace(printWriter,task,numberOfFrames, printParameters,printScopes,fullpath); > diff --git a/frysk-core/frysk/util/StressTestFStack.java b/frysk-core/frysk/util/StressTestFStack.java > index deb2b88..c38cd9f 100644 > --- a/frysk-core/frysk/util/StressTestFStack.java > +++ b/frysk-core/frysk/util/StressTestFStack.java > @@ -88,7 +88,7 @@ public class StressTestFStack > { > proc.requestAbandonAndRunEvent(new RequestStopEvent(Manager.eventLoop)); > } > - },0, true,false, false, false, false,true) > + },0, true,false, false, false, true) > { > > public void addFailed (Object observable, Throwable w) > diff --git a/frysk-core/frysk/util/TestFStack.java b/frysk-core/frysk/util/TestFStack.java > index 42b5df8..dbbdcdf 100644 > --- a/frysk-core/frysk/util/TestFStack.java > +++ b/frysk-core/frysk/util/TestFStack.java > @@ -104,7 +104,7 @@ public class TestFStack > > StacktraceAction stacker; > > - stacker = new StacktraceAction(new PrintWriter(stringWriter),proc, new RequestStopEvent(Manager.eventLoop),20, true, false,false, false, false,true) > + stacker = new StacktraceAction(new PrintWriter(stringWriter),proc, new RequestStopEvent(Manager.eventLoop),20, true, false,false, false, true) > { > > public void addFailed (Object observable, Throwable w) > @@ -145,7 +145,7 @@ public class TestFStack > Proc proc = (Proc) iter.next(); > StacktraceAction stacker; > > - stacker = new StacktraceAction(new PrintWriter(stringWriter),proc, new RequestStopEvent(Manager.eventLoop),20, true, false,false, false, false,true) > + stacker = new StacktraceAction(new PrintWriter(stringWriter),proc, new RequestStopEvent(Manager.eventLoop),20, true, false,false, false,true) > { > > public void addFailed (Object observable, Throwable w) > > > hooks/post-receive > -- > frysk system monitor/debugger >