diff --git a/src/ipa/ipu3/ipu3.cpp b/src/ipa/ipu3/ipu3.cpp
index 06d9bcb8..3868a3a5 100644
--- a/src/ipa/ipu3/ipu3.cpp
+++ b/src/ipa/ipu3/ipu3.cpp
@@ -321,6 +321,7 @@ void IPAIPU3::calculateBdsGrid(const Size &bdsOutputSize)
 		bestLog2.width = shift;
 	}
 
+	minError = std::numeric_limits<uint32_t>::max();
 	for (shift = kMinCellSizeLog2; shift <= kMaxCellSizeLog2; ++shift) {
 		uint32_t height = std::clamp(bdsOutputSize.height >> shift,
 					     kMinCellHeightPerSet,
