diff --git a/lib/cmdlib.py b/lib/cmdlib.py
index ca7730092f29cd272e0fde6499fc099cd6de7496..2b341c4395c742d6b89add08e3692c99b4029dd0 100644
--- a/lib/cmdlib.py
+++ b/lib/cmdlib.py
@@ -68,14 +68,14 @@ import ganeti.masterd.instance # pylint: disable=W0611
 DRBD_META_SIZE = 128
 
 # States of instance
+INSTANCE_DOWN = [constants.ADMINST_DOWN]
 INSTANCE_ONLINE = [constants.ADMINST_DOWN, constants.ADMINST_UP]
 INSTANCE_NOT_RUNNING = [constants.ADMINST_DOWN, constants.ADMINST_OFFLINE]
 
 #: Instance status in which an instance can be marked as offline/online
-CAN_CHANGE_INSTANCE_OFFLINE = [
-  constants.ADMINST_DOWN,
+CAN_CHANGE_INSTANCE_OFFLINE = (frozenset(INSTANCE_DOWN) | frozenset([
   constants.ADMINST_OFFLINE,
-  ]
+  ]))
 
 
 class ResultWithJobs: