Commit Graph

2324 Commits

Author SHA1 Message Date
bjorn3 c089667ade Remove support for the legacy packet user schemes 2025-12-13 15:52:30 +01:00
bjorn3 3091f40c13 Warn against opening a legacy scheme version 2025-12-13 15:12:01 +01:00
Wildan M e06f908b1b Add CI workflow 2025-12-11 01:07:33 +07:00
bjorn3 3bf880e008 Correctly handle MAP_FIXED with a zero address 2025-12-09 23:09:19 +01:00
bjorn3 5a11067f10 Support non-fixed and anonymous remote mmap 2025-12-09 20:55:19 +01:00
bjorn3 58a362844a Add a binary variant for the filetable read operation
This is a lot easier to parse in no_alloc scenarios than the current
textual format. This would help with moving the cloexec handling from
relibc to redox-rt.
2025-12-08 21:55:03 +01:00
Anhad Singh ac713a061c misc(scheme/user): treat all spurious wakeups as signal
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2025-11-28 15:24:32 +11:00
Anhad Singh 45aae5f963 misc(scheme/user): use preempt guard
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2025-11-27 16:23:31 +11:00
Anhad Singh b2c9e5defd misc(scheme/user): unblock the process *after* setting the state
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2025-11-27 16:21:03 +11:00
Anhad Singh 4ff82ad8b5 fix(scheme/user): deadlocks inside call_extended_inner
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2025-11-27 14:39:14 +11:00
Jeremy Soller 27465b6132 Make CPU announcements debug level 2025-11-23 07:41:09 -07:00
Jeremy Soller 7ffc046d46 Enable serial interrupts on aarch64 ACPI 2025-11-21 08:39:38 -07:00
Jeremy Soller e3cafc975f Format 2025-11-17 17:41:04 -07:00
Jeremy Soller 91ba44e2fa Implement F_DUPFD_CLOEXEC 2025-11-17 17:40:39 -07:00
aarch 2bdc5d2109 Implement kfpath for dtb kernel scheme 2025-11-15 17:45:39 +00:00
Jeremy Soller e14f935063 Ensure pipe is_alive is set before triggering event or condition 2025-11-14 20:59:44 -07:00
Jeremy Soller 2d9f2015d0 Add upper table fds to kernel.proc filetable 2025-11-14 15:06:37 -07:00
Jeremy Soller 42f9f04188 Require kfpath implementation, add to acpi scheme 2025-11-14 14:19:33 -07:00
Jeremy Soller 61ad67fbfe Improve display of upper table in iostat 2025-11-14 13:55:55 -07:00
4lDO2 33dbf2458e only clear RC_USED_NOT_FREE with freelist locked 2025-11-14 20:06:18 +01:00
4lDO2 96552163f6 Clear RC_USED_NOT_FREE even for contention case. 2025-11-14 20:06:18 +01:00
4lDO2 dc33c67997 Fix potential refcount underflow from fetch_sub. 2025-11-14 20:06:18 +01:00
Jeremy Soller cbea1aca3d Implement kfpath on more schemes 2025-11-14 11:36:49 -07:00
Jeremy Soller 64ea4251ee Debug SYS_MREMAP 2025-11-13 15:55:02 -07:00
Jeremy Soller e6edef2d8e Downgrade addrspace outside futex loop 2025-11-12 10:34:18 -07:00
Jeremy Soller 7834392dba Use hashmap for futex 2025-11-12 08:03:24 -07:00
Jeremy Soller f9d9a3414b Update rmm 2025-11-12 07:37:14 -07:00
4lDO2 70256a5b2f Revert "Fix i686 using cmpxchg8b-based AtomicU64 for stats."
This reverts commit 21f2d8f3e4.
2025-11-12 11:07:09 +01:00
4lDO2 21f2d8f3e4 Fix i686 using cmpxchg8b-based AtomicU64 for stats. 2025-11-12 10:59:51 +01:00
bjorn3 00fdfaf11c Remove -Csoft-float from clippy.sh
It doesn't do anything and will be removed in a future rustc version.
Usage was already removed from the Makefile previously.
2025-11-11 13:40:48 +00:00
Jeremy Soller 01ec650b1e Add support for userspace stack traces using usercopy 2025-11-10 08:54:06 -07:00
Jeremy Soller c66423cec6 Sort target json and allow AtomicU64 on i586/i686 2025-11-10 08:53:47 -07:00
Jeremy Soller 531dfaa3e1 Format 2025-11-06 22:14:25 -07:00
Jeremy Soller 8ae1ced55d Recursively trigger event queues 2025-11-06 22:14:13 -07:00
Jeremy Soller c3437ab6eb Ignore any opens with event: or time: 2025-11-06 09:15:52 -07:00
Jeremy Soller 60af085356 Improve cpu stat accuracy 2025-11-03 20:42:08 -07:00
Jeremy Soller aa50069e15 Remove unnecessary log 2025-11-01 20:49:06 -06:00
Jeremy Soller 91b835d29f Reduce logging significantly 2025-11-01 20:24:11 -06:00
Jeremy Soller 64f2314e2c Fix makefile ifeq 2025-11-01 14:02:34 -06:00
bjorn3 301f163112 Handle building for i586-unknown-redox 2025-11-01 19:30:40 +01:00
bjorn3 65273ea898 Replace all Arc::try_new with Arc::new
The global allocator panics when out of memory rather than returning an
errors. In addition there are plenty of other places where we don't
handle allocation failure anyway. At some point in the future we should
systematically handle out of memory conditions, but until then let's not
pretend we do and get rid of the usage of the unstable allocator_api
feature that is unlikely to get stabilized any time soon.
2025-10-26 12:44:52 -06:00
bjorn3 e101629377 Inline a bunch of functions in KernelMapper 2025-10-26 12:44:52 -06:00
bjorn3 85b5487b5b Couple minor cleanups to the global allocator 2025-10-26 12:44:52 -06:00
bjorn3 3b1fd27431 Remove byteorder dependency 2025-10-26 12:43:08 -06:00
bjorn3 bc3a59abb3 Minor simplification to profiling::nmi_handler 2025-10-26 18:27:29 +01:00
bjorn3 0f7b16d89d Partially use cfg!() rather than #[cfg] for controlling the profiling module
This only adds a pointer worth of overhead per cpu core in the
PerCpuBlock struct.

Also fix a bunch of unsafe_op_in_unsafe_fn warnings in the profiling
code.
2025-10-26 18:27:29 +01:00
bjorn3 53640e67b7 Remove rustc_cfg dependency 2025-10-26 16:32:42 +01:00
bjorn3 8367462abe Update rmm submodule 2025-10-26 16:25:01 +01:00
bjorn3 4b89feab41 Fix a couple of dead code warnings 2025-10-26 12:07:56 +01:00
bjorn3 1498376360 Unify generic irq handling between x86 and x86_64 2025-10-25 19:44:03 +02:00