Commit Graph

214 Commits

Author SHA1 Message Date
David L. Campbell 5cc40831ef Rename asm to llvm_asm. 2020-07-27 17:05:30 -07:00
Jeremy Soller c4ddf3fff4 Merge branch 'auxv' into 'master'
Implement auxiliary vector

See merge request redox-os/syscall!53
2020-07-21 14:16:24 +00:00
jD91mZM2 6346fd671e Add AT_PHDR 2020-07-10 12:48:22 +02:00
jD91mZM2 10994eaa96 Add auxiliery vector 2020-07-10 12:10:24 +02:00
Jeremy Soller 403c63adce Merge branch 'mmap2' into 'master'
Add mmap2

See merge request redox-os/syscall!52
2020-07-09 11:58:05 +00:00
4lDO2 27fcecb30f Add MAP_FIXED_NOREPLACE. 2020-07-08 18:17:11 +02:00
4lDO2 21b3cd34a8 Change the default fmap2 impl to use fmap. 2020-07-08 17:35:24 +02:00
4lDO2 6869e82a92 Add mmap2. 2020-07-08 15:36:59 +02:00
Jeremy Soller 122878874d Merge branch 'moar-gdb' into 'master'
Simplify EXEC catching + add signal handling

See merge request redox-os/syscall!51
2020-07-07 12:46:14 +00:00
jD91mZM2 a1af645cbf Remove bloated ptrace flags
I have had a think, and these flags are pointless. Since this is a
microkernel, there should always be exactly one way to do something, and
it should be the most flexible and simplest to implement. And you can
already just set breakpoints on the address provided by the signal
handler, and we'll give the entrypoint as an address to the fexec call.
2020-07-07 13:44:15 +02:00
jD91mZM2 69a8340f12 Add PTRACE_STOP_SIGNAL_HANDLER
Not entirely a useful thing, one *could* also put a breakpoint on the
handler address... I'll need to think about this some more.
2020-07-07 10:51:57 +02:00
Jeremy Soller fcebe8f225 Merge branch 'signed-seek' into 'master'
change seek sig to match posix - signed pos and result

See merge request redox-os/syscall!45
2020-06-27 11:48:09 +00:00
Jeremy Soller 7552c31f50 Merge branch 'ptrace-fexec' into 'master'
ptrace: stop on fexec

See merge request redox-os/syscall!50
2020-06-25 12:38:45 +00:00
jD91mZM2 c23d36e892 ptrace: stop on fexec 2020-06-21 17:53:29 +02:00
Graham MacDonald 940f3f1e30 move calc_seek_offset* to syscall 2020-06-19 23:53:05 +01:00
Graham MacDonald 1c394c447f change seek sig to match posix - signed pos and result 2020-06-19 23:31:20 +01:00
Jeremy Soller 9ecdc11d73 Merge branch 'physalloc3-fix' into 'master'
Add missing match item for `PartialAllocStrategy::Greedy`.

See merge request redox-os/syscall!48
2020-06-16 20:37:57 +00:00
4lDO2 eebf1c3856 Add missing match item for Greedy. 2020-06-16 21:50:56 +02:00
Jeremy Soller 783a03dc73 Merge branch 'complex-physalloc' into 'master'
Add a more complex physalloc syscall.

See merge request redox-os/syscall!46
2020-06-16 12:11:58 +00:00
4lDO2 3efc8d06be Add a more complex physalloc syscall. 2020-06-16 12:11:58 +00:00
Jeremy Soller 78bacde129 Merge branch 'ptrace-block' into 'master'
ptrace: Block on read, not on write

See merge request redox-os/syscall!47
2020-06-16 12:09:58 +00:00
jD91mZM2 1c637e72b2 ptrace: Block on read, not on write 2020-06-16 13:00:09 +02:00
Jeremy Soller 8d0015be86 Merge branch 'improved-mmio' into 'master'
Allow Mmio to work with const fn

See merge request redox-os/syscall!43
2020-02-10 14:40:29 +00:00
4lDO2 e380f6b3d4 Allow syscall::Result to accept other error types. 2020-02-10 15:32:30 +01:00
4lDO2 6cd82c63cd Enhance the Mmio API, and deprecate Mmio::new(). 2020-02-10 15:32:07 +01:00
Jeremy Soller 6beba08342 Merge branch 'dma-slices' into 'master'
Allow Dma<[T]>

See merge request redox-os/syscall!42
2020-02-03 01:22:56 +00:00
4lDO2 08a3800e87 Also allow ?Sized types to get the physaddr. 2020-02-02 11:44:55 +01:00
4lDO2 a2938fc7a3 Allow Dma to use ?Sized types, mostly for slices. 2020-02-02 11:44:55 +01:00
Jeremy Soller c969ac0699 Merge branch 'ptrace-end' into 'master'
Final few ptrace changes

See merge request redox-os/syscall!41
2020-01-20 17:59:22 +00:00
jD91mZM2 6ba71e7e06 Add ptrace exit breakpoint 2019-08-15 14:21:50 +02:00
Jeremy Soller 0e1e7d5d36 Merge branch 'ptrace-6' into 'master'
Ptrace overhaul & bitflags

See merge request redox-os/syscall!40
2019-07-31 20:29:42 +00:00
jD91mZM2 bf5e138def Allow catching int3 2019-07-31 16:43:28 +02:00
jD91mZM2 75a1e6f970 Add way to ignore signals 2019-07-30 15:54:07 +02:00
jD91mZM2 51f0ef2826 Implement Deref for PtraceFlags 2019-07-29 08:31:21 +02:00
jD91mZM2 a0581db1fa Merge ProtFlags and MapFlags 2019-07-28 17:36:10 +02:00
jD91mZM2 c0dad4475a Fix tests 2019-07-27 16:23:25 +02:00
jD91mZM2 9a7bd554d5 Suggestion: Switch to bitflags 2019-07-26 12:23:03 +02:00
jD91mZM2 edf3c008dc u64s are bigger than I thought! 2019-07-26 10:28:42 +02:00
jD91mZM2 52441c28b1 First step for ptrace overhaul 2019-07-24 21:41:57 +02:00
jD91mZM2 df993cc26e Switch to 2018 edition 2019-07-24 21:41:53 +02:00
Jeremy Soller 9e9f47d2a5 Merge branch 'ptrace' into 'master'
Drive ptrace into a wall, prepare for overhaul

See merge request redox-os/syscall!39
2019-07-24 02:02:10 +00:00
jD91mZM2 85a45f382c 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-23 20:15:33 +02:00
jD91mZM2 1ee9229c6a fixup! Fix sigaction Undefind Behavior 2019-07-23 20:15:33 +02:00
jD91mZM2 35b30e6fa9 Fix sigaction Undefind Behavior
Rust does not allow a `fn`-pointer to be null. This fixes that, while
luckily doing it in a way that leaves system calls
backwards-compatible :)
2019-07-23 20:15:32 +02:00
jD91mZM2 dcacbaed80 Add PtraceEvent for catching tracee forks 2019-07-23 20:14:52 +02:00
Jeremy Soller c89c2cb2f4 Add tests 2019-07-20 10:11:01 -06:00
Jeremy Soller 3480099632 Do not test on Linux 2019-07-08 16:47:39 -06:00
Jeremy Soller cceeae6ffe Add more tests 2019-07-07 09:11:45 -06:00
Jeremy Soller ba937b1497 Update CI 2019-07-06 11:42:06 -06:00
Jeremy Soller 5cd487b867 Add redoxer test to ci 2019-07-05 16:10:04 -06:00