History log of /external/ltrace/proc.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
8137e804992f15590105a3db29673674971dff7b 13-Feb-2014 Petr Machata <pmachata@redhat.com> Initialize struct process.e_machine and .e_class for secondary threads
/external/ltrace/proc.c
dfefa9f057857735a073ea655f5cb34351032c8e 07-Jan-2014 Mark Wielaard <mjw@redhat.com> Add support for using elfutils as unwinder.

This adds support for using elfutils as unwinder with -w. Since elfutils
0.158 elfutils contains a simple unwinder interface that matches nicely
on the ltrace backtrace support.

The code reuses the libunwind infrastructure already in ltrace where
possible (by defining HAVE_UNWINDER which is 1 if either libunwind or
elfutils is used). It also reuses the ltrace proc_add_library callback
to keep track of the ELF files mapped for the unwinder.

The current implementation matches the output as if libunwind was used.
But elfutils can also provide some more information since it can lookup
the DWARF debuginfo. So if the source info of an address can be found
through elfutils the backtrace will also include this as an additional
output line per frame.
/external/ltrace/proc.c
6bcc092da6b7e20c6c2a9a5846536fbd3d77dbb8 09-Jan-2014 Petr Machata <pmachata@redhat.com> Type proc_each_breakpoint properly
/external/ltrace/proc.c
af452c67bceba1326bb629d7c1a8241d54c09038 04-Jan-2014 Luca Clementi <luca.clementi@gmail.com> check return value of unw_get_reg and unw_get_proc_name

Before printng the current procedure name and IP verify their validity
/external/ltrace/proc.c
23124cc5c33c6b7a547eb1008505f60590f67593 11-Oct-2013 Petr Machata <pmachata@redhat.com> Move several os_ declarations before corresponding arch_ declarations
/external/ltrace/proc.c
df2c88cec5bf17a92f0d5d740e3b756f00b798c6 19-Mar-2013 Petr Machata <pmachata@redhat.com> The same work needs to be done on attach as when _start is hit

- Extract the logic to a separate function, called from open_pid and
entry_breakpoint_on_hit.

- Since there is no other way to get on dyn_addr in open_pid anyway,
simply look for the main library, and read it there. That means we
don't need to track that information at entry_breakpoint anymore,
and we can get rid of struct entry_breakpoint.
/external/ltrace/proc.c
7725d4b171138e8d2b77c8a1186e9f8215b6c91f 19-Mar-2013 Petr Machata <pmachata@redhat.com> Use CBS_STOP_IF instead of hand-coding the same

- In cb_breakpoint_for_symbol, we would need CBS_FAIL_IF. But
CBS_FAIL isn't properly handled anywhere. The iterator client user
must provide alternate means of signalling errors anyway (e.g. a
flag passed in data) anyway. So convert this to CBS_STOP_IF, the
caller already assumes all stops are failures.
/external/ltrace/proc.c
8be68ff436d32e803907e6dda3dc994c495d2f1e 19-Mar-2013 Petr Machata <pmachata@redhat.com> open_one_pid doesn't return boolean, but <0 on error

- This compiles down to the exact same code, but we want to be clear
about the calling convention.
/external/ltrace/proc.c
a2c270e86913ab93c41cdd61055d7c2b71b10fa1 12-Mar-2013 Petr Machata <pmachata@redhat.com> Fix compilation

- GCC points out that the constant in dict.c that we use
for computing string hashes is not implicitly unsigned.

- When building without unwinding support, we can't access
ifdef'd-out fields. I remember having writted it this way
to increase exposure of the error handling code for syntax
checks, but it can't work.
/external/ltrace/proc.c
e50355295eac26e15db259fbb7ff705487b501d0 30-Jan-2013 Petr Machata <pmachata@redhat.com> Drop useless argument from breakpoint_clone
/external/ltrace/proc.c
dc70e76a94f842e2b8eaf0b9c2aabb829dc4826a 23-Jan-2013 Petr Machata <pmachata@redhat.com> Add proc_read_8
/external/ltrace/proc.c
5c5d48092beb90c903461db6a90db2ed73198306 08-Jan-2013 Petr Machata <pmachata@redhat.com> Fix error message in proc_add_library, when latent symbol activation fails

- In fact, libsym->name would cause a SIGSEGV.
/external/ltrace/proc.c
c4763a0aba5a9c4e12f024991bf3f73e6860e33e 08-Jan-2013 Petr Machata <pmachata@redhat.com> proc_each_library should iterate from passed-in iterator non-inclusive

- the semantics should be start_after, as in other cases in ltrace
/external/ltrace/proc.c
f56d129435a34c415214b1ce00b7c23e28ed1c02 07-Jan-2013 Petr Machata <pmachata@redhat.com> Fix cleanup in process_clone fail path

The original code was releasing the original memory, not the clone,
and single block would be released potentially many times. This led
to severe memory errors.
/external/ltrace/proc.c
d19b91640b2d1bcfeef14d029891dd93217b9c24 07-Jan-2013 Petr Machata <pmachata@redhat.com> Properly handle partial success when cloning a library

The cloned library may have been allocated, but not initialized. It
is not correct to destroy such library, only the memory needs to be
released.
/external/ltrace/proc.c
baf00e4ebd96bba26804696fbee73e662678ef6a 07-Jan-2013 Petr Machata <pmachata@redhat.com> Unlist the process if its addition fails

- add_process returns -1 on failures
- in process_bare_init, when we fail to initialize the process, but it
already was added, unlist it before bailing out.
/external/ltrace/proc.c
3717f290b3538f7a9fca534c0b96f513884c8745 06-Jan-2013 Petr Machata <pmachata@redhat.com> Fix formatting of error messages in proc_add_library
/external/ltrace/proc.c
af1e603fa8afd1ed0f1819a984c57311efbc7f1f 06-Jan-2013 Petr Machata <pmachata@redhat.com> Tolarate failures in initialization of unwinding

Output should verify whether unwinding was properly initialized. Said
initialization should be skipped altogether unless requested on
command line.
/external/ltrace/proc.c
98ff309cdc98857eb30992f108439cb7d7673598 08-Mar-2013 Petr Machata <pmachata@redhat.com> Change DICT_FIND to DICT_FIND_{REF,VAL}

- In many places, DICT_FIND was awkward to use, as it required the use
of pointers even in cases that the dictionary already stored
pointers. For those cases, add DICT_FIND_VAL.

- Rename the original DICT_FIND to DICT_FIND_REF to make the
disctinction clear. That is useful if the dictionary holds actual
structures.
/external/ltrace/proc.c
d7e4ca82e1cf20bb2605befb1da74dd1688c706e 28-Nov-2012 Petr Machata <pmachata@redhat.com> Rewrite dict module to be more in line with vect

It's now a bit more strongly typed, can grow and shrink on demand, and has
a more complete interface.
It uses open addressing scheme to store hashes.
/external/ltrace/proc.c
653085a32cdc89f5215c2d70249b58c9fe6aebb7 15-Jan-2013 Petr Machata <pmachata@redhat.com> Move byte-reading routines from PPC backend to generic code

- Use backend hook umovebytes to read the bytes from inferior.
/external/ltrace/proc.c
929bd57ca202fd2f2e8485ebf65d683e664f67b5 17-Dec-2012 Petr Machata <pmachata@redhat.com> struct Process becomes struct process

This is for consistency with other structures, and ultimately with
Linux coding style. The typedef ("Process") was dropped as well for
this reason.

This opportunity was used to fix coding style around the impacted
lines.
/external/ltrace/proc.c
8d58d8b6f0922f57c6fed8e65df86ba57bba31f1 12-Nov-2012 Petr Machata <pmachata@redhat.com> Work around MIPS requesting two symbolic breakpoints on the same address
/external/ltrace/proc.c
d5199029878221dd7d73e413f71d080b7079d4e6 03-Nov-2012 Petr Machata <pmachata@redhat.com> Drop unused piece of code

The same is inlined in the for() initializer.
/external/ltrace/proc.c
96f0482fa1d15f4e6be75b49ff5fa8d77602be7b 31-Oct-2012 Petr Machata <pmachata@redhat.com> Debug messages around latent and delayed symbols
/external/ltrace/proc.c
3240554e943bf773aa57b7e3e3bf80d7102a8b10 31-Oct-2012 Petr Machata <pmachata@redhat.com> New function proc_each_symbol
/external/ltrace/proc.c
1e339e00198972a75892d5073d47f090db5d77a2 27-Oct-2012 Petr Machata <pmachata@redhat.com> Libraries and breakpoints should be cloned from original's leader

This pops up when a thread calls vfork. In that case there are no
libraries assigned to the process itself, but newly-vfork'd process is
itself a leader, and therefore needs its own libraries and breakpoints.
/external/ltrace/proc.c
b6de841675aab74d1700aa379535b76ef183bec2 27-Oct-2012 Petr Machata <pmachata@redhat.com> Extract processed stack element to a variable in process_clone

This makes the code less verbose.
Also add a note related to extraction to future callstack.c.
/external/ltrace/proc.c
5bf471403f1145fb004005b99eb439969d672dcd 27-Oct-2012 Petr Machata <pmachata@redhat.com> Corrections in cleanup code in process_clone

Since we are done cloning the generic part of the process, it
is proper to simply call private_process_destroy on failures.

If os_process_clone passed, but arch_process_clone fails,
os_process_destroy must be called.
/external/ltrace/proc.c
81bc82ca194af8b6eccbbdf043e34e14bde0c34c 27-Oct-2012 Petr Machata <pmachata@redhat.com> In clone_single_bp, don't overwrite error status, instead use it to shortcut
/external/ltrace/proc.c
165b566a50b2bd560af3bd9649e456915397066b 27-Oct-2012 Petr Machata <pmachata@redhat.com> Add proc_find_symbol, use it to find corresponding symbols for clones

The code in breakpoint_clone was buggy--it looked through old_proc's
symbols. It was also needlessly verbose, proc_find_symbol uses library
key to find the right library. Instead use the new interface and call
it on new_proc to find the new symbol.

We also didn't relink symbols in stack elements of a cloned process in
process_clone. Use proc_find_symbol for this as well.
/external/ltrace/proc.c
ef0c74de9320c86ab1f08e5f9c15b031ed36d01f 27-Oct-2012 Petr Machata <pmachata@redhat.com> Fix memory handling of pid2name result

This plugs a leak.
/external/ltrace/proc.c
0f6e6d9861ce790cb8b7d07aca28a5878d705359 26-Oct-2012 Petr Machata <pmachata@redhat.com> Add os_process_data and related

This is meant to be the same for per-OS configuration as arch_process_data
is for per-arch configuration.
/external/ltrace/proc.c
3cc0cd11ff97fd013813ae020aaf24dbdc818e43 26-Oct-2012 Petr Machata <pmachata@redhat.com> Call arch_process_destroy before destroying main process data

That in case that arch_process_destroy needs the global state. Unlikely,
but we do it that way for exec, so let's be consistent.
/external/ltrace/proc.c
e0e89edff4ff9216a9a8631b078858851a15f0e7 26-Oct-2012 Petr Machata <pmachata@redhat.com> Pop remaining stack before the process exits

This plugs a leak
/external/ltrace/proc.c
e677c7e0b79fc0af7c98436d924fefca7d43f359 26-Oct-2012 Petr Machata <pmachata@redhat.com> Release unwind data

This plugs a leak
/external/ltrace/proc.c
f97b187598192f4c1f0ea47369f4e1dd4c08c392 01-Oct-2012 Edgar E. Iglesias <edgar.iglesias@gmail.com> mipsel: Replace LS_TOPLT_GOTONLY with delayed syms

Signed-off-by: Edgar E. Iglesias <edgar@axis.com>
/external/ltrace/proc.c
a1f768374c98ac0ed616482916bfedbe98753eba 28-Sep-2012 Petr Machata <pmachata@redhat.com> When a new library is mapped, activate latent PLT entries in other libraries
/external/ltrace/proc.c
ef2fd27a347bbb0e7cca7fdee97422f6ae4d4bda 28-Sep-2012 Petr Machata <pmachata@redhat.com> Support latent and delayed symbols

Neither latent, nor delayed symbols are given a breakpoint. The difference
is in who's responsible for the state. Latent symbols are (will be) used
by ltrace core. Delayed symbols are used by backends. Only when both of
these flags are cleared is a breakpoint enabled for the symbol.
/external/ltrace/proc.c
6ef7b2597cd3f4edf851a7b3516aef7449e554ad 27-Sep-2012 Edgar E. Iglesias <edgar@axis.com> mipsel: Add mips specific symbol info loading

MIPS needs a backend specific way to load symbol info.
We add fields to the symbol representation to keep track
of the state of the dynamic symbol.

At arch_dynlink_done we go through the symbols that are
connected to a GOT entry but that where not resolved at
startup time (e.g function pointers to external syms).

Signed-off-by: Edgar E. Iglesias <edgar@axis.com>
/external/ltrace/proc.c
ad64047d1d724637896d0f93af1a8fcce758c9b5 27-Sep-2012 Edgar E. Iglesias <edgar@axis.com> proc: Add missing sym2addr mappings

Not all arch's (e.g MIPS) have a direct mapping to
sym->enter_addr.

Signed-off-by: Edgar E. Iglesias <edgar@axis.com>
/external/ltrace/proc.c
4d4e1b853db0c97b7c7f023bc301e3c3eee58ce4 30-May-2012 Petr Machata <pmachata@redhat.com> Track elf class in struct Process

Technically only s390 needs this at the moment, but it seems general enough
that it should be alongside the e_machine flag. Eventually it is desirable
to replace both fields with either a backend-provided ABI enum, or with
an ABI object that would implement the interesting back end calls.
/external/ltrace/proc.c
ba1664b062414481d0f37d06bb01a19874c8d481 28-Apr-2012 Petr Machata <pmachata@redhat.com> Fix compilation
/external/ltrace/proc.c
642626096a694c6af279d25d2b1b2fba5b10ddfb 07-Jan-2012 Petr Machata <pmachata@redhat.com> Add backend.h for backend interfaces
/external/ltrace/proc.c
cd972587a4c0d14d764b3d0a43d75f5941db14cc 07-Jan-2012 Petr Machata <pmachata@redhat.com> Move event-que declarations to sysdeps, new backend interface process_removed

- the reason being that the que-handling was declared on global level, but
was only implemented in one back end. If this is deemed generally useful,
it should all be moved to front end, but as things are it's all the same,
so I'm preferring the less invasive change
/external/ltrace/proc.c
f6ec08afb96292fd3c802c1f633d8de249664c72 06-Jan-2012 Petr Machata <pmachata@redhat.com> Add fetch.c/fetch.h, a module for fetching function arguments

- this is now a thin wrapper over gimme_arg, ideally the backends will
eventually use this right interface

- in display_args.c, strip one layer of pointer wrapping, which is now
done in output.c
/external/ltrace/proc.c
94078ecce3a103c28457e6f90f1e5b0dacc61146 05-Jan-2012 Petr Machata <pmachata@redhat.com> Add expr.c, expr.h, plug in properly

- in callstack_pop, we don't free arch_ptr. That's because this doesn't
get copied over the clone. It's a mere coincidence that fork() doesn't
need to save register arguments, and this works.

- added copyright notices to files that this touches. This is based on
git blame. Only contributors of 10+ lines are added

- test suite adjusted to not include "void" type as "don't show this int".
Back ends in general need to know the exact type, so this never worked
anyway.
/external/ltrace/proc.c
2eb941ddadeec2382a45a1e4e80003dc8abe59d0 05-May-2012 Petr Machata <pmachata@redhat.com> Drop process_get_entry, which is not useful right now
/external/ltrace/proc.c
61686c26634ea847c41470801572b49bebce5b99 03-May-2012 Petr Machata <pmachata@redhat.com> Don't call remove_process in process_bare_destroy

This does many things, we only care obout the unlisting.
/external/ltrace/proc.c
cc0e1e4b83d69441cc5f61ea87eda5458ee9fae3 25-Apr-2012 Petr Machata <pmachata@redhat.com> Replace some uses of error with fprintf

error is not standard so it has no business being used in generic code.
The linux-gnu back end is useful for android, and that doesn't have that
interface either.
/external/ltrace/proc.c
8ead1cde21252e779f29ee4bcd68ae4a1bc86ed9 24-Apr-2012 Petr Machata <pmachata@redhat.com> Only destroy breakpoints in leader

Also use proc_each_breakpoint instead of dict_apply_to_all.
/external/ltrace/proc.c
9b87e82848a8a7e3e8dadf917c0262d838661596 24-Apr-2012 Petr Machata <pmachata@redhat.com> Call process_destroy, free in remove_process
/external/ltrace/proc.c
2cb124c21d5471a5443658b2e31a786856ff2f6d 19-Apr-2012 Petr Machata <pmachata@redhat.com> Clone struct Process.e_machine in process_clone
/external/ltrace/proc.c
f7fee43f72667f453bba5aaeea6b5490ece6792a 19-Apr-2012 Petr Machata <pmachata@redhat.com> Implement proc_remove_breakpoint
/external/ltrace/proc.c
93d95dff48698b8bde511c7f71acda7646da2626 17-Apr-2012 Petr Machata <pmachata@redhat.com> Add ARCH_HAVE_DYNLINK_DONE
/external/ltrace/proc.c
2f9b78e38a45f00991baca17eb036d5e87d8d417 16-Apr-2012 Petr Machata <pmachata@redhat.com> Don't enable breakpoints twice when attaching
/external/ltrace/proc.c
744f255ed0d676896dbe2f326b9c353c56438f0a 15-Apr-2012 Petr Machata <pmachata@redhat.com> Add arch_process arch hooks for per-arch struct Process customization
/external/ltrace/proc.c
218c5ff26841f5bbd188c42ccbd67422a7a20556 15-Apr-2012 Petr Machata <pmachata@redhat.com> Nits
/external/ltrace/proc.c
3d0c91c0c7b425e2866f9c65f655d399693328a5 14-Apr-2012 Petr Machata <pmachata@redhat.com> Fixes for tracing across exec
/external/ltrace/proc.c
75934ad3b30790f6a892069576d0790a351ef101 14-Apr-2012 Petr Machata <pmachata@redhat.com> Drop parameters that determined whether breakpoints should be enabled
/external/ltrace/proc.c
ded6f97d105f3597246376d45ff455d16016c3f0 13-Apr-2012 Petr Machata <pmachata@redhat.com> Clone callstack in process_clone
/external/ltrace/proc.c
d3cc9889fdfe2e523e99ca5f664f8ae4b3936612 13-Apr-2012 Petr Machata <pmachata@redhat.com> Fix breakpoint cloning
/external/ltrace/proc.c
fa0c5704352beb3f81efe8970dbd5af45a4b00ce 13-Apr-2012 Petr Machata <pmachata@redhat.com> Drop breakpoint->proc

This assumed that the process where this breakpoint is added can also be
used to turn the breakpoint on and off. That's not true, leader is not
always stopped when we need it. But when we need to turn a breakpoint on
or off, we are doing so in response to an event, and thus do have a stopped
process in hands. Just use that.
/external/ltrace/proc.c
18bd8ffa003c680e3d44d1b05fc3a7b43e6a25ce 10-Apr-2012 Petr Machata <pmachata@redhat.com> Add auxv reader

We should be able to instrument dynamic linker as well, if that is
requested. Unfortunately we may still need artificial _start probe,
because we don't know _r_debug address until the dynamic linker fills
the DT_DEBUG entry. (Though we are likely to find _r_debug in symbol
table if we look.)
/external/ltrace/proc.c
0092820afcd45fe045ccc294b061bce8da00a1f2 07-Apr-2012 Petr Machata <pmachata@redhat.com> Drop process.fixed_libs, enable breakpoints right away

The theory behing fixed_libs was broken from the beginning, we can't tell
dlopened libraries from fixed ones when attaching. We also don't need to
wait for _start to enable breakpoints. We may need this on LS_TOPLT_POINT
architectures, but that was added for PPC, and PPC doesn't need it anymore.
/external/ltrace/proc.c
44965c7a1d3106439b20e8f36307f506df3df44b 06-Apr-2012 Petr Machata <pmachata@redhat.com> Hide unused add_process

- the one outstanding use was a bug, clone_process already adds the process
by the way of process_bare_init
/external/ltrace/proc.c
cf1679a93919e9a161f7f37be93ba2821315a853 06-Apr-2012 Petr Machata <pmachata@redhat.com> Clone tracesysgood when process is cloned

- don't get mysterious signal SIGTRAP+0x80 for cloned process
/external/ltrace/proc.c
3ed2a4227d5f2a8d44f3c6ffd704a9d2e867c591 06-Apr-2012 Petr Machata <pmachata@redhat.com> Drop PID parameter from trace_set_options
/external/ltrace/proc.c
8b00d5bb6a0925ece06aad0d9df0a85e8dbd7b57 06-Apr-2012 Petr Machata <pmachata@redhat.com> Drop leftover fprintf's

- convert some to debug or error calls
/external/ltrace/proc.c
a24163658be2cc9249621701e6d056df0063f52f 06-Apr-2012 Petr Machata <pmachata@redhat.com> Need to add entry breakpoint first, then to add library

- that because proc_add_library populates breakpoint tables. We can merge
symbol into artificial breakpoint, but not the other way around.
/external/ltrace/proc.c
d5e85569fa3cd1705eca0bd9a4ab79cf908e5faa 05-Apr-2012 Petr Machata <pmachata@redhat.com> Support one artificial and one symbolic breakpoint at the same address

- by simply adding the symbol to the pre-existing artificial breakpoint
which should be symbol-less itself
/external/ltrace/proc.c
ecb082f480f057dc166c9d62e8776c892caf5e11 05-Apr-2012 Petr Machata <pmachata@redhat.com> Address hashing and comparison functions need to work with target_address_t

- ... not int, which is narrower than target_address_t on 64-bit machines
/external/ltrace/proc.c
b5f80ac8982c40f79915ce1e1cb9bf8650ac5fe7 04-Apr-2012 Petr Machata <pmachata@redhat.com> Don't create PLT symbols that don't match filtering criteria

- instead of creating them, keeping them around, and then just not enabling
breakpoints for them
/external/ltrace/proc.c
76dd9290bd760f363a6f39db06020e61e3f7b345 03-Apr-2012 Petr Machata <pmachata@redhat.com> Add proc.fixed_libs

- use it to determine whether to turn on breakpoints in added libraries
if they were added after _start is hit
/external/ltrace/proc.c
3fd099b71ae9e0c4fe9f48a239523e7037e4baf4 03-Apr-2012 Petr Machata <pmachata@redhat.com> Don't turn on breakpoints when library is added

- this likely breaks tracing from libraries on x86s, but fixes ppc base
binary tracing for non-secure ppc32 cases. We'll need to tweak this
to enable the library PLTs
/external/ltrace/proc.c
0b55b5852b9fe2ed6cceada004db303fe6efe6ce 02-Apr-2012 Petr Machata <pmachata@redhat.com> Implement @MAIN, @/path/name -e selectors, make former default for now

- the default might become "*" in future, but keep things more or less
the same as they always were for now
/external/ltrace/proc.c
e0973cbbd208c84d9646481c33a2ebb511d68381 01-Apr-2012 Petr Machata <pmachata@redhat.com> Fix bugs in filter code, enable filtering according to -e setting
/external/ltrace/proc.c
52dbfb161efeab85bddc880966db2f7af9b9cf9a 29-Mar-2012 Petr Machata <pmachata@redhat.com> Shuffle breakpoint functions around
/external/ltrace/proc.c
9df15016447915a61526af8cb81c588913bcf44c 20-Feb-2012 Petr Machata <pmachata@redhat.com> Remove "enable" flag from insert_breakpoint
/external/ltrace/proc.c
ef7fa37f2d0b949b5afb1f326187e4f023d86c25 28-Mar-2012 Petr Machata <pmachata@redhat.com> Add CBS_FAIL to enum callback_status
/external/ltrace/proc.c
55ac932f2802f85c53792153ac909dcd8a690c5c 27-Mar-2012 Petr Machata <pmachata@redhat.com> Add breakpoint_set_callbacks, split off breakpoint_init, adjust callers
/external/ltrace/proc.c
4e2073f64f9db2974d89064dcdc49b2ed7aa9006 21-Mar-2012 Petr Machata <pmachata@redhat.com> Support tracing PPC32 processes with both BSS and secure PLTs

- only entry breakpoint is realized at the beginning
- when it's hit, it's deleted, and all enabled breakpoints are realized
- all PLTs are LS_TOPLT_EXEC. The difference is in the way the PLT entry
address is computed
/external/ltrace/proc.c
74132a447b18c588c698ecfb8cf4ad4b16360f2f 16-Mar-2012 Petr Machata <pmachata@redhat.com> Change iterators each_task, each_process, library_each_symbol

... now the restarts are supported by start_after instead of start.
Otherwise the restart scenario was something like:
for (it *sym = NULL; (sym = next(sym)) != NULL; )
if ((sym = sym->next) == NULL)
break;
which just seems too convoluted.
/external/ltrace/proc.c
464026f85d934c858602cd5a620b48173a179131 02-Mar-2012 Petr Machata <pmachata@redhat.com> remove_proc shouldn't free proc itselt

- because this is reciprocal to add_process
/external/ltrace/proc.c
2b46cfc1127d390eddd9593fe5ce5399c1f68130 18-Feb-2012 Petr Machata <pmachata@redhat.com> The first crude version of tracing across libraries

- the patch will be sliced later
/external/ltrace/proc.c
366c2f46d844f040458df9b7e35fc3b8527ed2d3 09-Feb-2012 Petr Machata <pmachata@redhat.com> Move process-related functions and structures to proc.h
/external/ltrace/proc.c
61196a4a81e77322bf1f3dc609007f5d35a5103a 07-Feb-2012 Petr Machata <pmachata@redhat.com> Drop Process::breakpoints_enabled
/external/ltrace/proc.c
9294d82f67e20f5f2b61f317ad04f5cb717c7d27 07-Feb-2012 Petr Machata <pmachata@redhat.com> Create breakpoint.h with decls related to breakpoints
/external/ltrace/proc.c
cec06ec8282c538a40bde968ae36fe8356daffaa 10-Apr-2012 Petr Machata <pmachata@redhat.com> Warn when we fail to trace and SELinux boolean deny_ptrace is in effect
/external/ltrace/proc.c
fed1e8d33ab050df892a88110e1a316d285ee650 07-Feb-2012 Petr Machata <pmachata@redhat.com> Cleanups
/external/ltrace/proc.c
cbe29c6c0ad01839a81272c4715ea73d17e89611 27-Sep-2011 Petr Machata <pmachata@redhat.com> Basic support for tracing vfork

- allow even individual tasks to have their event handlers. These are
called in precedence to the thread group event handlers.
- distinguish CLONE and VFORK events
- add methods for dynamic changes of leader
- add new process status ps_sleeping
/external/ltrace/proc.c
1974dbccbf10a2dd8e06724d2fb4eb61fd91076a 19-Aug-2011 Petr Machata <pmachata@redhat.com> Fix serious race in attach to many-threaded process

- the gist is that tasks continue running while we attach, so more tasks
come into existence, or the ones that we didn't attach to yet disappear,
etc.
- besides, we really can't enable breakpoints before we are done attaching,
otherwise the still-running tasks risk running into them and dying of
SIGTRAP.
/external/ltrace/proc.c
3c516d5ced53508d8df7d82914a3190a3235b62d 18-Aug-2011 Petr Machata <pmachata@redhat.com> Handle the race between reading list of tasks and attaching to those tasks

- For processes with many threads, we still get SIGTRAP on startup. This
only takes care of ltrace SIGSEGVing and/or giving out copious "cannot
attach" messages.
/external/ltrace/proc.c
75dcf7d73b6c19f7aeb932e4cb5e251b316a6c69 06-Oct-2011 Petr Machata <pmachata@redhat.com> Don't share arch_ptr on process clone
/external/ltrace/proc.c
602330f458e8049ec07685c4e02f0368821a2d2c 09-Jul-2011 Petr Machata <pmachata@redhat.com> Handle multi-threaded attach/detach gracefully
/external/ltrace/proc.c
4007d74c2435ce4b50305d64ffe831627f989335 09-Jul-2011 Petr Machata <pmachata@redhat.com> Facility for custom event handler
/external/ltrace/proc.c
69a03e6f8c15fb0272089e387a658acad887fb9c 09-Jul-2011 Petr Machata <pmachata@redhat.com> Event queue
/external/ltrace/proc.c
9a5420c82a2fd81681572a2e3859ea1671c3bded 09-Jul-2011 Petr Machata <pmachata@redhat.com> Add a concept of tasks and leader thread
/external/ltrace/proc.c
cebb88491e68bdf4d466b03970c9ca77f65615f8 09-Jul-2011 Petr Machata <pmachata@redhat.com> Conceal the list of processes behind an interface
/external/ltrace/proc.c
c7585b60235268e1f62bd91c5f040ef6df6e0ef3 08-Jul-2011 Petr Machata <pmachata@redhat.com> Add argument that defines whether we should enable breakpoints
/external/ltrace/proc.c
1b17dbf4c3754018310f22e26effffdcffde47ab 08-Jul-2011 Petr Machata <pmachata@redhat.com> Streamline interfaces execute_program, open_program
/external/ltrace/proc.c
ab3b72cc5d2d3efb3542192f0d72ff2ea4b082f9 31-Oct-2010 Joe Damato <ice799@gmail.com> Add -w/--where to show backtraces of traced functions.

- add libunwind as a dep to configure
- add a command line option to show backtraces from traced library functions
- best guess at autoconf stuff, seems to work x86_64 and i686
- NOT TESTED ON ANY OTHER PLATFORMS!
/external/ltrace/proc.c
8d1b92ba755f6d6229f5e230fc43d958b13836f8 03-Jul-2009 Juan Cespedes <cespedes@coco.thehackers.org> Some minor fixes
/external/ltrace/proc.c
f728123bd75a65a6a1536e198c3c30719e494e71 25-Jun-2009 Juan Cespedes <cespedes@debian.org> Re-organize file names
/external/ltrace/proc.c
3df476b28e4a9cdb43cf29fff8e89481310eb30d 28-May-2009 Juan Cespedes <cespedes@debian.org> Created library "libltrace.a" and a simple program that calls it
/external/ltrace/proc.c
e0660df7f943cc832694db3b8b6778c0ff65860d 21-May-2009 Juan Cespedes <cespedes@debian.org> Make exec() work again using PTRACE_O_TRACEEXEC
/external/ltrace/proc.c
a8909f71e1421949c960f287217be6c42c286c0f 28-Apr-2009 Juan Cespedes <cespedes@coco.thehackers.org> struct process -> Process
/external/ltrace/proc.c
e74c80de19a628cab68f10a1e7c92bef2988aafb 11-Feb-2009 Juan Cespedes <cespedes@coco.thehackers.org> Fixed segfault in traced process when receiving a signal

Specifically, when a signal was received while enabling a breakpoint
/external/ltrace/proc.c
f13505251e6402460f6cc7ec84e0d8ca91607b4f 16-Dec-2008 Juan Cespedes <cespedes@debian.org> Re-indent entry points to functions
/external/ltrace/proc.c
aee093126654f722523b47848a0c5449e39cf4bb 31-Aug-2007 Juan Cespedes <cespedes@debian.org> Some random fixes

* General: Small fixes (indentation, typos, clean-up of code)
* ltrace.c: Close output file on exit
* ltrace.c: use getenf("HOME") instead of getpwuid(geteuid())->pw_dir
* read_config_file.c, display_args.c: remove "ignore" argtype;
that's what "void" is for
* packaging/debian/: misc fixes, sync with version 0.5-1
* etc/ltrace.conf: added more system calls
* testsuite/ltrace.minor/trace-clone.c: sleep(1) to avoid earlier
termination of process
* sysdeps/linux-gnu/trace.c: trace_pid(): reverted Petr's patch
to wait for child to stop, as it stopped following clone()
* process_event.c: Disable breakpoints before doing fork() (again!),
to make children work as expected
/external/ltrace/proc.c
89a536028ab3b699b7f953b6b0fd7607917fc303 25-Jan-2007 Petr Machata <pmachata@redhat.com> Fix -p and -L behavior

* wait for process to stop after PTRACE_ATTACH
* always initialize the breakpoint dictionary,
and thus avoid NULL dereference.
/external/ltrace/proc.c
2d45b1a8e26a36a9f85dc49e721c4390ca93dc40 20-Feb-2006 Ian Wienand <ianw@ieee.org> run Lindent over source to get everything looking about the same
/external/ltrace/proc.c
9a2ad351a1c3215dc596ff3e2e3fd4bc24445a6b 20-Feb-2006 Ian Wienand <ianw@ieee.org> Switched to SVN (initial import)
/external/ltrace/proc.c
3219f320604810532a4938dda8f9dfadb0e840f3 16-Feb-2006 Ian Wienand <ianw@ieee.org> Some fixes...

* read_config_file.c: initialise pt stack argument to stop warning
* summary.c: make show_summary() obey -C for demangaling function names
/external/ltrace/proc.c
5c3fe0697b202cc7d95e90459de0fb312b297b27 14-Jun-2004 Juan Cespedes <cespedes@debian.org> Version 0.3.33

* Fixed two bugs, thanks to Mauro Meneghin <G1ld0@lycos.it>:
+ Cope correctly with breakpoint values greater than
sizeof(long) bytes
+ Fixed small bug in option -r (closes: Bug#212792)
* Show help if no (or few) arguments are given, just like
strace and fenris (thanks, Tomasz Wegrzanowski <taw@users.sf.net>)
* Some fixes from Jakub Bogusz <qboosh@pld-linux.org>:
+ Small 64-bit cleanup of code
+ support for more than 6 function arguments on amd64
+ Adapted SPARC port from Jakub Jelinek <jakub@redhat.com>
+ Added alpha support
/external/ltrace/proc.c
504a385858a49352bcfceca444ba4f1a7bfd20cd 04-Feb-2003 Juan Cespedes <cespedes@debian.org> Version 0.3.31

* Added a lot of functions to ltrace.conf,
thanks to Jakub Jelinek <jakub@redhat.com> (closes: Bug#144518)
* Fixed off-by-one problem in checking syscall number
* Removed some warnings
/external/ltrace/proc.c
7186e2af704f4458e6383e8a92482594db29b597 31-Jan-2003 Juan Cespedes <cespedes@debian.org> Version 0.3.28

* Fixed memory corruption when using execve() in a traced program
(closes: Bug#160341, Bug#165626)
/external/ltrace/proc.c
cac15c3f170b5ec2cc6304c8c0763a78103e1778 31-Jan-2003 Juan Cespedes <cespedes@debian.org> Version 0.3.27

* Removed dependency on libdl (it is no longer needed)
* Wrote generic dictionary, used in demangle.c and breakpoints.c
* Added debug.c for better debugging output
/external/ltrace/proc.c
8cc1b9d456c8f41e3a8cc0d3ec0d77eb779cb7bb 01-Mar-2002 Juan Cespedes <cespedes@debian.org> Version: 0.3.18

* Simplified arch-dependent stuff
* Updated list of syscalls and signals to Linux 2.4.18
* Unified coding-style of all function declarations
* Do not indent lines indicating signals, exit codes, etc
* Updated description
* fix off-by-one problem in checking syscall number (Tim Waugh
<twaugh@redhat.com> fixed this problem in RedHat two years ago;
thank you for NOT noticing me...)
/external/ltrace/proc.c
5b3ffdf2e696273d38434ff7b3c26349fff5a0ea 02-Jul-2001 Juan Cespedes <cespedes@debian.org> Version: 0.3.11

* Clean up lintian bugs
* Fixed small bug reading start of arguments in config file
* Keep a stack of nested calls (Morten Eriksen, 1999-07-04)
* Add "--indent" option (Morten Eriksen, 1999-07-04)
* cleans up connection between a breakpoint address and
a call instance (Morten Eriksen, 1999-07-04)
* New Standards-Version (3.5.5)
/external/ltrace/proc.c
d44c6b8b090b8b7aa9d971d9e0bfd848732a3071 25-Sep-1998 Juan Cespedes <cespedes@debian.org> Version: 0.3.6

* Added m68k port (Roman Hodek <Roman.Hodek@informatik.uni-erlangen.de>) (Bug#27075)
* Changed "int pid" with "pid_t pid" everywhere
* Fixed return type of some functions from "int" to "void *" (thanks, Roman)
/external/ltrace/proc.c
ac3db297f7c6f08b02a7edfb32e441875fd7c1d7 25-Apr-1998 Juan Cespedes <cespedes@debian.org> Version: 0.3.0

* Preliminary autoconf support
* Switched to getopt()
* New option: -C (demangle C++ names)
* New options: --help, --version
* Display "format" (printf-like) argument types
* Updated manual page
* New option: -e
/external/ltrace/proc.c
35d70634aacdf85a3cdf85792ce68989e27bc9c2 15-Mar-1998 Juan Cespedes <cespedes@debian.org> Version 0.2.7

* Some minor fixes
/external/ltrace/proc.c
273ea6d18164e35ee40524e853a6f04706d3bdff 14-Mar-1998 Juan Cespedes <cespedes@debian.org> Version 0.2.6

* Option `-f' now works (but it fails to attach some processes...)
* Output is now more similar to strace's
/external/ltrace/proc.c