blob: cc2162774154cd55b91f4eb0778fbdf790da2466 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
https://github.com/anza-xyz/agave/pull/5323
https://github.com/anza-xyz/agave/pull/5323/commits/b8444343075a96f7472dd3b18490233cd0aeb9a2
https://github.com/anza-xyz/agave/pull/5323/commits/28ec738e2282958f5b85bf6fd515ac31b099f95e
--- unified-scheduler-pool/src/lib.rs.orig 2025-05-20 14:31:43.222181000 +0200
+++ unified-scheduler-pool/src/lib.rs 2025-05-20 14:31:51.894607000 +0200
@@ -12,6 +12,8 @@
//! Refer to [`PooledScheduler`] doc comment for general overview of scheduler state transitions
//! regarding to pooling and the actual use.
+use std::ops::DerefMut;
+
#[cfg(feature = "dev-context-only-utils")]
use qualifier_attr::qualifiers;
use {
@@ -326,10 +328,10 @@ where
//
// Note that this critical section could block the latency-sensitive replay
// code-path via ::take_scheduler().
- #[allow(unstable_name_collisions)]
- idle_inners.extend(scheduler_inners.extract_if(|(_inner, pooled_at)| {
- now.duration_since(*pooled_at) > max_pooling_duration
- }));
+ idle_inners.extend(MakeExtractIf::extract_if(
+ scheduler_inners.deref_mut(),
+ |(_inner, pooled_at)| now.duration_since(*pooled_at) > max_pooling_duration,
+ ));
drop(scheduler_inners);
let idle_inner_count = idle_inners.len();
@@ -357,8 +359,8 @@ where
let Ok(mut timeout_listeners) = scheduler_pool.timeout_listeners.lock() else {
break;
};
- #[allow(unstable_name_collisions)]
- expired_listeners.extend(timeout_listeners.extract_if(
+ expired_listeners.extend(MakeExtractIf::extract_if(
+ timeout_listeners.deref_mut(),
|(_callback, registered_at)| {
now.duration_since(*registered_at) > timeout_duration
},
|