Skip to content

Commit 9d09ece

Browse files
authored
Merge pull request #121 from demikernel/enhancement-contrib-update
[contrib] Bump inetstack, runtime and scheduler
2 parents 599c854 + 53296c1 commit 9d09ece

13 files changed

Lines changed: 73 additions & 49 deletions

File tree

Cargo.toml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,11 +24,11 @@ nix = "0.23.1"
2424
socket2 = { version = "0.4.1", features = ["all"] }
2525
cfg-if = "1.0.0"
2626

27-
inetstack = { git = "https://github.com/demikernel/inetstack", rev = "fcb2f986c743cc826d004b7ce29ca0716bac7860" }
28-
catwalk = { git = "https://github.com/demikernel/catwalk", rev = "05201a072b4d6b3afd7c02de69045f423563228f" }
27+
inetstack = { git = "https://github.com/demikernel/inetstack", rev = "1e1504c5e6309e32d78e38c32c3c55ccb4ae1304" }
28+
scheduler = { git = "https://github.com/demikernel/scheduler", rev = "fa95977f399eebfcfcd63aae506d72c1cb1756ec" }
2929
dpdk-rs = { git = "https://github.com/demikernel/dpdk-rs", rev = "f6619d5313fc224e6bf8620df7485517efea0e39", optional = true }
3030
perftools = { git = "https://github.com/demikernel/perftools", rev = "02f07ad28218c182bbf82e5f8eaf22f7de3f34c6", optional = true }
31-
runtime = { git = "https://github.com/demikernel/runtime", rev = "96b0f942af74417a96063794884af6450a5b6675" }
31+
runtime = { git = "https://github.com/demikernel/runtime", rev = "14cf60cd89f491af4c539d20810f9b898828b631" }
3232
liburing = { git = "https://github.com/demikernel/liburing-rs", rev = "e80e6238f47498b7c4e37194e896a39713c61cd9", optional = true }
3333

3434
[[test]]

src/catcollar/futures/mod.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,14 +26,14 @@ use crate::{
2626
demikernel::dbuf::DataBuffer,
2727
Ipv4Endpoint,
2828
};
29-
use ::catwalk::{
30-
FutureResult,
31-
SchedulerFuture,
32-
};
3329
use ::runtime::{
3430
fail::Fail,
3531
QDesc,
3632
};
33+
use ::scheduler::{
34+
FutureResult,
35+
SchedulerFuture,
36+
};
3737
use ::std::{
3838
any::Any,
3939
future::Future,

src/catcollar/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,6 @@ use self::{
3636
//==============================================================================
3737

3838
use crate::Ipv4Endpoint;
39-
use ::catwalk::SchedulerHandle;
4039
use ::libc::c_int;
4140
use ::nix::{
4241
sys::socket::{
@@ -74,6 +73,7 @@ use ::runtime::{
7473
QToken,
7574
QType,
7675
};
76+
use ::scheduler::SchedulerHandle;
7777
use ::std::{
7878
any::Any,
7979
collections::HashMap,

src/catcollar/runtime/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ mod utils;
1212

1313
use super::iouring::IoUring;
1414
use crate::demikernel::dbuf::DataBuffer;
15-
use ::catwalk::Scheduler;
1615
use ::nix::sys::socket::SockAddr;
1716
use ::runtime::{
1817
fail::Fail,
@@ -22,6 +21,7 @@ use ::runtime::{
2221
},
2322
Runtime,
2423
};
24+
use ::scheduler::Scheduler;
2525
use ::std::{
2626
cell::RefCell,
2727
collections::HashMap,

src/catcollar/runtime/scheduler.rs

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,17 +6,17 @@
66
//==============================================================================
77

88
use super::IoUringRuntime;
9-
use ::catwalk::{
10-
SchedulerFuture,
11-
SchedulerHandle,
12-
};
139
use ::runtime::{
1410
task::SchedulerRuntime,
1511
timer::{
1612
TimerRc,
1713
WaitFuture,
1814
},
1915
};
16+
use ::scheduler::{
17+
SchedulerFuture,
18+
SchedulerHandle,
19+
};
2020
use ::std::time::Instant;
2121

2222
//==============================================================================
@@ -50,12 +50,18 @@ impl SchedulerRuntime for IoUringRuntime {
5050

5151
/// Spawns a new task.
5252
fn spawn<F: SchedulerFuture>(&self, future: F) -> SchedulerHandle {
53-
self.scheduler.insert(future)
53+
match self.scheduler.insert(future) {
54+
Some(handle) => handle,
55+
None => panic!("failed to insert future in the scheduler"),
56+
}
5457
}
5558

5659
/// Schedules a task for execution.
5760
fn schedule<F: SchedulerFuture>(&self, future: F) -> SchedulerHandle {
58-
self.scheduler.insert(future)
61+
match self.scheduler.insert(future) {
62+
Some(handle) => handle,
63+
None => panic!("failed to insert future in the scheduler"),
64+
}
5965
}
6066

6167
/// Gets the handle of a task.

src/catnap/futures/mod.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,14 +26,14 @@ use crate::{
2626
demikernel::dbuf::DataBuffer,
2727
Ipv4Endpoint,
2828
};
29-
use ::catwalk::{
30-
FutureResult,
31-
SchedulerFuture,
32-
};
3329
use ::runtime::{
3430
fail::Fail,
3531
QDesc,
3632
};
33+
use ::scheduler::{
34+
FutureResult,
35+
SchedulerFuture,
36+
};
3737
use ::std::{
3838
any::Any,
3939
future::Future,

src/catnap/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@ use crate::{
2929
demikernel::dbuf::DataBuffer,
3030
Ipv4Endpoint,
3131
};
32-
use ::catwalk::SchedulerHandle;
3332
use ::libc::{
3433
c_int,
3534
AF_INET,
@@ -77,6 +76,7 @@ use ::runtime::{
7776
QToken,
7877
QType,
7978
};
79+
use ::scheduler::SchedulerHandle;
8080
use ::std::{
8181
any::Any,
8282
collections::HashMap,

src/catnap/runtime.rs

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,6 @@
77

88
use crate::demikernel::dbuf::DataBuffer;
99
use ::arrayvec::ArrayVec;
10-
use ::catwalk::{
11-
Scheduler,
12-
SchedulerFuture,
13-
SchedulerHandle,
14-
};
1510
use ::libc::c_void;
1611
use ::rand::{
1712
distributions::Standard,
@@ -46,6 +41,11 @@ use ::runtime::{
4641
utils::UtilsRuntime,
4742
Runtime,
4843
};
44+
use ::scheduler::{
45+
Scheduler,
46+
SchedulerFuture,
47+
SchedulerHandle,
48+
};
4949
use ::std::{
5050
mem,
5151
net::Ipv4Addr,
@@ -187,12 +187,18 @@ impl SchedulerRuntime for PosixRuntime {
187187

188188
/// Spawns a new task.
189189
fn spawn<F: SchedulerFuture>(&self, future: F) -> SchedulerHandle {
190-
self.scheduler.insert(future)
190+
match self.scheduler.insert(future) {
191+
Some(handle) => handle,
192+
None => panic!("failed to insert future in the scheduler"),
193+
}
191194
}
192195

193196
/// Schedules a task for execution.
194197
fn schedule<F: SchedulerFuture>(&self, future: F) -> SchedulerHandle {
195-
self.scheduler.insert(future)
198+
match self.scheduler.insert(future) {
199+
Some(handle) => handle,
200+
None => panic!("failed to insert future in the scheduler"),
201+
}
196202
}
197203

198204
/// Gets the handle of a task.

src/catnip/runtime/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@ use ::anyhow::{
2222
format_err,
2323
Error,
2424
};
25-
use ::catwalk::Scheduler;
2625
use ::dpdk_rs::{
2726
rte_delay_us_block,
2827
rte_eal_init,
@@ -76,6 +75,7 @@ use ::runtime::{
7675
timer::Timer,
7776
Runtime,
7877
};
78+
use ::scheduler::Scheduler;
7979
use ::std::{
8080
cell::RefCell,
8181
collections::HashMap,

src/catnip/runtime/scheduler.rs

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,6 @@
66
//==============================================================================
77

88
use super::DPDKRuntime;
9-
use ::catwalk::{
10-
SchedulerFuture,
11-
SchedulerHandle,
12-
};
139
use ::runtime::{
1410
task::SchedulerRuntime,
1511
timer::{
@@ -18,6 +14,10 @@ use ::runtime::{
1814
WaitFuture,
1915
},
2016
};
17+
use ::scheduler::{
18+
SchedulerFuture,
19+
SchedulerHandle,
20+
};
2121
use ::std::{
2222
rc::Rc,
2323
time::{
@@ -65,11 +65,17 @@ impl SchedulerRuntime for DPDKRuntime {
6565
}
6666

6767
fn spawn<F: SchedulerFuture>(&self, future: F) -> SchedulerHandle {
68-
self.scheduler.insert(future)
68+
match self.scheduler.insert(future) {
69+
Some(handle) => handle,
70+
None => panic!("failed to insert future in the scheduler"),
71+
}
6972
}
7073

7174
fn schedule<F: SchedulerFuture>(&self, future: F) -> SchedulerHandle {
72-
self.scheduler.insert(future)
75+
match self.scheduler.insert(future) {
76+
Some(handle) => handle,
77+
None => panic!("failed to insert future in the scheduler"),
78+
}
7379
}
7480

7581
fn get_handle(&self, key: u64) -> Option<SchedulerHandle> {

0 commit comments

Comments
 (0)