Commit Graph

275 Commits

Author SHA1 Message Date
Jeremy Soller 105ca1d36e Merge branch 'userspace_fexec' into 'master'
Remove old exec/clone system calls in favor of userspace_fexec

See merge request redox-os/syscall!70
2022-07-27 15:31:29 +00:00
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
Jeremy Soller 30f29c3295 Merge branch 'update-toolchain-2022' into 'master'
Update toolchain, removing dependence on nightly features

See merge request redox-os/syscall!68
2022-03-23 18:05:17 +00: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 94de991da2 Bump cargo version. 2022-03-12 10:38:45 +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 14796acfed Bump cargo version. 2021-08-06 15:01:56 +02:00
4lDO2 ca6aea9106 Merge branch 'fsgsbase' into 'master'
Add fsbase/gsbase reg struct and more ELF auxiliary vectors.

See merge request redox-os/syscall!67
2021-08-06 12:45:08 +00:00
4lDO2 519a09e964 Add fs/gsbase reg struct and more ELF aux vectors. 2021-08-01 01:40:01 +02:00
Jeremy Soller 841b5f4221 Merge branch 'futex_wait64' into 'master'
Add FUTEX_WAIT64.

See merge request redox-os/syscall!66
2021-07-11 21:32:20 +00:00
4lDO2 fa5bc90ead Add FUTEX_WAIT64. 2021-07-08 13:22:35 +02:00
4lDO2 52fcd238db 0.2.9 2021-06-16 13:23:39 +02:00
Jeremy Soller 0d3facac18 Merge branch 'renamed-const_fn-feature' into 'master'
Specify feature(const_fn_trait_bound)

See merge request redox-os/syscall!65
2021-06-15 19:53:59 +00:00
coolreader18 9c7053d77f Specify feature(const_fn_trait_bound) 2021-06-15 19:53:58 +00:00
Jeremy Soller 0b51bddd28 0.2.8 2021-05-04 08:09:58 -06: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 87e913d991 0.2.7 2021-04-28 19:58:21 -06:00
Jeremy Soller a30fa69e38 Use correct syscall return register on aarch64 2021-04-28 19:57:49 -06:00
Jeremy Soller d283835028 0.2.6 2021-04-13 19:13:24 -06:00
Jeremy Soller 246f15d983 Merge remote-tracking branch 'origin/aarch64-rebase' 2021-04-13 19:12:27 -06:00
Jeremy Soller f07a954825 Merge branch 'fix-mmap-test' into 'master'
Get the mmap test to build

See merge request redox-os/syscall!63
2021-03-12 14:49:25 +00: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
Jeremy Soller bfdd0bb8d6 Merge branch 'basic-floating-point-support' into 'aarch64-rebase'
Basic floating point support

See merge request redox-os/syscall!62
2021-01-27 17:44:23 +00: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
Jeremy Soller 3dc594c1ca Merge branch 'fix-0.2.2' into 'master'
Add missing imports, fixing 0.2.2.

See merge request redox-os/syscall!60
2021-01-11 13:40:56 +00:00
4lDO2 87158cd932 Bump cargo version to 0.2.3. 2021-01-11 14:39:08 +01: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
Jeremy Soller 45c7ca85b1 0.2.1 2020-08-27 09:35:55 -06:00