Nikita Smith
|
b7fb4fe04d
|
WIP improved signal handling in multi-threaded programs
|
2025-11-19 11:38:22 -08:00 |
|
 Nikita SmithandRyan Fleury
|
1196de6916
|
move sys/wait.h to os_core_linux
|
2025-11-07 16:37:45 -08:00 |
|
Ryan Fleury
|
035e72306d
|
o_cloexec; preserve leading slashes in root-level paths
|
2025-11-07 16:37:30 -08:00 |
|
 Nikita SmithandRyan Fleury
|
ddc57a0ac4
|
WIP changed backend to use ptrace seize and interrupt
|
2025-11-07 15:47:15 -08:00 |
|
 Nikita SmithandRyan Fleury
|
857860fb27
|
remove unused includes and inline ptrace options define
|
2025-11-07 14:39:46 -08:00 |
|
 Nikita SmithandRyan Fleury
|
66606b0327
|
use STAP probes to generate load and unload module events
|
2025-11-07 14:39:46 -08:00 |
|
 Nikita SmithandRyan Fleury
|
c4c9ef5182
|
WIP: got Linux to the point where single stepping and breakpoint
events are being reported correctly to the debugger
|
2025-11-07 14:39:46 -08:00 |
|
 Nikita SmithandRyan Fleury
|
78f2e641bc
|
fix program header rebase issue in non-PIE exes, and export program header
info through DEMON event
|
2025-11-07 14:39:45 -08:00 |
|
Ryan Fleury
|
c738768e41
|
demon/win32: do not assume actual_read is valid after a failed process memory read
|
2025-10-09 16:05:13 -07:00 |
|
Ryan Fleury
|
284524e0c4
|
fix incorrect ctx check in win32 demon
|
2025-10-06 14:35:41 -07:00 |
|
Ryan Fleury
|
45a2137d08
|
linux: fix incorrect gethostname usage, fix build, fix clang warnings
|
2025-09-30 10:02:40 -07:00 |
|
Ryan Fleury
|
0d15b8670b
|
eliminate bifurcated rw lock path based on exclusive mode; promote thread operations to base layer, use os layer as impl; first pass on moving file streaming layer to base layer's async wavefront
|
2025-09-17 14:47:55 -07:00 |
|
 Mārtiņš MožeikoandRyan Fleury
|
d8bb8c76c6
|
add shadow stack register and read it in win32 thread context
|
2025-09-03 09:36:20 -07:00 |
|
Ryan Fleury
|
cdec8d5980
|
ctrl/demon: fastfail exception codes / notes; p2r2: finish symbol conversion etc. in new wavefront-style version
|
2025-08-19 16:47:12 -07:00 |
|
Ryan Fleury
|
c33dd2869a
|
define synchronization primitive interface in base layer, implement using os layer; convert all usage -> base layer; use base sync primitives in lane tctx info
|
2025-08-18 10:46:43 -07:00 |
|
Ryan Fleury
|
cd8c3a2172
|
enable read/write bits on just read data breakpoint on x64 - there is no way to do a read-only (without write) data breakpoint
|
2025-08-06 11:50:01 -07:00 |
|
Ryan Fleury
|
9c2bdf492f
|
ptrace register reading debugging
|
2025-08-04 12:36:04 -07:00 |
|
Ryan Fleury
|
25963dc9b4
|
demon/linux: correct main module address range formation; further progress on event processing
|
2025-07-31 17:33:58 -07:00 |
|
Ryan Fleury
|
a323aec6d0
|
demon/linux: x64 trap writing
|
2025-07-31 15:10:25 -07:00 |
|
Ryan Fleury
|
7c99e79981
|
demon/linux: first pass port at x64 register writing
|
2025-07-31 14:54:28 -07:00 |
|
Ryan Fleury
|
1a19bf9663
|
render/d3d11: adjust allowed frame 'latency' (frames-in-queue) based on number of active windows, to not unnecessarily block if we have two windows to build frames for; demon/linux: sketch out register writing path, ensure reg read/write paths have slots for other architectures
|
2025-07-31 14:09:42 -07:00 |
|
Ryan Fleury
|
9ef87e9d56
|
fix to match 32 -> 64 change in demon/win32
|
2025-07-29 14:22:23 -07:00 |
|
Ryan Fleury
|
7403a8ea3b
|
demon/linux: x64 register reading
|
2025-07-29 14:19:54 -07:00 |
|
Ryan Fleury
|
0e9f2ee03c
|
demon/linux: halting, sigstop cases
|
2025-07-28 17:47:50 -07:00 |
|
Ryan Fleury
|
64c2d98ede
|
demon/linux: sketch out signal interpretation, more ptrace study
|
2025-07-28 17:25:24 -07:00 |
|
Ryan Fleury
|
4d7088d321
|
do not pre-emptively exit the debug event loop on timeout unless we actually have debug strings
|
2025-07-25 14:21:31 -07:00 |
|
Ryan Fleury
|
fcf3e73f5f
|
demon/linux: thread resuming in dmn_ctrl_run
|
2025-07-17 18:51:40 -07:00 |
|
Ryan Fleury
|
6fb406d6c5
|
demon/linux: launch event info coverage, module path strings, pipe deferred debug info events first on dmn_ctrl_run
|
2025-07-17 18:05:00 -07:00 |
|
Ryan Fleury
|
eba2aff0f0
|
demon/linux: process read/write
|
2025-07-17 14:46:31 -07:00 |
|
Ryan Fleury
|
3466779d41
|
demon/linux: kill, detach, process iteration
|
2025-07-17 14:45:08 -07:00 |
|
Ryan Fleury
|
2db6b826a1
|
demon/linux: launching events/entity builds; access synchronization
|
2025-07-17 14:31:57 -07:00 |
|
Ryan Fleury
|
0610d5ae13
|
demon/linux: pid extraction, module extraction, most of launching path
|
2025-07-17 14:08:44 -07:00 |
|
Ryan Fleury
|
6e6a2df0cb
|
implement 'priority thread' in demon, to prefer debug events from selected thread - greatly improves multithreaded stepping
|
2025-07-16 15:38:27 -07:00 |
|
Ryan Fleury
|
fc8b521b2c
|
adjust demon to correctly produce, & ctrl to correctly process, breakpoint events which cannot be correlated to a high-level UI-defined breakpoint state. this catches, for example, data breakpoints which are programmatically set by the user program.
|
2025-07-16 11:54:02 -07:00 |
|
Ryan Fleury
|
709bc2cfab
|
float run/mem/reg generations out of demon, into core; fix issue of demon access synchronization w/ mem gens, causing failure-to-update-stale-parts-of-process-memory-cache
|
2025-06-28 10:02:51 -07:00 |
|
Ryan Fleury
|
4926f6cfc8
|
programmatic address range annotations; pipe -> ctrl entities; render in memory view
|
2025-06-08 17:37:55 -07:00 |
|
Ryan Fleury
|
94b969f203
|
copyright year
|
2025-06-02 14:13:57 -07:00 |
|
Ryan Fleury
|
14cfd87f68
|
start sketching out basic unreal type views
|
2025-05-28 18:00:16 -07:00 |
|
Ryan Fleury
|
56b975a6b1
|
adjust async call stack querying API to guard against waiting in clearly-invalid cases (trying to wait for call stacks when running, for example); also eliminate logs
|
2025-05-20 10:36:44 -07:00 |
|
Ryan Fleury
|
a379134ed8
|
demon tweaks / debugging; adjust call stack cache reading API to account for high-priority path, where we want to try computing the thread's call stack immediately
|
2025-05-16 21:12:58 -07:00 |
|
Ryan Fleury
|
e513af5361
|
ditto
|
2025-05-14 15:30:49 -07:00 |
|
Ryan Fleury
|
60e47fb821
|
unwind cache -> callstack cache
|
2025-05-14 15:28:57 -07:00 |
|
Ryan Fleury
|
3fd1f9d255
|
stub out demon/fontprovider so we can build debugger
|
2025-05-10 14:28:14 -07:00 |
|
Ryan Fleury
|
8b7e7471f5
|
markup: thread id based APIs for names/colors; handle names/colors-before-thread, or id-based application, in ctrl layer
|
2025-05-03 16:45:45 -07:00 |
|
Ryan Fleury
|
7ba027e841
|
sketch out new markup API for programmatic address/data breakpoints
|
2025-04-12 15:21:48 -07:00 |
|
Ryan Fleury
|
6a5fa58d8a
|
dedup flagged traps, so we don't write the same data breakpoint into the registers multiple times
|
2025-04-12 14:47:29 -07:00 |
|
Ryan Fleury
|
97e3c73086
|
fix flagged-trap-search
|
2025-04-12 14:39:38 -07:00 |
|
Ryan Fleury
|
0f380e9228
|
transmit user breakpoints hit from demon -> ctrl using ctrl-defined IDs, correllate those IDs to rd-defined IDs, use rd-defined IDs in stop events to count bp hits, rather than re-resolving breakpoints. further fixes & work on first pass of data breakpoints
|
2025-04-12 14:28:38 -07:00 |
|
Ryan Fleury
|
ecad70ca19
|
pass through data breakpoint length, more progress on fixes/correctness in first pass
|
2025-04-11 18:07:00 -07:00 |
|
Ryan Fleury
|
929e68d074
|
first pass at setting up x64 debug registers for data breakpoints
|
2025-04-11 17:49:16 -07:00 |
|