Bug 5671 - fdebuginfo doesn't stop the process
Summary: fdebuginfo doesn't stop the process
Status: RESOLVED FIXED
Alias: None
Product: frysk
Classification: Unclassified
Component: general (show other bugs)
Version: unspecified
: P2 normal
Target Milestone: ---
Assignee: Teresa Thomas
URL:
Keywords:
Depends on:
Blocks: 5656
  Show dependency treegraph
 
Reported: 2008-01-25 17:15 UTC by Andrew Cagney
Modified: 2008-01-29 15:52 UTC (History)
0 users

See Also:
Host:
Target:
Build:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Andrew Cagney 2008-01-25 17:15:24 UTC
when determining the debug-info, fdebuginfo makes calls that only work reliably
when the process is blocked, for instance:

 testPathListing(frysk.bindir.TestFdebuginfo)frysk.expunit.EndOfFileException:
end-of-file; expecting: 
<</home/scratch/frysk/git/native/frysk-core/frysk/pkglibdir/funit-slave>>;
buffer <<Exception in thread "main" java.lang.NullPointerException: ISA
unavailable; task
{frysk.proc.live.LinuxPtraceTask@37334f81,pid=30365,tid=30365,state=detached}
has no observers
   at frysk.proc.live.LinuxPtraceTask.getISA(fdebuginfo)
   at frysk.proc.live.LinuxPtraceTask.getMemory(fdebuginfo)
   at frysk.dwfl.DwflFactory.updateDwfl(fdebuginfo)
   at frysk.dwfl.DwflCache.getDwfl(fdebuginfo)
   at frysk.util.DebuginfoPaths.getDebuginfo(fdebuginfo)
   at frysk.bindir.fdebuginfo.printDebuginfo(fdebuginfo)
   at frysk.bindir.fdebuginfo.access$0(fdebuginfo)
   at frysk.bindir.fdebuginfo$1.parsePids(fdebuginfo)
   at frysk.util.CommandlineParser.doParse(fdebuginfo)
   at frysk.util.CommandlineParser.parse(fdebuginfo)
   at frysk.bindir.fdebuginfo.main(fdebuginfo)
>>
   at frysk.expunit.Expect.expectMilliseconds(TestRunner)
   at frysk.expunit.Expect.expect(TestRunner)
   at frysk.expunit.Expect.expect(TestRunner)
   at frysk.expunit.Expect.expect(TestRunner)
   at frysk.expunit.Expect.expect(TestRunner)
   at frysk.bindir.TestFdebuginfo.testPathListing(TestRunner)
   at frysk.junit.Runner.runCases(TestRunner)
   at frysk.junit.Runner.runTestCases(TestRunner)
   at TestRunner.main(TestRunner)
Comment 1 Teresa Thomas 2008-01-29 15:52:13 UTC
    Stop task before gathering debugging info.
    
    frysk-core/frysk/bindir/ChangeLog
    2008-01-28  Teresa Thomas  <tthomas@redhat.com>
    
    	* fdebuginfo.java (PrintDebuginfoEvent): New.
    	(PrintDebuginfoAction): New.
    	(.parseCores, .parseCommand): Use PrintDebuginfoEvent.
    	(.parsePids): Use PrintDebuginfoAction.
    	* TestFdebuginfo.java (testPathListing): Remove unresolved.