diff --git a/.gitlab/pipeline/test.yml b/.gitlab/pipeline/test.yml
index af261a893da5012e2042614431cc214eaf9dba0f..48c84b472b4354fe7eeb12bbf2880c276e90a477 100644
--- a/.gitlab/pipeline/test.yml
+++ b/.gitlab/pipeline/test.yml
@@ -25,7 +25,6 @@ test-linux-stable:
     # "upgrade_version_checks_should_work" is currently failing
     - |
       time cargo nextest run \
-        --filter-expr 'not deps(/polkadot-subsystem-bench/)' \
         --workspace \
         --locked \
         --release \
@@ -70,7 +69,7 @@ test-linux-stable-runtime-benchmarks:
     # but still want to have debug assertions.
     RUSTFLAGS: "-Cdebug-assertions=y -Dwarnings"
   script:
-    - time cargo nextest run --filter-expr 'not deps(/polkadot-subsystem-bench/)' --workspace --features runtime-benchmarks benchmark --locked --cargo-profile testnet
+    - time cargo nextest run --workspace --features runtime-benchmarks benchmark --locked --cargo-profile testnet
 
 # can be used to run all tests
 # test-linux-stable-all:
diff --git a/substrate/frame/core-fellowship/src/benchmarking.rs b/substrate/frame/core-fellowship/src/benchmarking.rs
index ddde70bd7ce16ec1b2de7ef5899fec5a5213bb79..fd5453310be51a65dac808ee2f07737ca8915203 100644
--- a/substrate/frame/core-fellowship/src/benchmarking.rs
+++ b/substrate/frame/core-fellowship/src/benchmarking.rs
@@ -149,6 +149,11 @@ mod benchmarks {
 
 	#[benchmark]
 	fn promote() -> Result<(), BenchmarkError> {
+		// Ensure that the `min_promotion_period` wont get in our way.
+		let mut params = Params::<T, I>::get();
+		params.min_promotion_period = [Zero::zero(); RANK_COUNT];
+		Params::<T, I>::put(&params);
+
 		let member = make_member::<T, I>(1)?;
 		ensure_evidence::<T, I>(&member)?;
 
diff --git a/substrate/frame/core-fellowship/src/lib.rs b/substrate/frame/core-fellowship/src/lib.rs
index d1b81c3ca134fbe30a14034164e45710cea12317..afb188261fd448c2617189e0db71050d3d45234e 100644
--- a/substrate/frame/core-fellowship/src/lib.rs
+++ b/substrate/frame/core-fellowship/src/lib.rs
@@ -149,7 +149,8 @@ pub mod pallet {
 	};
 	use frame_system::{ensure_root, pallet_prelude::*};
 
-	const RANK_COUNT: usize = 9;
+	/// Number of available ranks.
+	pub(crate) const RANK_COUNT: usize = 9;
 
 	#[pallet::pallet]
 	pub struct Pallet<T, I = ()>(PhantomData<(T, I)>);
diff --git a/substrate/frame/scheduler/src/tests.rs b/substrate/frame/scheduler/src/tests.rs
index f251dde99a86af11eb294e7705c92eef47912632..3023a370a4b6034e4ec9366fcaa065035edccec3 100644
--- a/substrate/frame/scheduler/src/tests.rs
+++ b/substrate/frame/scheduler/src/tests.rs
@@ -1501,8 +1501,11 @@ fn scheduler_handles_periodic_unavailable_preimage() {
 		run_to_block(4);
 		assert_eq!(logger::log().len(), 1);
 
-		// Unnote the preimage
+		// As the public api doesn't support to remove a noted preimage, we need to first unnote it
+		// and then request it again. Basically this should not happen in real life (whatever you
+		// call real life;).
 		Preimage::unnote(&hash);
+		Preimage::request(&hash);
 
 		// Does not ever execute again.
 		run_to_block(100);