dyninst.git
9 years agoBuild fixes for NewInstpoint merge on FreeBSD.
Dan McNulty [Wed, 11 May 2011 19:49:11 +0000 (14:49 -0500)]
Build fixes for NewInstpoint merge on FreeBSD.

9 years agoMerge branch 'dyn_pc_integration' of ssh://git.dyninst.org/pub/dyninst into dyn_pc_in...
Daniel McNulty [Wed, 11 May 2011 17:22:06 +0000 (12:22 -0500)]
Merge branch 'dyn_pc_integration' of ssh://git.dyninst.org/pub/dyninst into dyn_pc_integration

9 years agoFix bug in ForceTerminate on Linux/ppc
Daniel McNulty [Wed, 11 May 2011 17:12:17 +0000 (12:12 -0500)]
Fix bug in ForceTerminate on Linux/ppc

On bruckner, a ForceTerminate will cause pre-Exit and pre-LWP destroy
events to be created in response to the terminate. Due to some
OS-level race condition, the OS will deliver a post-Exit for the
process but it will still exist in a stopped state. Continues do
not cause the process to exit.

The workaround for this bug is unset ptrace event options for
the process before terminate so we will not get the pre-Exit and
pre-LWP destroy events. This appears to avoid the case where the
process will be stopped following a ForceTerminate.

9 years agoSome fixes for changes introduced by NewInstpoint merge.
Daniel McNulty [Wed, 11 May 2011 14:34:17 +0000 (09:34 -0500)]
Some fixes for changes introduced by NewInstpoint merge.

* BPatch_basicBlock destructor now only deletes outgoing edges to
  avoid double deletes.
* Remove creation of rtdump.txt
* Fix creation of Symtab object for in-memory backing

9 years agoBuild fix for stackwalking changes.
Daniel McNulty [Mon, 9 May 2011 20:00:04 +0000 (15:00 -0500)]
Build fix for stackwalking changes.

9 years agoMerge branch 'dyn_pc_integration' of ssh://git.dyninst.org/pub/dyninst into dyn_pc_in...
Daniel McNulty [Mon, 9 May 2011 19:53:26 +0000 (14:53 -0500)]
Merge branch 'dyn_pc_integration' of ssh://git.dyninst.org/pub/dyninst into dyn_pc_integration

9 years agoFixes for bugs introduced by previous merge.
Daniel McNulty [Mon, 9 May 2011 19:45:18 +0000 (14:45 -0500)]
Fixes for bugs introduced by previous merge.

Besides compilation bugs and quelling compiler warnings, the
following changes were made:

- fixed access to BPatchStopThreadCallbacks and BPatch_libInfo
- added creation function to baseTramp for iRPCs -- we use
  baseTramps to perform the saves for and restores for iRPCs
- modified AddressSpace::relocateInt to use PCThread objects instead
  of dyn_thread

9 years agoConverted Dyninst Stackwalker helpers to use new instrumentation interface.
Todd Frederick [Mon, 9 May 2011 15:46:18 +0000 (10:46 -0500)]
Converted Dyninst Stackwalker helpers to use new instrumentation interface.

9 years agoProgress integrating new instpoint with dyn_pc_integration
Todd Frederick [Fri, 6 May 2011 19:48:00 +0000 (14:48 -0500)]
Progress integrating new instpoint with dyn_pc_integration

9 years agoMerge branch 'NewInstpoint' into dyn_pc_integration
Todd Frederick [Fri, 6 May 2011 16:21:32 +0000 (11:21 -0500)]
Merge branch 'NewInstpoint' into dyn_pc_integration

Conflicts:
Makefile
dataflowAPI/h/SymEval.h
dataflowAPI/h/stackanalysis.h
dataflowAPI/src/Visitors.C
dataflowAPI/src/slicing.C
dataflowAPI/src/stackanalysis.C
dyninstAPI/h/BPatch.h
dyninstAPI/h/BPatch_binaryEdit.h
dyninstAPI/h/BPatch_flowGraph.h
dyninstAPI/h/BPatch_function.h
dyninstAPI/make.module.tmpl
dyninstAPI/ppc32_linux/Makefile
dyninstAPI/src/BPatch.C
dyninstAPI/src/BPatch_addressSpace.C
dyninstAPI/src/BPatch_asyncEventHandler.C
dyninstAPI/src/BPatch_asyncEventHandler.h
dyninstAPI/src/BPatch_basicBlock.C
dyninstAPI/src/BPatch_function.C
dyninstAPI/src/BPatch_image.C
dyninstAPI/src/BPatch_module.C
dyninstAPI/src/BPatch_process.C
dyninstAPI/src/BPatch_snippet.C
dyninstAPI/src/BPatch_thread.C
dyninstAPI/src/EventHandler.C
dyninstAPI/src/EventHandler.h
dyninstAPI/src/RegisterConversion.h
dyninstAPI/src/Relocation/patchapi_debug.h
dyninstAPI/src/addressSpace.h
dyninstAPI/src/aix.C
dyninstAPI/src/baseTramp.C
dyninstAPI/src/baseTramp.h
dyninstAPI/src/callbacks.C
dyninstAPI/src/callbacks.h
dyninstAPI/src/codegen-x86.C
dyninstAPI/src/codegen.C
dyninstAPI/src/codegen.h
dyninstAPI/src/debug.C
dyninstAPI/src/debuggerinterface.h
dyninstAPI/src/dyn_lwp.C
dyninstAPI/src/dyn_lwp.h
dyninstAPI/src/dyn_thread.C
dyninstAPI/src/dyn_thread.h
dyninstAPI/src/dynamiclinking.C
dyninstAPI/src/dynamiclinking.h
dyninstAPI/src/emit-x86.C
dyninstAPI/src/eventgate.C
dyninstAPI/src/frame.C
dyninstAPI/src/frame.h
dyninstAPI/src/freebsd.C
dyninstAPI/src/function.C
dyninstAPI/src/function.h
dyninstAPI/src/hybridCallbacks.C
dyninstAPI/src/hybridInstrumentation.C
dyninstAPI/src/hybridOverwrites.C
dyninstAPI/src/inferiorRPC.h
dyninstAPI/src/inst-power.C
dyninstAPI/src/inst-winnt.C
dyninstAPI/src/inst-x86.C
dyninstAPI/src/inst.h
dyninstAPI/src/instPoint.C
dyninstAPI/src/instPoint.h
dyninstAPI/src/linux-power.C
dyninstAPI/src/linux-x86.C
dyninstAPI/src/linux.C
dyninstAPI/src/linuxDL.C
dyninstAPI/src/mailbox.h
dyninstAPI/src/mapped_object.C
dyninstAPI/src/mapped_object.h
dyninstAPI/src/miniTramp.C
dyninstAPI/src/miniTramp.h
dyninstAPI/src/multiTramp.C
dyninstAPI/src/multiTramp.h
dyninstAPI/src/pdwinnt.C
dyninstAPI/src/process.C
dyninstAPI/src/process.h
dyninstAPI/src/procfs.C
dyninstAPI/src/reloc-func.C
dyninstAPI/src/replacedInstruction.C
dyninstAPI/src/rpcMgr-lwp.C
dyninstAPI/src/rpcMgr-thr.C
dyninstAPI/src/rpcMgr.C
dyninstAPI/src/rpcMgr.h
dyninstAPI/src/signalgenerator-unix.h
dyninstAPI/src/signalgenerator-winnt.h
dyninstAPI/src/signalgenerator.C
dyninstAPI/src/signalgenerator.h
dyninstAPI/src/signalhandler.C
dyninstAPI/src/signalhandler.h
dyninstAPI/src/solaris.C
dyninstAPI/src/stackwalk-x86.C
dyninstAPI/src/symtab.h
dyninstAPI/src/syscall-linux.C
dyninstAPI/src/unix.C
dyninstAPI/src/vxworks.C
dyninstAPI/x86_64-unknown-linux2.4/Makefile
dyninstAPI_RT/src/RTthread-index.c
dyninstAPI_RT/src/RTthread.c
instructionAPI/src/Operation.C
instructionAPI/src/Register.C
parseThat/Makefile.in
proccontrol/amd64-unknown-freebsd7.2/Makefile
proccontrol/i386-unknown-freebsd7.2/Makefile
proccontrol/i386-unknown-linux2.4/Makefile
proccontrol/src/linux.C
proccontrol/x86_64-unknown-linux2.4/Makefile
stackwalk/i386-unknown-linux2.4/Makefile
stackwalk/src/catamount-swk.C
stackwalk/src/dbginfo-stepper.C
stackwalk/src/linux-ppc-swk.C
stackwalk/src/linux-swk.C
stackwalk/x86_64-unknown-linux2.4/Makefile
stackwalk/x86_64_cnl/Makefile
testsuite/amd64-unknown-freebsd7.2/tuples
testsuite/i386-unknown-freebsd7.2/tuples
testsuite/i386-unknown-linux2.4/tuples
testsuite/i386-unknown-nt4.0/tuples
testsuite/make.module.tmpl
testsuite/src/test_driver.C
testsuite/x86_64-unknown-linux2.4/tuples

9 years agoMerge branch 'dyn_pc_integration' of ssh://wasabi.cs.wisc.edu/p/paradyn/development...
Dan McNulty [Fri, 6 May 2011 14:24:24 +0000 (09:24 -0500)]
Merge branch 'dyn_pc_integration' of ssh://wasabi.cs.wisc.edu/p/paradyn/development/mcnulty/d0/dyninst into dyn_pc_integration

9 years agoMerge branch 'dyn_pc_integration' of ssh://git.dyninst.org/pub/dyninst into dyn_pc_in...
Daniel McNulty [Fri, 6 May 2011 14:22:05 +0000 (09:22 -0500)]
Merge branch 'dyn_pc_integration' of ssh://git.dyninst.org/pub/dyninst into dyn_pc_integration

9 years agoMerge branch 'dyn_pc_integration' of ssh://wasabi.cs.wisc.edu/p/paradyn/development...
Dan McNulty [Thu, 5 May 2011 22:04:45 +0000 (17:04 -0500)]
Merge branch 'dyn_pc_integration' of ssh://wasabi.cs.wisc.edu/p/paradyn/development/mcnulty/d0/dyninst into dyn_pc_integration

9 years agoImplement mutatee traps on FreeBSD.
Dan McNulty [Thu, 5 May 2011 22:03:10 +0000 (17:03 -0500)]
Implement mutatee traps on FreeBSD.

9 years agoFix bugs in handling user thread destruction on Linux
Daniel McNulty [Thu, 5 May 2011 20:59:02 +0000 (15:59 -0500)]
Fix bugs in handling user thread destruction on Linux

We now postpone calling into thread_db until the process is stopped to avoid a
race where thread_db will modify an internal libc data structure as running
threads are modifying the same data structure.

This race condition manifests itself as not retrieving corresponding events for
thread destruction event breakpoints.

9 years agoFix x86 wanderer frame stepper and disable Dyninst use of AnalysisStepper for now
Todd Frederick [Wed, 4 May 2011 21:23:57 +0000 (16:23 -0500)]
Fix x86 wanderer frame stepper and disable Dyninst use of AnalysisStepper for now

9 years agoMerge branch 'master' into NewInstpoint
Andrew Bernat [Fri, 29 Apr 2011 21:13:22 +0000 (16:13 -0500)]
Merge branch 'master' into NewInstpoint

Conflicts:
parseAPI/src/ParserDetails.C

9 years agoMerge branch 'NewInstpoint' of brie.cs.wisc.edu:/p/paradyn/development/bernat/builds...
Andrew Bernat [Fri, 29 Apr 2011 20:48:48 +0000 (15:48 -0500)]
Merge branch 'NewInstpoint' of brie.cs.wisc.edu:/p/paradyn/development/bernat/builds/dyninst into NewInstpoint

9 years agoPPC fixes for new relocation engine
Andrew Bernat [Fri, 29 Apr 2011 20:48:34 +0000 (15:48 -0500)]
PPC fixes for new relocation engine

9 years agoWindows fixes for new relocation engine.
unknown [Fri, 29 Apr 2011 20:48:16 +0000 (15:48 -0500)]
Windows fixes for new relocation engine.

9 years agoMerge branch 'dyn_pc_integration' of ssh://mcnulty@wasabi.cs.wisc.edu/p/paradyn/devel...
Dan McNulty [Thu, 28 Apr 2011 18:02:10 +0000 (13:02 -0500)]
Merge branch 'dyn_pc_integration' of ssh://mcnulty@wasabi.cs.wisc.edu/p/paradyn/development/mcnulty/d0/dyninst into dyn_pc_integration

9 years agoFix for code used to find _start on ELF platforms
Dan McNulty [Thu, 28 Apr 2011 17:58:04 +0000 (12:58 -0500)]
Fix for code used to find _start on ELF platforms

In image::findMain(), we add a symbol for _start if it doesn't
exist. When main exists, _start was mistakenly marked as
non-existent and later code adds a symbol for it. Stackwalking uses
this symbol to find the bottom of the stack and when a new process'
executable has already been parsed, the wrong _start symbol is given
to stackwalking resulting in a failure to find the bottom of the
stack.

We no longer add a _start symbol if one already exists. This allows
stackwalking to find the bottom of the stack when a binary has
already been parsed.

9 years agoFixes to ProcControlAPI on Linux for attaching to a stopped process.
Daniel McNulty [Thu, 28 Apr 2011 17:56:55 +0000 (12:56 -0500)]
Fixes to ProcControlAPI on Linux for attaching to a stopped process.

9 years agoRemove <idiotic> funcJumpExpr and associated code. Fix rewriting statically linked...
Andrew Bernat [Thu, 28 Apr 2011 15:47:51 +0000 (10:47 -0500)]
Remove <idiotic> funcJumpExpr and associated code. Fix rewriting statically linked binaries. Fix a bug allocating negative memory.

9 years agoAdd a better original/instrumentation RelocBlock tracking method
Andrew Bernat [Wed, 27 Apr 2011 19:04:56 +0000 (14:04 -0500)]
Add a better original/instrumentation RelocBlock tracking method

9 years agoAdd compatibility layer between BPatch points and instPoints
Andrew Bernat [Wed, 27 Apr 2011 18:07:35 +0000 (13:07 -0500)]
Add compatibility layer between BPatch points and instPoints

9 years agoPPC bugfixes
Andrew Bernat [Tue, 26 Apr 2011 20:55:00 +0000 (15:55 -0500)]
PPC bugfixes

9 years agoMerge branch 'master' of git.dyninst.org:/pub/dyninst
legendre1 [Tue, 26 Apr 2011 20:40:52 +0000 (13:40 -0700)]
Merge branch 'master' of git.dyninst.org:/pub/dyninst

9 years agoImplement detach-and-leave-stopped in StackwalkerAPI
legendre1 [Tue, 26 Apr 2011 20:38:10 +0000 (13:38 -0700)]
Implement detach-and-leave-stopped in StackwalkerAPI

9 years agoPrint debug error messages when using non-functional libdwarf
legendre1 [Tue, 26 Apr 2011 20:37:30 +0000 (13:37 -0700)]
Print debug error messages when using non-functional libdwarf

9 years agoFix segfault in CodeTracker caused by double-delete
Andrew Bernat [Tue, 26 Apr 2011 19:24:38 +0000 (14:24 -0500)]
Fix segfault in CodeTracker caused by double-delete

9 years agoSmall code cleanup
Nathan Rosenblum [Sun, 20 Mar 2011 19:39:14 +0000 (14:39 -0500)]
Small code cleanup

Comment out currently unused code to supress compiler warning.
Also removed debugging code.

9 years agox86 updates to correspond /w/ PPC work; initial attempt at post-call padding.
Andrew Bernat [Tue, 26 Apr 2011 16:03:46 +0000 (11:03 -0500)]
x86 updates to correspond /w/ PPC work; initial attempt at post-call padding.

9 years agoFixes for memory tests on FreeBSD/x86.
Dan McNulty [Fri, 22 Apr 2011 21:09:37 +0000 (16:09 -0500)]
Fixes for memory tests on FreeBSD/x86.

9 years agoMissed the actual test file in last commit.
Emily Jacobson [Thu, 21 Apr 2011 18:58:39 +0000 (13:58 -0500)]
Missed the actual test file in last commit.

9 years agoSegment registers were 32-bit and should have been 16-bit.
Emily Jacobson [Thu, 21 Apr 2011 15:41:49 +0000 (10:41 -0500)]
Segment registers were 32-bit and should have been 16-bit.

An associated test has been added, also.

9 years agoPPC prototype of new relocation system; still needs bugfixing
Andrew Bernat [Wed, 20 Apr 2011 21:15:22 +0000 (16:15 -0500)]
PPC prototype of new relocation system; still needs bugfixing

9 years agoAdd FreeBSD to some ifdefs for the memory tests.
Dan McNulty [Tue, 19 Apr 2011 14:59:41 +0000 (09:59 -0500)]
Add FreeBSD to some ifdefs for the memory tests.

9 years agoBuild fixes for FreeBSD x86_64 mem tests.
Dan McNulty [Mon, 18 Apr 2011 21:57:38 +0000 (16:57 -0500)]
Build fixes for FreeBSD x86_64 mem tests.

9 years agoEnable test_mem tests for FreeBSD in test sources.
Dan McNulty [Mon, 18 Apr 2011 21:51:30 +0000 (16:51 -0500)]
Enable test_mem tests for FreeBSD in test sources.

9 years agoMerge branch 'dyn_pc_integration' of ssh://mcnulty@wasabi.cs.wisc.edu/p/paradyn/devel...
Dan McNulty [Mon, 18 Apr 2011 17:14:23 +0000 (12:14 -0500)]
Merge branch 'dyn_pc_integration' of ssh://mcnulty@wasabi.cs.wisc.edu/p/paradyn/development/mcnulty/d0/dyninst into dyn_pc_integration

9 years agoFixes for handling thread destruction.
Dan McNulty [Mon, 18 Apr 2011 17:12:44 +0000 (12:12 -0500)]
Fixes for handling thread destruction.

Also, fix a race condition for test_thread_8.

9 years agoMerge branch 'dyn_pc_integration' of ssh://mcnulty@wasabi.cs.wisc.edu/p/paradyn/devel...
Dan McNulty [Mon, 18 Apr 2011 17:11:39 +0000 (12:11 -0500)]
Merge branch 'dyn_pc_integration' of ssh://mcnulty@wasabi.cs.wisc.edu/p/paradyn/development/mcnulty/d0/dyninst into dyn_pc_integration

9 years agoBuild fixes for FreeBSD/x86
Dan McNulty [Mon, 18 Apr 2011 17:11:17 +0000 (12:11 -0500)]
Build fixes for FreeBSD/x86

9 years agoFix for enabling test_mem_* on FreeBSD/x86_64.
Daniel McNulty [Mon, 18 Apr 2011 16:38:45 +0000 (11:38 -0500)]
Fix for enabling test_mem_* on FreeBSD/x86_64.

Also, enables test_write_param on FreeBSD.

9 years agoMerge branch 'dyn_pc_integration' of ssh://wasabi.cs.wisc.edu/p/paradyn/development...
Dan McNulty [Thu, 14 Apr 2011 21:46:30 +0000 (16:46 -0500)]
Merge branch 'dyn_pc_integration' of ssh://wasabi.cs.wisc.edu/p/paradyn/development/mcnulty/d0/dyninst into dyn_pc_integration

9 years agoRevert changes made to ProcControlAPI for a Dyninst bug.
Daniel McNulty [Thu, 14 Apr 2011 21:48:45 +0000 (16:48 -0500)]
Revert changes made to ProcControlAPI for a Dyninst bug.

9 years agoTweaks related to master/NewInstpoint merge.
Andrew Bernat [Thu, 14 Apr 2011 16:52:40 +0000 (11:52 -0500)]
Tweaks related to master/NewInstpoint merge.

9 years agoMerge branch 'master' into NewInstpoint
Andrew Bernat [Thu, 14 Apr 2011 16:17:14 +0000 (11:17 -0500)]
Merge branch 'master' into NewInstpoint

Conflicts:
.gitignore
common/common.vcproj
dyninstAPI/dyninstAPI.vcproj
dyninstAPI/src/codegen-x86.C
dyninstAPI/src/image-sparc.C
dyninstAPI/src/multiTramp.C
dyninstAPI/src/multiTramp.h
dyninstAPI/src/reloc-func.C
dyninstAPI/src/replacedInstruction.C
dyninstAPI_RT/DyninstAPI_RT.vcproj
instructionAPI/instructionAPI.vcproj
parseAPI/parseAPI.vcproj
parseThat/src/config.C
parseThat/src/config.h
parseThat/src/parseThat.C
symtabAPI/src/emitWin.h
symtabAPI/symtabAPI.vcproj

9 years agoFix test4_4 failure post-master-merge
Andrew Bernat [Thu, 14 Apr 2011 15:59:52 +0000 (10:59 -0500)]
Fix test4_4 failure post-master-merge

9 years agoMerge branch 'master' into NewInstpoint
Andrew Bernat [Wed, 13 Apr 2011 21:55:18 +0000 (16:55 -0500)]
Merge branch 'master' into NewInstpoint

Conflicts:
parseAPI/src/Parser.C

9 years agoMore test fixes; x86 test suite runs to completion with two failures (due to post...
Andrew Bernat [Wed, 13 Apr 2011 21:53:30 +0000 (16:53 -0500)]
More test fixes; x86 test suite runs to completion with two failures (due to post-call implementation missing)

9 years agoDisable test1_35 as it no longer has meaning; replace getSize in test1_30 with a...
Andrew Bernat [Tue, 12 Apr 2011 18:22:49 +0000 (13:22 -0500)]
Disable test1_35 as it no longer has meaning; replace getSize in test1_30 with a safe call to getAddressRange

9 years agoFix forking of baseTramps, miniTramps; fixes test_fork_*
Andrew Bernat [Tue, 12 Apr 2011 18:22:20 +0000 (13:22 -0500)]
Fix forking of baseTramps, miniTramps; fixes test_fork_*

9 years agoProvide interface to retrieve Instruction::Ptr from InstructionAdapter.
Emily Jacobson [Tue, 12 Apr 2011 15:03:53 +0000 (10:03 -0500)]
Provide interface to retrieve Instruction::Ptr from InstructionAdapter.

Fixed a few header file locations.

9 years agoFix accessing parameters
Andrew Bernat [Mon, 11 Apr 2011 22:14:59 +0000 (17:14 -0500)]
Fix accessing parameters

9 years agoMore test fixes
Andrew Bernat [Mon, 11 Apr 2011 20:44:46 +0000 (15:44 -0500)]
More test fixes

9 years agoMake test2_5 less broken by design
Andrew Bernat [Mon, 11 Apr 2011 20:44:26 +0000 (15:44 -0500)]
Make test2_5 less broken by design

9 years agoRemove dangerous BPatch_function get size methods
Andrew Bernat [Mon, 11 Apr 2011 20:44:17 +0000 (15:44 -0500)]
Remove dangerous BPatch_function get size methods

9 years agoFix test 4_2 by implementing fork support
Andrew Bernat [Mon, 11 Apr 2011 18:32:30 +0000 (13:32 -0500)]
Fix test 4_2 by implementing fork support

9 years agoStack analysis fix from Todd
Andrew Bernat [Mon, 11 Apr 2011 18:31:52 +0000 (13:31 -0500)]
Stack analysis fix from Todd

9 years agoFix for pc_terminate_stopped on FreeBSD.
Dan McNulty [Mon, 11 Apr 2011 17:28:50 +0000 (12:28 -0500)]
Fix for pc_terminate_stopped on FreeBSD.

Threads need to be put into a resumed state before issuing PT_KILL.

Also, build fix for pc_detach_mutatee.c.

9 years agoMerge branch 'dyn_pc_integration' of ssh://git.dyninst.org/pub/dyninst into dyn_pc_in...
Daniel McNulty [Fri, 8 Apr 2011 21:20:23 +0000 (16:20 -0500)]
Merge branch 'dyn_pc_integration' of ssh://git.dyninst.org/pub/dyninst into dyn_pc_integration

9 years agoBuild fixes for previous commit to FreeBSD.
Daniel McNulty [Fri, 8 Apr 2011 21:15:42 +0000 (16:15 -0500)]
Build fixes for previous commit to FreeBSD.

9 years agoStack analysis bug fix
Todd Frederick [Fri, 8 Apr 2011 21:05:39 +0000 (16:05 -0500)]
Stack analysis bug fix

9 years agoAccumulated bugfixes from PASTE '11 work.
Andrew Bernat [Fri, 8 Apr 2011 18:35:48 +0000 (13:35 -0500)]
Accumulated bugfixes from PASTE '11 work.

9 years agoMerge branch 'dyn_pc_integration' of ssh://wasabi.cs.wisc.edu/p/paradyn/development...
Dan McNulty [Fri, 8 Apr 2011 18:19:06 +0000 (13:19 -0500)]
Merge branch 'dyn_pc_integration' of ssh://wasabi.cs.wisc.edu/p/paradyn/development/mcnulty/d0/dyninst into dyn_pc_integration

9 years agoMerge branch 'dyn_pc_integration' of ssh://git.dyninst.org/pub/dyninst into dyn_pc_in...
Daniel McNulty [Fri, 8 Apr 2011 18:34:08 +0000 (13:34 -0500)]
Merge branch 'dyn_pc_integration' of ssh://git.dyninst.org/pub/dyninst into dyn_pc_integration

9 years agoEnable test_mem_* on FreeBSD.
Daniel McNulty [Fri, 8 Apr 2011 18:33:26 +0000 (13:33 -0500)]
Enable test_mem_* on FreeBSD.

9 years agoRefactor signal handling.
Dan McNulty [Fri, 8 Apr 2011 18:17:50 +0000 (13:17 -0500)]
Refactor signal handling.

Signals are now only forwarded to processes when explicitly specified
to do so by Dyninst.

9 years agoFix for fork handling on FreeBSD.
Dan McNulty [Fri, 8 Apr 2011 13:47:38 +0000 (08:47 -0500)]
Fix for fork handling on FreeBSD.

9 years agoStack analysis bug fixes from Kevin/Drew and Todd
Todd Frederick [Thu, 7 Apr 2011 20:20:55 +0000 (15:20 -0500)]
Stack analysis bug fixes from Kevin/Drew and Todd

9 years agoFixes for reporting post-Fork events to ProcControlAPI on FreeBSD.
Dan McNulty [Thu, 7 Apr 2011 19:35:54 +0000 (14:35 -0500)]
Fixes for reporting post-Fork events to ProcControlAPI on FreeBSD.

Also, various fixes for small bugs that were exposed while
implementing post-Fork reporting.

9 years agoEnable ProcControlAPI tests: pc_detach, pc_terminate, pc_terminate_stopped
Daniel McNulty [Tue, 5 Apr 2011 14:27:39 +0000 (09:27 -0500)]
Enable ProcControlAPI tests: pc_detach, pc_terminate, pc_terminate_stopped

Fixed a small bug exposed by the pc_terminate* tests.

9 years agoStackwalkerAPI build fixes for BlueGene
Matthew P. Legendre [Mon, 4 Apr 2011 18:18:43 +0000 (11:18 -0700)]
StackwalkerAPI build fixes for BlueGene

9 years agoFixes for force termination in ProcControlAPI on FreeBSD.
Dan McNulty [Mon, 4 Apr 2011 17:23:04 +0000 (12:23 -0500)]
Fixes for force termination in ProcControlAPI on FreeBSD.

Also, some code cleanup in Dyninst event handling.

9 years agoUpdated dynC_API Manual version number, removed draft specification and added beta.
David Aeschlimann [Mon, 4 Apr 2011 16:25:45 +0000 (11:25 -0500)]
Updated dynC_API Manual version number, removed draft specification and added beta.

9 years agoStackwalkerAPI: Clarify analysis stepper on x86
Todd Frederick [Mon, 4 Apr 2011 16:09:11 +0000 (11:09 -0500)]
StackwalkerAPI: Clarify analysis stepper on x86

9 years agoCleans out unnecessary files inadvertently left by previous commit. Fixes a dynC...
David Aeschlimann [Mon, 4 Apr 2011 15:55:42 +0000 (10:55 -0500)]
Cleans out unnecessary files inadvertently left by previous commit. Fixes a dynC test.

 LocalWords:  dynC

9 years agoDataflowAPI-related Power Linux build fixes
Todd Frederick [Fri, 1 Apr 2011 19:46:59 +0000 (14:46 -0500)]
DataflowAPI-related Power Linux build fixes

9 years agoChange ordering of libiberty on parsethat build to fix build error
Matthew Legendre [Fri, 1 Apr 2011 18:02:19 +0000 (13:02 -0500)]
Change ordering of libiberty on parsethat build to fix build error

9 years agoFix bug in PCProcess::hasPassedMain in Dyninst
Dan McNulty [Fri, 1 Apr 2011 14:15:09 +0000 (09:15 -0500)]
Fix bug in PCProcess::hasPassedMain in Dyninst

Refactor getOSRunningState and implement it for FreeBSD.

9 years agoFurther refinement of parseThat libiberty build parameters
Matthew P. Legendre [Thu, 31 Mar 2011 21:34:18 +0000 (14:34 -0700)]
Further refinement of parseThat libiberty build parameters

9 years agoFixes for force loading the RT library on FreeBSD
Dan McNulty [Thu, 31 Mar 2011 19:56:05 +0000 (14:56 -0500)]
Fixes for force loading the RT library on FreeBSD

Also, includes refactoring of our use of realpath. Our existing
use was non-portable in that we relied on realpath to also check
for the existence of the last element in the path. Linux performs
this check while FreeBSD does not.

All references to realpath replaced with a call to resolve_file_path
available in common/src/pathName.C.

Added the ability to disassemble jumps and multitramps insert into
the process using InstructionAPI. This helps with debugging our
use of instruction sequences that confuse objdump and friends. The
environment variable DYNINST_DEBUG_DISASS turns on this debugging
output.

Fixes for address translation that removes the non-portable
assumption that the link map doesn't contain an entry for the
executable. Linux, no executable. FreeBSD, executable is there.

9 years agoFix to enable instrumentation at main in dynamic mode
Daniel McNulty [Thu, 31 Mar 2011 20:00:11 +0000 (15:00 -0500)]
Fix to enable instrumentation at main in dynamic mode

A breakpoint is set at the entry to main to determine when
the RT library can be loaded and system call instrumentation
can be inserted into the program.

ProcControlAPI's default treatment of breakpoints is to suspend
the breakpoint, single step and resume after the Breakpoint event
callback. Dyninst would like the process to stay at the entry
of main after hitting the breakpoint to enable function entry
point instrumentation at main.

The solution is to remove the breakpoint in the ProcControlAPI
callback -- ProcControl will not single step the process, keeping
the process at the entry point of main.

9 years agoAdds support for removing breakpoints while in a callback.
Daniel McNulty [Thu, 31 Mar 2011 14:55:54 +0000 (09:55 -0500)]
Adds support for removing breakpoints while in a callback.

9 years agoFix dync always re-installing include files
legendre1 [Wed, 30 Mar 2011 21:08:41 +0000 (14:08 -0700)]
Fix dync always re-installing include files

9 years agoParsethat not building on system without liberty
legendre1 [Wed, 30 Mar 2011 21:08:26 +0000 (14:08 -0700)]
Parsethat not building on system without liberty

9 years agoFix stackwalker not building with prefix
legendre1 [Wed, 30 Mar 2011 21:07:56 +0000 (14:07 -0700)]
Fix stackwalker not building with prefix

9 years agoFix dynC not building with prefix argument
legendre1 [Wed, 30 Mar 2011 21:07:25 +0000 (14:07 -0700)]
Fix dynC not building with prefix argument

9 years agoFixed several bugs and polished AMD-64 instrumentation optimizations
Andrew Bernat [Wed, 30 Mar 2011 17:28:01 +0000 (12:28 -0500)]
Fixed several bugs and polished AMD-64 instrumentation optimizations

9 years agoBugfix for function replacement/call replacement in binary edits; some fork work
Andrew Bernat [Fri, 25 Mar 2011 21:49:02 +0000 (16:49 -0500)]
Bugfix for function replacement/call replacement in binary edits; some fork work

9 years agoSmall amount of code cleanup.
Daniel McNulty [Fri, 25 Mar 2011 21:34:54 +0000 (16:34 -0500)]
Small amount of code cleanup.

Removed a bunch of dead debugging printf definitions.

Made global DLOPEN_MODE const and modified related code to use a local variable
instead of a global.

9 years agoAdd address mapping support for (block, function) pairs
Andrew Bernat [Fri, 25 Mar 2011 20:40:34 +0000 (15:40 -0500)]
Add address mapping support for (block, function) pairs

9 years agoPrototype of shared-block relocation system.
Andrew Bernat [Fri, 25 Mar 2011 20:21:29 +0000 (15:21 -0500)]
Prototype of shared-block relocation system.
This has the infrastructure necessary to share blocks,
although we currently still clone pending a policy decision
about when to relocate block only vs. cloning functions.

9 years agoFix for forwarding signals to processes on Linux.
Daniel McNulty [Thu, 24 Mar 2011 21:51:43 +0000 (16:51 -0500)]
Fix for forwarding signals to processes on Linux.

9 years agoFix for forwarding signals to processes on FreeBSD
Dan McNulty [Thu, 24 Mar 2011 21:09:21 +0000 (16:09 -0500)]
Fix for forwarding signals to processes on FreeBSD

9 years agoEnable stack tests on FreeBSD.
Dan McNulty [Thu, 24 Mar 2011 20:22:46 +0000 (15:22 -0500)]
Enable stack tests on FreeBSD.

Also includes a fix for the FreeBSD signal handler stepper.

This is Todd's work, I am just committing it.

9 years agoBuild fix for stackwalker on ppc64_linux Release7_0
Madhavi Krishnan [Wed, 23 Mar 2011 21:50:44 +0000 (16:50 -0500)]
Build fix for stackwalker on ppc64_linux

9 years agoUpdating stackwalker release version number.
Madhavi Krishnan [Wed, 23 Mar 2011 20:19:08 +0000 (15:19 -0500)]
Updating stackwalker release version number.