mirror of
https://github.com/Zenithsiz/ftmemsim-valgrind.git
synced 2026-02-04 02:18:37 +00:00
vgdb.c contained (conditionally compiled) "invoker" code to have ptrace syscalls used to allow gdb/vgdb to connect to a valgrind process blocked in a syscall. This "invoker" code is ptrace based. Not all platforms are using ptrace. => refactor vgdb so as allow invoker code to be added more cleanly for non ptrace based platforms (e.g. Darwin, Solaris). * add file vgdb.h for: - definition of the vgdb-invoker interface - common declarations between vgdb.c and vgdb-invoker implementations * move ptrace related code from vgdb.c to new file vgdb-invoker-ptrace.c * new file vgdb-invoker-none.c containing an empty invoker implementation used on platforms that do not (yet) have a invoker implementation (e.g. android and darwin). * modified Makefile.am to use one of the vgdb-invoker-*.c file depending on the platform. * small changes related to changing ptraceinvoker to invoker in various files: gdbserver_tests/make_local_links, gdbserver_tests/nlcontrolc.vgtest, gdbserver_tests/mcinvokeRU.vgtest, gdbserver_tests/nlsigvgdb.vgtest gdbserver_tests/mcinvokeWS.vgtest, coregrind/m_gdbserver/README_DEVELOPERS Patch from Ivo Raisr, slightly modified git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13743
16 lines
658 B
Plaintext
16 lines
658 B
Plaintext
# Tests the case when gdb sends a character to gdbserver while
|
|
# the gdbserver was forced invoked just before.
|
|
# gdbserver must send a signal to itself that is wait-ed for by vgdb.
|
|
# But if this signal is masked, then vgdb does not recuperate the control
|
|
# and Valgrind dies. See function give_control_back_to_vgdb in m_gdbserver.c
|
|
prog: sleepers
|
|
args: 1 10000000 0 -S-S-S-S
|
|
vgopts: --tool=none --vgdb=yes --vgdb-error=0 --vgdb-prefix=./vgdb-prefix-nlsigvgdb
|
|
stderr_filter: filter_stderr
|
|
prereq: test -e gdb -a -f vgdb.invoker
|
|
progB: gdb
|
|
argsB: --quiet -l 60 --nx ./sleepers
|
|
stdinB: nlsigvgdb.stdinB.gdb
|
|
stdoutB_filter: filter_gdb
|
|
stderrB_filter: filter_gdb
|