Commit Graph

1870 Commits

Author SHA1 Message Date
Shen Bowen e027111145 Fix atomic mode violation in Condvar::wait_timeout timeout path 2026-06-04 17:24:57 +08:00
Jianfeng Jiang 6bc2b7d8b2 Consolidate Linux scheduler policy codes 2026-06-04 15:34:57 +08:00
Jianfeng Jiang bc1f0970fa Complete /proc/pid/stat output 2026-06-04 15:34:57 +08:00
Ruihan Li a64f44ce31 Avoid unnecessary `fs_base.get()` in `clone` 2026-06-03 18:19:03 -07:00
Ruihan Li 8a4fe04f7f Improve the FS/GS base code 2026-06-03 07:00:44 -07:00
Qingsong Chen 1cf8cd7888 Introduce `CpuSync<R>` to unify FPU and FSGSBASE register management
- Add a generic `CpuSync<R>` abstraction that tracks where the canonical
  value of a supplementary user CPU register lives.
- Extract `FsBase/GsBase` from GeneralRegs as standalone types in OSTD.
- Widen the pre-schedule handler signature to `fn(&DisabledLocalIrqGuard)`.
- Add `PRE_USER_RUN_HANDLER` in OSTD, called inside execute()'s inner
  loop right before `run()`.
- Support `ARCH_SET_GS/ARCH_GET_GS` in `arch_prctl`.
- Remove `FpuState`, `ThreadFpu`, `activate_tls_pointer`, and related
  assembly fsbase save/restore in context switch.
- Update documentation in safe-user-kernel-interactions.md.
2026-06-03 05:07:06 -07:00
li041 98e6c27fe1 Preserve EOF during cached writeback for virtiofs 2026-06-03 15:41:04 +08:00
Xinyi Yu 7f3a096428 Fix block-mapping writeback: persist allocations made by `BlockAsPageCacheBackend::submit_write_bio` 2026-06-01 15:49:03 +08:00
Jianfeng Jiang 667d29f751 Avoid immediate ephemeral port reuse 2026-06-01 14:23:51 +08:00
asterinas 90aae91a10 Modify the get_random_seed() implementation 2026-06-01 14:21:26 +08:00
Ruihan Li ef1fff3b7c Bind to TCP and UDP ports separately 2026-06-01 10:13:14 +08:00
Ruihan Li 9f39515eb5 Fix large UDP `send()` 2026-06-01 10:13:14 +08:00
Ruihan Li 4e6c941532 Strongly type `NormalizedAddress` 2026-06-01 10:13:14 +08:00
Ruihan Li 4535691a70 Adjust comments and visibility 2026-06-01 10:13:14 +08:00
Marsman1996 81ecf2e63a Fix panic for unknown flags bits in nanosleep 2026-05-29 20:00:40 -07:00
Ruihan Li 5831c49a9a Check `high_watermark` against `avail_pages` 2026-05-28 11:17:03 +08:00
li041 ef6f52b2b6 Implement virtiofs filesystem 2026-05-27 06:39:55 -07:00
li041 330c90431d Add virtio filesystem device support 2026-05-27 06:39:55 -07:00
li041 7712a2c114 Add FUSE protocol definitions 2026-05-27 06:39:55 -07:00
li041 4d0639edf1 Extend filesystem interfaces for per-open file 2026-05-27 06:39:55 -07:00
Xinyi Yu 0b67459d5a Add regression tests for ext2 2026-05-27 00:59:07 -07:00
Xinyi Yu 9ced816b55 Sync related filesystems on umount 2026-05-27 00:59:07 -07:00
Xinyi Yu dca4323e23 Wire ext2 into VFS traits 2026-05-27 00:59:07 -07:00
Xinyi Yu a1376c028c Refactor xattr subsystem with block-level extended attribute support 2026-05-27 00:59:07 -07:00
Xinyi Yu bcfecec460 Add directory operations (lookup, create, link, rename, rmdir, unlink) 2026-05-27 00:59:07 -07:00
Xinyi Yu 3e7fa2ea8e Add DirEntry for on-disk directory entry parsing and construction 2026-05-27 00:59:07 -07:00
Xinyi Yu 0b342fa1dd Add file read/write, sync, and symlink operations 2026-05-27 00:59:07 -07:00
Xinyi Yu 016443f0ce Add InodeBlockManager and IoRange for page cache backend 2026-05-27 00:59:07 -07:00
Xinyi Yu dd2119c813 Add BlockPtrTree for block pointer traversal and allocation 2026-05-27 00:59:07 -07:00
Xinyi Yu 4593eed629 Add IndirectBlockManager for indirect block caching 2026-05-27 00:59:07 -07:00
Xinyi Yu 6b12c53941 Refactor core types and filesystem infrastructure 2026-05-27 00:59:07 -07:00
Jianfeng Jiang 4903fcf0a5 Fix proc comm to use thread names 2026-05-26 22:09:34 -07:00
Jianfeng Jiang cc31efada3 Fix forked task name inheritance 2026-05-26 22:09:34 -07:00
Jianfeng Jiang bd7d605c5d Fix exec task names from user paths 2026-05-26 22:09:34 -07:00
Ray Lee 6764dc5ed0 Fix virtio-blk flush feature detection and handling
Signed-off-by: Ray Lee <hburaylee@gmail.com>
2026-05-25 20:43:45 -07:00
wyt8 b01224da32 Add the vt module comment 2026-05-25 05:25:33 -07:00
wyt8 4370e221d4 Add a tty device for log output 2026-05-25 05:25:33 -07:00
wyt8 4d6bf8a987 Point the tty0 to the active tty 2026-05-25 05:25:33 -07:00
wyt8 3873c4d8b5 Refactor the keyboard event handler 2026-05-25 05:25:33 -07:00
wyt8 6b6f9fe86e Add virtual terminal driver, console, manager and so on to achieve multiple TTYs 2026-05-25 05:25:33 -07:00
YanLien 67b41fba8b Implement O_TMPFILE support and related tests 2026-05-24 22:36:00 -07:00
Ruihan Li 153e530fe2 Fix or clarify the size check 2026-05-25 10:06:46 +08:00
Ruihan Li fbce41d056 Remove `CommittedPage` 2026-05-25 10:06:46 +08:00
Ruihan Li c2b1be961b Fix page cache and ext2 bugs 2026-05-25 10:06:46 +08:00
Ruihan Li 95b895f910 Avoid duplicate operations 2026-05-25 10:06:46 +08:00
Ruihan Li 04547162b4 Move `orig_syscall_ret` to `ThreadLocal` 2026-05-23 19:32:45 -07:00
Wang Siyuan 030597950c Add `ptrace(PTRACE_PEEK/POKE_TEXT/DATA)` 2026-05-23 03:03:12 -07:00
Cautreoxit a9f425a996 Add NVMe driver 2026-05-23 02:34:53 -07:00
Wang Siyuan 9e95d0be58 Add `ptrace(PTRACE_SYSCALL)` 2026-05-23 00:48:58 -07:00
Wang Siyuan cd08126de6 Store `PtraceWaitStatus` in `StopDeliverySignal::Pending` 2026-05-23 00:48:58 -07:00