Set the property on the node and use the value when suspending the node. a timeout of 0 disables suspend.
Or else the idle handler might go off when we are already destroyed.
Monitor the device reservation objects and mark the device available. Don't select nodes from devices that are not available. Acquire the device reservation when a device starts. Release the device reservation when we suspend the device again.