Chen Chengjun
2b18c893a8
Implement fixed_point module to replace the usage of fixed crate
2025-10-13 12:34:01 +08:00
Yang Zhichao
f869ed508f
Move `PerCpuCounter` to `aster-util` to broaden its scope of use,
...
and add/modify some methods to improve readability.
2025-09-27 21:02:23 +08:00
Ruihan Li
472edcf795
Clean up unnecessary features
2025-09-24 15:41:07 +08:00
Qingsong Chen
8bc0013801
Add stage support for init_component macro
2025-09-18 12:11:44 +08:00
Tate, Hongliang Tian
8d2fec7873
Introduce ASCII art representations of the Asterinas logo
2025-09-17 22:44:40 +08:00
Chen Chengjun
8c36964bb9
Introduce VmPrinter to write kernel generated data
2025-09-10 21:07:14 +08:00
Ruihan Li
3b606f5b6c
Use `size_of`/`align_of` in the prelude
2025-09-04 09:26:56 +08:00
Zhang Junyang
4e2bdc65de
Refactor implicit `Arc` APIs for DMA
2025-09-02 17:53:55 +08:00
Zhang Junyang
a6520880ab
Unify memory object slicing
2025-09-02 17:53:55 +08:00
Zhang Junyang
eb69aa4fb9
Unify address and size APIs for memory objects
2025-09-02 17:53:55 +08:00
Ruihan Li
2700d88bef
Provide efficient `VmIo` with VM readers/writers
2025-08-10 16:40:11 +08:00
jiangjianfeng
ff39f6df75
Correct the reuseaddr behavior
2025-07-28 10:20:50 +08:00
jiangjianfeng
e4c5c36be9
Support SO_PEERCRED & SO_PEERGROUPS
2025-06-24 17:25:44 +08:00
Ruihan Li
c73892c704
Mark `pub(super)` for internal methods
2025-06-01 15:06:53 +08:00
Ruihan Li
14388da548
Remove guard generics from `xarray::Cursor`
2025-06-01 15:06:53 +08:00
Chen Chengjun
ac1de89d31
Add the default mark type for LockedXArray
2025-04-30 20:59:15 +08:00
Chen Chengjun
1fe0fef410
Add ktests for the XArray
2025-04-19 16:48:15 +08:00
Chen Chengjun
c3dd607777
Introduce RCU-based XArray
2025-04-19 16:48:15 +08:00
jiangjianfeng
2c41055470
Expose more methods on bigtcp iface
2025-04-15 17:20:12 +08:00
jiangjianfeng
7d24e63216
Move network polling code to bottom half
2025-04-15 14:54:51 +08:00
Ruihan Li
a1f81df263
Remove `ostd/src/mm/offset.rs`
2025-04-15 09:15:22 +08:00
jiangjianfeng
0e1c660225
Make VmReader's several methods accept `&mut self`
2025-03-25 14:25:08 +08:00
Ruihan Li
d9f3a7761a
Notify socket events directly
2025-03-20 11:44:47 +08:00
Ruihan Li
2f66f5d234
Revert "Set hash buckets as 2 to work around performance bottleneck"
...
This reverts commit 631ab21838 .
2025-03-20 11:44:47 +08:00
Ruihan Li
7f323ac501
Don't remove TIME-WAIT sockets
2025-03-20 11:44:47 +08:00
Ruihan Li
240192f735
Make connection addition and deletion in order
2025-03-20 11:44:47 +08:00
Ruihan Li
a7e718e812
Avoid `O(n)` iteration when sending TCP packets
2025-03-20 11:44:47 +08:00
Ruihan Li
d40d452e9d
Receive RST packets as `ECONNRESET` errors
2025-03-10 18:08:08 +08:00
Ruihan Li
aa29640ed7
Send RST packets when appropriate
2025-03-10 18:08:08 +08:00
Ruihan Li
eef56c770b
Simplify the TCP state check
2025-03-10 18:08:08 +08:00
Ruihan Li
9e1c939a3f
Remove `static_assertions`
2025-03-06 16:35:21 +08:00
Fabing Li
cbb4b4e631
Fix lint errors
2025-02-27 11:36:41 +08:00
Ruihan Li
0398ea3d17
Split `bound.rs` into small files
2025-02-18 19:20:05 +08:00
jiangjianfeng
3f951e0c0c
Enable gVisor tcp_socket_test
2025-02-11 10:50:20 +08:00
Ruihan Li
95bbc7f367
Enforce `#[expect(lint)]`
2025-02-08 15:10:04 +08:00
Ruihan Li
0dca168717
Use `#[expect(lint)]`, not `#[allow(lint)]`
2025-02-08 15:10:04 +08:00
Ruihan Li
1899646391
Fix `#[allow(dead_code)]` in cpio-decoder
2025-02-08 15:10:04 +08:00
Ruihan Li
09ef817b4e
Fix `#[allow(dead_code)]` in typeflags
2025-02-08 15:10:04 +08:00
Ruihan Li
b415538097
Remove useless `#[allow(lint)]`
2025-02-08 15:10:04 +08:00
jiangjianfeng
14f0f5a7b5
Avoid iterating over all sockets to remove dead sockets
2025-01-24 11:46:18 +08:00
jiangjianfeng
0c8200dc7b
Add nginx benchmark and workaround
2025-01-01 10:43:14 +08:00
jiangjianfeng
631ab21838
Set hash buckets as 2 to work around performance bottleneck
2024-12-31 13:19:30 +08:00
Ruihan Li
7334c93ff5
Make bigtcp error wrappers consistent
2024-12-30 21:41:51 +08:00
jiangjianfeng
39cc0dca26
Add socket hash table
2024-12-30 09:46:14 +08:00
jiangjianfeng
783345b90b
Add Bob Jenkins's hash algorithm
2024-12-30 09:46:14 +08:00
Zhang Junyang
983a6af3cc
Polish the doc and rename variables in `ostd::mm`
2024-12-27 12:12:51 +08:00
Zhang Junyang
cdac59beda
Implement a new set of physical page APIs
2024-12-27 12:12:51 +08:00
Zhang Junyang
c9a37ccab1
Renaming concepts around pages and frames
...
This commit renames `Frame` -> `UntypedFrame` and `Page` -> `Frame`.
So do other concepts in the following list:
- `Segment` -> `UntypedSegment`,
- `ContPages` -> `Segment`,
- `DynPage` -> `AnyFrame`,
- `PageMeta` -> `FrameMeta`,
- `FrameMeta` -> `UntypedMeta`.
This commit also re-organized the source in the `mm/page` and `mm/frame`
module to accommodate the changes.
2024-12-27 12:12:51 +08:00
jiangjianfeng
9a540d0fb6
Notify virtqueue in a batch manner
2024-12-19 14:49:56 +08:00
Ruihan Li
776fd6a892
Create backlog sockets on demand
2024-12-17 20:14:53 +08:00