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 631ab218386d0b024bf5b86c3b80698671d82907.
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
jiangjianfeng
58cf8ea681
Set keepalive and tcp_nodelay on underlying sockets
2024-12-15 16:50:43 +08:00
Ruihan Li
39a5e88baf
Protect used_ports
with LocalIrqDisabled
2024-12-12 20:50:12 +08:00
Ruihan Li
1716f4f324
Use Pollee
as the socket observer
2024-12-12 20:50:12 +08:00
Ruihan Li
fa76afb3a9
Make Ext
a trait
2024-12-12 20:50:12 +08:00
Ruihan Li
a260411a2a
Implement WriteIrqDisabled
2024-12-03 12:07:24 +08:00
jiangjianfeng
80cd1b69f7
Fix lint error in cargo-component
2024-12-02 16:32:34 +08:00
jiangjianfeng
495c93c2ad
Refactor Rwlock to take type parameter
2024-11-21 15:46:10 +08:00
Ruihan Li
1c1da8ea06
Don't poll ifaces if not necessary
2024-11-20 16:39:18 +08:00
Ruihan Li
fab61f5f66
Make Pollee
stateless
2024-11-20 16:39:18 +08:00
jiangjianfeng
4c80367bc8
Fix CI lint error
2024-11-08 10:53:30 +08:00
Ruihan Li
9707b46c7f
Bump smoltcp version
2024-11-08 10:49:02 +08:00
Jianfeng Jiang
c1fd09fd41
Remove TimeWait socket if a new Syn is received
2024-11-07 14:21:52 +08:00
jiangjianfeng
090149eed7
Add tcp latency test over virtio-net
2024-10-14 20:59:25 +08:00
Zhang Junyang
9e4257b655
Fix multiple issues pointed out by the new compiler
2024-10-13 22:32:05 +08:00
Shaowei Song
ee33216875
Fix the incorrect range in SegmentSlice
2024-10-12 19:58:10 +08:00