diff --git a/substrate/frame/nomination-pools/src/lib.rs b/substrate/frame/nomination-pools/src/lib.rs
index c4bebc5a1d0304070b47bbc546dd7c56e90ecf63..485cdada7173b2c583b3cf49ab89ac05c9e026dd 100644
--- a/substrate/frame/nomination-pools/src/lib.rs
+++ b/substrate/frame/nomination-pools/src/lib.rs
@@ -3134,6 +3134,10 @@ impl<T: Config> Pallet<T> {
 			// reward math rounds down, we might accumulate some dust here.
 			let pending_rewards_lt_leftover_bal = RewardPool::<T>::current_balance(id) >=
 				pools_members_pending_rewards.get(&id).copied().unwrap_or_default();
+
+			// this is currently broken in Kusama, a fix is being worked on in
+			// <https://github.com/paritytech/polkadot-sdk/pull/1255>. until it is fixed, log a
+			// warning instead of panicing with an `ensure` statement.
 			if !pending_rewards_lt_leftover_bal {
 				log::warn!(
 					"pool {:?}, sum pending rewards = {:?}, remaining balance = {:?}",
@@ -3142,10 +3146,6 @@ impl<T: Config> Pallet<T> {
 					RewardPool::<T>::current_balance(id)
 				);
 			}
-			ensure!(
-				pending_rewards_lt_leftover_bal,
-				"The sum of the pending rewards must be less than the leftover balance."
-			);
 			Ok(())
 		})?;