4lDO2
300b5e4a80
Add PAGE_SIZE for all archs, make it public.
2022-07-27 17:30:17 +02:00
4lDO2
d6af266119
Add "opcodes", for e.g. mmap on other addr spaces.
2022-07-27 10:48:48 +02:00
4lDO2
c7b84541dc
Improve general flags for userspace_fexec.
...
First, auxiliary vectors are no longer left here in syscall, but remain
in relibc. The rationale behind removing them was that they are no
longer used by the kernel in any way, as exec is moved to userspace.
Second, a ptrace event for address space switches was added. This is to
allow tracers to reopen their mem file when that mem file points to
different memory (otherwise mem can be decoupled from address spaces and
simply use the one that the context uses at the time).
2022-07-27 10:48:48 +02:00
4lDO2
ab5c685978
Remove SYS_EXEC from existence
2022-07-27 10:48:48 +02:00
4lDO2
f407c6b70c
Remove CloneFlags.
2022-07-27 10:48:48 +02:00
4lDO2
67cf0997dc
Remove clone() and Daemon abstraction.
2022-07-27 10:48:48 +02:00
4lDO2
8e4529ae7c
Make DMA code use whole pages in syscalls.
2022-07-27 10:48:48 +02:00
4lDO2
a16a1ef95c
Add the CloneInfo struct to extend SYS_CLONE.
2022-07-27 10:48:48 +02:00
4lDO2
a88e2f72cb
Derive traits for ExecMemRange, change flags type.
2022-07-27 10:48:47 +02:00
4lDO2
6d132345ee
WIP: Replace fexec with exec.
2022-07-27 10:48:44 +02:00
Jeremy Soller
0c98fbd162
0.2.16 - expose io::Pio on x86 32-bit
2022-07-26 15:30:10 -06:00
Jeremy Soller
aa7d36ed83
0.2.15 - fix x86 32-bit path
2022-07-22 16:22:32 -06:00
Jeremy Soller
22a5a68472
0.2.14 - add x86 32-bit syscalls
2022-07-22 16:18:42 -06:00
Jeremy Soller
c4d3a40a96
0.2.13 - remove x86 and arm 32-bit syscalls
2022-03-30 10:32:42 -06:00
4lDO2
638c2d2a35
Fix aarch64 compilation.
...
This is to hopefully avoid having to update syscall everywhere again,
when fixing aarch64.
2022-03-19 22:05:42 +01:00
4lDO2
418051ac78
Replace llvm_asm with asm to support stable Rust.
2022-03-12 10:36:30 +01:00
4lDO2
efb5b3ee5b
Replace ! with Infallible for now.
2022-03-12 10:36:07 +01:00
Jeremy Soller
87ffd8b862
0.2.11 - add daemon abstraction
2022-02-28 15:03:51 -07:00
4lDO2
519a09e964
Add fs/gsbase reg struct and more ELF aux vectors.
2021-08-01 01:40:01 +02:00
4lDO2
fa5bc90ead
Add FUTEX_WAIT64.
2021-07-08 13:22:35 +02:00
coolreader18
9c7053d77f
Specify feature(const_fn_trait_bound)
2021-06-15 19:53:58 +00:00
Jeremy Soller
ca3b4d2b94
Add riscv64 syscall implementation and register stubs
2021-05-04 08:09:28 -06:00
Jeremy Soller
a1006e115f
Remove unnecessary mut from aarch64 syscall macro
2021-05-04 08:09:12 -06:00
Jeremy Soller
a30fa69e38
Use correct syscall return register on aarch64
2021-04-28 19:57:49 -06:00
Jeremy Soller
246f15d983
Merge remote-tracking branch 'origin/aarch64-rebase'
2021-04-13 19:12:27 -06:00
4lDO2
040ebf99d9
Get the mmap test to build.
2021-03-07 16:16:40 +01:00
Jeremy Soller
0f9030f032
0.2.5 - paths are required to be utf8
2021-02-14 13:42:58 -07:00
Robin Randhawa
beb880b706
aarch64: Basic Floating point/SIMD definition
2021-01-27 17:21:22 +00:00
Robin Randhawa
21cf9e31fc
aarch64: Remove vestiges of old syscallX functions
...
Now that they have been replaced by the more modern macro magic
versions.
2021-01-27 17:20:33 +00:00
Robin Randhawa
3029f094a4
aarch64: Cleanups and alignment with x86_64 macros
2021-01-26 18:28:41 +00:00
Jeremy Soller
b12d582d4d
WIP: aarch64
2021-01-13 10:48:01 -07:00
Jeremy Soller
ee9a92367e
0.2.4 - use correct arch when target_os is none
2021-01-11 07:00:34 -07:00
4lDO2
1f58eaf222
Add missing imports, fixing 0.2.2.
2021-01-11 14:35:32 +01:00
Jeremy Soller
adfd9702bf
0.2.2 - fix compilation on aarch64
2021-01-10 10:51:07 -07:00
jD91mZM2
5d53df836e
Remove brk
2020-08-15 17:31:27 +02:00
jD91mZM2
2bc9acc5c2
Breaking Change: Goodbye, deprecated functions
2020-08-14 15:18:44 +02:00
jD91mZM2
7f668b27cf
Replace llvm_asm in x86_64 code with asm
...
Also removes the syscall1_clobber call, because `clone` now saves the
registers in the kernel anyway.
2020-08-01 16:52:16 +02:00
Jeremy Soller
a0ea09ceb3
Merge branch 'memory' into 'master'
...
Add funmap2
See merge request redox-os/syscall!55
2020-07-30 12:58:12 +00:00
David L. Campbell
5cc40831ef
Rename asm to llvm_asm.
2020-07-27 17:05:30 -07:00
jD91mZM2
bca011c7a0
Add funmap2 scheme call
2020-07-24 13:02:29 +02:00
jD91mZM2
7cc003d583
Add funmap2
2020-07-22 15:10:03 +02: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
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
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
jD91mZM2
c23d36e892
ptrace: stop on fexec
2020-06-21 17:53:29 +02:00