jD91mZM2
ec2c42dc66
WIP: Work around fmap quirks
2020-07-13 12:48:29 +02:00
jD91mZM2
4b8d2e45c6
Add AT_PHDR
2020-07-10 12:56:08 +02:00
jD91mZM2
3430eadc9a
Add auxiliery vector
2020-07-10 12:34:32 +02:00
jD91mZM2
039f7f5c83
Simplify EXEC catching
...
Instead of having a separate flag, let's reuse STOP_SINGLESTEP :)
I wasn't thinking enough when making this flag!
2020-07-07 14:16:42 +02:00
jD91mZM2
7fc49eed74
ptrace: Allow stopping on fexec
2020-06-22 13:11:32 +02:00
4lDO2
003bd6a0d2
More complex physalloc
2020-06-16 21:20:00 +00:00
jD91mZM2
9c891384ea
Fix ptrace returning ENODEV when process exists
2020-06-16 13:42:04 +02:00
jD91mZM2
12f632837a
Misc proc code cleanup
2020-06-16 10:08:49 +02:00
4lDO2
e7d00d4735
Fix various kernel warnings.
2020-06-11 12:58:03 +02:00
Jeremy Soller
0bfd830f3c
Work around spurious nanosleep wakes
2020-04-20 21:08:56 -06:00
Jeremy Soller
123918ed43
Track the namespace that a description was opened from
2020-04-19 08:46:50 -06:00
Jeremy Soller
3c86af57b7
Allow contexts sharing process space to run on different CPUs
2020-04-19 08:46:50 -06:00
Jeremy Soller
fdf46d8043
Fix multi_core livelocks and add livelock debugging
2020-04-19 08:46:50 -06:00
Jeremy Soller
d4d14c78c3
Ensure page table locking at runtime
2020-02-12 20:34:49 -07:00
Jeremy Soller
7721a0a4c6
Fix assignment of cpu_id
2020-02-09 11:05:02 -07:00
Jeremy Soller
388ab2c87d
option -> opt
2020-02-09 09:50:40 -07:00
Jeremy Soller
72ea559da4
Do not log mprotects
2019-12-06 19:59:18 -07:00
Timothy DeHerrera
f75e1c4802
implement remaninder for nanosleep
2019-10-08 11:54:02 -06:00
Jeremy Soller
63e2a835e0
Fix clippy.sh script and fix a number of clippy warnings
2019-10-06 11:04:06 -06:00
jD91mZM2
cf0a7620df
Add ptrace exit breakpoint
...
This will let you stop at process exit and inspect it right before the
process dies.
2019-08-15 14:23:54 +02:00
jD91mZM2
62cd298202
Merge ProtFlags with MapFlags
2019-07-30 11:45:54 +02:00
jD91mZM2
a7b2bd22c1
More cleanup...
2019-07-27 15:39:09 +02:00
jD91mZM2
538ca49ee2
Suggestion: Switch to bitflags
2019-07-26 12:23:21 +02:00
jD91mZM2
3ac1416dba
First step for ptrace overhaul
2019-07-24 21:42:33 +02:00
Jeremy Soller
e95cb74d0b
Resolve cross-scheme links
2019-07-23 21:06:16 -06:00
jD91mZM2
a7da393cf5
WIP(ptrace): Better support for signals
...
Signals now cause an event, and there's a way to continue until the
next signal. I can see this being used for detection of `int3`
although I'm not entirely sure as it may prove being too late to stop
abortion of process.
2019-07-21 19:58:32 +02:00
jD91mZM2
4c2d8599d8
Add missing debug definitions
...
See [strace-redox#ea42589d](https://gitlab.redox-os.org/redox-os/strace-redox/commit/ea42589d36923e9c018a4d802a5cd0c3449d0e6c )
2019-07-21 10:06:28 +02:00
jD91mZM2
be867ae5f1
WIP(ptrace): Add ptrace event system for catching child forks
2019-07-20 09:45:07 +02:00
jD91mZM2
e3d8f23c71
WIP(ptrace): Add dbg! macro and fix waitpid immediately after exit
2019-07-20 09:45:01 +02:00
jD91mZM2
6fbb4fbae1
Ptrace memory reading and floating point registers support
2019-07-07 17:07:04 +00:00
Jeremy Soller
788526a3b3
Bare-bones ptracing functionality
...
Since even a very basic ptrace can be nice to have, I thought I would split
the, perhaps rather big, ptrace project up in multiple PRs to make as few
changes as necessary in each. This PR contains the initial registry modifying
bits and only a very basic security measure. Letting this out to the community
should be good for spotting bugs and maybe getting some hype ;)
2019-07-02 07:38:26 -06:00
Jeremy Soller
45ea634798
Revert "Merge branch 'ptrace' into 'master'"
...
This reverts merge request !103
2019-07-02 11:56:11 +00:00
jD91mZM2
effe02bd45
Remove change I am faaairly certain I did NOT add :O
...
I'm guessing it's some issue after a rebase or something...
2019-07-01 22:50:19 +00:00
Jeremy Soller
42f977e7da
Disable debug messages
2019-06-27 16:29:28 -06:00
Jeremy Soller
144ac70b12
Allow access to other thread's TLS with pointers
2019-06-23 20:21:22 -06:00
jD91mZM2
fe705d9b63
Switch to 2018 edition
...
Most of this was generated by the absolutely extraordinary `cargo fix`
subcommand. There were still 2 errors and a few warnings to patch up,
but compared to the normal 600+ errors, I'd say the fixer did a damn
good job! I'm also amazed that I could still start the VM after this,
I half expected some kinds of runtime failure...
2019-06-21 12:12:01 +02:00
Jeremy Soller
1be77c2ab4
Store sigmask
2019-06-02 18:45:06 -06:00
Jeremy Soller
126009f83c
Keep process name when using interpreter
2019-04-15 21:00:42 -06:00
Jeremy Soller
b66fef0479
Copy TCB if it was not initialized using kernel-allocated TLS
2019-04-15 20:47:27 -06:00
Jeremy Soller
6da3ab283e
Clone grants
2019-04-15 20:47:03 -06:00
Jeremy Soller
d432f7ce8c
Add debugging for mprotect
2019-04-14 21:32:31 -06:00
Jeremy Soller
3a0671d20f
Fix dropping grants without unmapping if they have no file descriptor (such as those from anonymous maps)
2019-04-14 19:23:23 -06:00
Jeremy Soller
339d68ac8d
Remove debugging messages
2019-04-14 19:12:13 -06:00
Jeremy Soller
434e799f2a
Place TCB at thread-specific location to avoid overlapping TCBs
2019-04-14 19:05:25 -06:00
Jeremy Soller
21e46b6a55
More cleanup of TLS mapping
2019-04-14 14:50:29 -06:00
Jeremy Soller
9762431a33
Cleanup TLS mapping
2019-04-13 22:00:27 -06:00
Jeremy Soller
8120131897
Add interpreter capability
2019-04-13 21:59:46 -06:00
Jeremy Soller
dc28023be1
Remove unnecessary clone
2019-04-13 21:58:34 -06:00
Jeremy Soller
58f9e5a801
0.1.54 - Add support for cache disable
2019-04-08 17:57:25 -06:00
Jeremy Soller
f36506613b
Update funmap support
2019-04-06 20:13:55 -06:00