diff --git a/lib/cmdlib.py b/lib/cmdlib.py
index 32fdef9af25da0a3359ef93ae1a5967b4087bf1d..4d15b69337451b7f4c6e6e385c233f3d9294478e 100644
--- a/lib/cmdlib.py
+++ b/lib/cmdlib.py
@@ -3339,7 +3339,7 @@ class LUSetNodeParams(LogicalUnit):
       # candidates
       (mc_remaining, mc_should, _) = \
           self.cfg.GetMasterCandidateStats(exceptions=[node.name])
-      if mc_remaining != mc_should:
+      if mc_remaining < mc_should:
         raise errors.OpPrereqError("Not enough master candidates, please"
                                    " pass auto_promote to allow promotion",
                                    errors.ECODE_INVAL)