Ryan Fleury
|
f50b54cff7
|
complete metacodification of rdi format info into tables
|
2024-06-01 19:24:46 -07:00 |
|
Ryan Fleury
|
d3adfdeced
|
deduplicate debug string event generation; log ctrl messages
|
2024-05-31 11:17:59 -07:00 |
|
Ryan Fleury
|
15f5894c60
|
choose debug info key timestamps from debug info path, rather than module timestamp; the module should be allowed to be newer
|
2024-05-26 13:25:03 -07:00 |
|
Ryan Fleury
|
489ae56223
|
fix moduleless unwinding and find-threads without debug info
|
2024-05-23 16:17:31 -07:00 |
|
Ryan Fleury
|
f26b4c3b06
|
eliminate path-tree-based keying of debug info on frontend; use dbgi-layer-defined debug info keys, which can be more robust to changes to the same debug info path across time (e.g. during hot reloads
|
2024-05-23 10:30:23 -07:00 |
|
Ryan Fleury
|
7a4e939886
|
fix incorrectly referring to root entity for debug info if missing; fix thread register cache issues; fix new dbgi layer issues
|
2024-05-22 11:13:08 -07:00 |
|
Ryan Fleury
|
a019115b95
|
get ctrl and debug frontend layers onto new pdb-path-based debug info loader layer; sketch out standalone fuzzy search layer, to replace old dbgi searching functionality; shift all debug frontend code from referring to debug info via 'binaries' to referring to debug info via 'dbgis', just file entities at the location of o.g. debug info
|
2024-05-21 10:08:28 -07:00 |
|
Ryan Fleury
|
b9ac104276
|
begin stitching new dbgi layer usage code into ctrl layer; keep track of per-module preferred pdb paths via event-synchronized ctrl entity tree; still need conversion
|
2024-05-20 17:15:11 -07:00 |
|
Ryan Fleury
|
6e41bdf11b
|
first pass at loader portion of new dbgi layer replacement; set up ctrl entity for per-module debug info selection path info
|
2024-05-20 16:28:52 -07:00 |
|
Ryan Fleury
|
fd6befecc3
|
get tls address calculation off of binary parsing path; do based on in-process memory
|
2024-05-20 12:55:20 -07:00 |
|
Ryan Fleury
|
5342fab86b
|
bugfix in new unwinder; applying stack ptr read & unwind when doing epilog unwinds
|
2024-05-20 11:12:29 -07:00 |
|
Ryan Fleury
|
9919ac59bb
|
move module image info parse / cache management to ctrl thread, directly tie to module lifetime as ctrl thread sees it; reduce load from each unwind
|
2024-05-20 10:58:45 -07:00 |
|
Ryan Fleury
|
2d1fcd7475
|
fix some unwanted frontend unwind cache behavior; fix staleness calculation in ctrl process memory cache
|
2024-05-20 08:23:41 -07:00 |
|
Ryan Fleury
|
393fb9e5f2
|
eliminate old unwinder usage code; more regression fixing
|
2024-05-17 15:07:21 -07:00 |
|
Ryan Fleury
|
301cf6b7ac
|
regression fixes, better integration, and tightening up the new unwinder
|
2024-05-17 14:15:11 -07:00 |
|
Ryan Fleury
|
578a56d231
|
further progress on new unwinder
|
2024-05-16 17:12:37 -07:00 |
|
Ryan Fleury
|
33ab26dfb3
|
begin porting unwinder to ctrl layer, just built purely on in-process memory, and getting completely off of parsed binary image artifacts
|
2024-05-16 15:39:57 -07:00 |
|
Ryan Fleury
|
3085482e34
|
expand base layer logging mechanism with bucketing info; make one bucket for passive log collection, another for user-facing errors; always consume user errors at the top-level and display; use user-error mechanism to communicate bad 32-bit app launches from demon
|
2024-05-14 08:10:02 -07:00 |
|
Ryan Fleury
|
05f2cde2ee
|
fix clang
|
2024-05-13 13:10:49 -07:00 |
|
Ryan Fleury
|
f4ea9e66b0
|
bugfix on-demand process-dependent breakpoint resolution path & user breakpoint hit logic in stepping machine; more logging
|
2024-04-25 08:59:00 -07:00 |
|
Ryan Fleury
|
ec13092a35
|
ui thread logging; more ctrl thread logging
|
2024-04-23 09:57:17 -07:00 |
|
Ryan Fleury
|
757cd9b9d2
|
correct createfile params for appending
|
2024-04-23 08:34:32 -07:00 |
|
Ryan Fleury
|
856c59a949
|
set up ctrl thread log scopes; ditch ctrl -> user log stuff, just make each log site in control of exporting to a separate file
|
2024-04-18 15:09:43 -07:00 |
|
Ryan Fleury
|
62d1c6b130
|
scoped log gathering; communicate ctrl logs -> user via events
|
2024-04-18 14:48:03 -07:00 |
|
Ryan Fleury
|
b995909997
|
sketch out logging stub, to begin marking up debugger layers with logging - high level stuff still wip
|
2024-04-17 14:32:09 -07:00 |
|
Ryan Fleury
|
36b50981ff
|
fix conditional breakpoints, post demon2/ctrl passes
|
2024-04-05 11:38:14 -07:00 |
|
Ryan Fleury
|
7496f3b8cc
|
dont over-ambitiously respond to exceptions/errors on kill/detach
|
2024-03-29 10:22:06 -07:00 |
|
Ryan Fleury
|
4b3941c17f
|
sketch out non-utf8 string visualization in frontend eval paths; simple retry mechanism for large memory reads that may fail across page boundaries in ctrl process memory cache
|
2024-03-29 10:09:57 -07:00 |
|
Ryan Fleury
|
a14d0f5b18
|
rewire up target colors with processes/modules/threads; use first module path for correllation rather than entities & id correllation
|
2024-03-27 15:25:27 -07:00 |
|
Ryan Fleury
|
22185cee5f
|
eliminate stuck-step disabling hack
|
2024-03-27 14:36:11 -07:00 |
|
Ryan Fleury
|
1da92b8dbc
|
store per-launch entry points in ctrl entity store; use to later correllate PIDs to custom entry points in run path
|
2024-03-27 14:24:06 -07:00 |
|
Ryan Fleury
|
291bf3875d
|
eliminate launch-and-init path, switch fully to separate 'launch' and 'run' paths; snap to selected thread if no stopper thread on stopped events;
|
2024-03-27 14:09:29 -07:00 |
|
Ryan Fleury
|
53163f3610
|
ctrl: kill launch_and_handshake; begin extending run to be usable for launch-and-init and launch-and-run operations
|
2024-03-27 12:26:15 -07:00 |
|
Ryan Fleury
|
88b692c840
|
eliminate fallback cache in text cache layer; we can use the hash store layer to rewind
|
2024-03-26 12:11:00 -07:00 |
|
Ryan Fleury
|
f7e7aec355
|
bundle 'get key & stream' operation in process memory cache; eliminate old cache interaction in texture view rule hook
|
2024-03-26 11:55:15 -07:00 |
|
Ryan Fleury
|
55146b547b
|
reading & organization pass over unwinding layer; deduplicate PE info with PE layer, move dwarf info to in-progress dwarf layer
|
2024-03-25 14:42:54 -07:00 |
|
Ryan Fleury
|
1c3792a3da
|
tighten architecture-specific path for unwinder
|
2024-03-25 13:34:43 -07:00 |
|
Ryan Fleury
|
83ecb4b86a
|
ctrl thread stepping machine: read initial stack-pointer-check-value *before* single-stepping stuck threads, otherwise we can obtain an incorrect stack check value if the single-step causes a call.
|
2024-03-22 17:27:54 -07:00 |
|
Ryan Fleury
|
c26274ac70
|
disable single-step-stuck-thread behavior when launching-and-initing, such that breakpoints on entry point will not be stepped over
|
2024-03-22 17:17:08 -07:00 |
|
Ryan Fleury
|
2c8c9a497c
|
parameterize ctrl thread registers cache with entity store, rather than relying on implicit demon-api-provided cache
|
2024-03-22 16:15:20 -07:00 |
|
Ryan Fleury
|
c636e1ad2e
|
extend demon2 with explicit separation between blocking ctrl mechanisms & passive access/introspection/writing mechanisms; extend demon2 api with access mechanism
|
2024-03-22 15:53:04 -07:00 |
|
Ryan Fleury
|
ca01e66ea2
|
plug in tls root vaddr path
|
2024-03-22 14:12:40 -07:00 |
|
Ryan Fleury
|
9de678ec22
|
disable debug heap by default; get unwindg path off caching layers & use demon reads directly
|
2024-03-22 13:51:26 -07:00 |
|
Ryan Fleury
|
e9129975e3
|
double buffer locals cache & tls base cache; introduce synchronizing mechanism for run vs. non-run ctrl thread states, to only attempt demon reads/queries during non-running times
|
2024-03-22 13:32:22 -07:00 |
|
Ryan Fleury
|
3994adae92
|
double-buffer frontend unwind cache
|
2024-03-22 11:56:28 -07:00 |
|
Ryan Fleury
|
982f2b6bab
|
extend process memory cache queries with output channel for staleness detection - in some cases this is crucial, in other cases you don't care & want to passively accept stale redsults
|
2024-03-22 10:33:20 -07:00 |
|
Ryan Fleury
|
236214db25
|
eliminate unnecessary layers in frontend
|
2024-03-21 16:13:01 -07:00 |
|
Ryan Fleury
|
2c9ff37b2c
|
sketch out new unwind cache types
|
2024-03-21 13:53:12 -07:00 |
|
Ryan Fleury
|
1466b27385
|
tweak registers cache lookup rules, to correctly return stale results on failed reads
|
2024-03-21 11:48:48 -07:00 |
|
Ryan Fleury
|
e0e84c2ee3
|
further progress on integrating new demon layer
|
2024-03-21 11:28:47 -07:00 |
|