From 3471c603835f009fefcd5c660cf315f323863188 Mon Sep 17 00:00:00 2001 From: Arnaud Giersch Date: Thu, 6 May 2021 23:38:41 +0200 Subject: [PATCH] Capitalize enum class. --- include/simgrid/s4u/VirtualMachine.hpp | 9 +++++--- src/bindings/java/jmsg_vm.cpp | 2 +- src/plugins/vm/VirtualMachineImpl.cpp | 32 ++++++++------------------ src/plugins/vm/VirtualMachineImpl.hpp | 6 ++--- src/plugins/vm/VmLiveMigration.cpp | 4 ++-- src/plugins/vm/s4u_VirtualMachine.cpp | 10 ++++---- 6 files changed, 26 insertions(+), 37 deletions(-) diff --git a/include/simgrid/s4u/VirtualMachine.hpp b/include/simgrid/s4u/VirtualMachine.hpp index d6a9878856..ecfeb1ee08 100644 --- a/include/simgrid/s4u/VirtualMachine.hpp +++ b/include/simgrid/s4u/VirtualMachine.hpp @@ -8,6 +8,7 @@ #include #include +#include namespace simgrid { namespace s4u { @@ -34,12 +35,14 @@ public: VirtualMachine& operator=(VirtualMachine const&) = delete; #endif - enum class state { + // enum class State { ... } + XBT_DECLARE_ENUM_CLASS(State, CREATED, /**< created, but not yet started */ RUNNING, SUSPENDED, /**< Suspend/resume does not involve disk I/O, so we assume there is no transition states. */ DESTROYED - }; + ); + using state XBT_ATTRIB_DEPRECATED_v332("Please use VirtualMachine::State") = State; vm::VirtualMachineImpl* get_vm_impl() const { return pimpl_vm_; } void start(); @@ -54,7 +57,7 @@ public: VirtualMachine* set_ramsize(size_t ramsize); VirtualMachine* set_bound(double bound); - VirtualMachine::state get_state() const; + State get_state() const; static xbt::signal on_start; static xbt::signal on_started; static xbt::signal on_shutdown; diff --git a/src/bindings/java/jmsg_vm.cpp b/src/bindings/java/jmsg_vm.cpp index 9723d9acef..ecb41ca667 100644 --- a/src/bindings/java/jmsg_vm.cpp +++ b/src/bindings/java/jmsg_vm.cpp @@ -90,7 +90,7 @@ JNIEXPORT jobjectArray JNICALL Java_org_simgrid_msg_VM_all(JNIEnv* env, jclass c for (size_t i = 0; i < host_count; i++) { const auto* vm = dynamic_cast(hosts[i]); - if (vm != nullptr && vm->get_state() != simgrid::s4u::VirtualMachine::state::DESTROYED) { + if (vm != nullptr && vm->get_state() != simgrid::s4u::VirtualMachine::State::DESTROYED) { auto jvm = static_cast(vm->extension(JAVA_HOST_LEVEL)); vms.push_back(jvm); } diff --git a/src/plugins/vm/VirtualMachineImpl.cpp b/src/plugins/vm/VirtualMachineImpl.cpp index ce8a83d8bb..19d184776f 100644 --- a/src/plugins/vm/VirtualMachineImpl.cpp +++ b/src/plugins/vm/VirtualMachineImpl.cpp @@ -153,7 +153,7 @@ double VMModel::next_occurring_event(double now) /* iterate for all virtual machines */ for (s4u::VirtualMachine* const& ws_vm : VirtualMachineImpl::allVms_) { - if (ws_vm->get_state() == s4u::VirtualMachine::state::SUSPENDED) // Ignore suspended VMs + if (ws_vm->get_state() == s4u::VirtualMachine::State::SUSPENDED) // Ignore suspended VMs continue; const kernel::resource::Cpu* cpu = ws_vm->pimpl_cpu; @@ -209,7 +209,7 @@ VirtualMachineImpl::~VirtualMachineImpl() void VirtualMachineImpl::suspend(smx_actor_t issuer) { - if (get_state() != s4u::VirtualMachine::state::RUNNING) + if (get_state() != s4u::VirtualMachine::State::RUNNING) throw VmFailureException(XBT_THROW_POINT, xbt::string_printf("Cannot suspend VM %s: it is not running.", piface_->get_cname())); if (issuer->get_host() == piface_) @@ -227,12 +227,12 @@ void VirtualMachineImpl::suspend(smx_actor_t issuer) XBT_DEBUG("suspend all actors on the VM done done"); - vm_state_ = s4u::VirtualMachine::state::SUSPENDED; + vm_state_ = s4u::VirtualMachine::State::SUSPENDED; } void VirtualMachineImpl::resume() { - if (get_state() != s4u::VirtualMachine::state::SUSPENDED) + if (get_state() != s4u::VirtualMachine::State::SUSPENDED) throw VmFailureException(XBT_THROW_POINT, xbt::string_printf("Cannot resume VM %s: it was not suspended", piface_->get_cname())); @@ -245,7 +245,7 @@ void VirtualMachineImpl::resume() actor.resume(); }); - vm_state_ = s4u::VirtualMachine::state::RUNNING; + vm_state_ = s4u::VirtualMachine::State::RUNNING; } /** @brief Power off a VM. @@ -257,23 +257,9 @@ void VirtualMachineImpl::resume() */ void VirtualMachineImpl::shutdown(smx_actor_t issuer) { - if (get_state() != s4u::VirtualMachine::state::RUNNING) { - const char* stateName; - switch (get_state()) { - case s4u::VirtualMachine::state::CREATED: - stateName = "created, but not yet started"; - break; - case s4u::VirtualMachine::state::SUSPENDED: - stateName = "suspended"; - break; - case s4u::VirtualMachine::state::DESTROYED: - stateName = "destroyed"; - break; - default: /* SURF_VM_STATE_RUNNING or unexpected values */ - THROW_IMPOSSIBLE; - } - XBT_VERB("Shutting down the VM %s even if it's not running but %s", piface_->get_cname(), stateName); - } + if (get_state() != s4u::VirtualMachine::State::RUNNING) + XBT_VERB("Shutting down the VM %s even if it's not running but in state %s", piface_->get_cname(), + s4u::VirtualMachine::to_c_str(get_state())); XBT_DEBUG("shutdown VM %s, that contains %zu actors", piface_->get_cname(), get_actor_count()); @@ -283,7 +269,7 @@ void VirtualMachineImpl::shutdown(smx_actor_t issuer) issuer->kill(&actor); }); - set_state(s4u::VirtualMachine::state::DESTROYED); + set_state(s4u::VirtualMachine::State::DESTROYED); /* FIXME: we may have to do something at the surf layer, e.g., vcpu action */ } diff --git a/src/plugins/vm/VirtualMachineImpl.hpp b/src/plugins/vm/VirtualMachineImpl.hpp index 031c355cfb..d013face3a 100644 --- a/src/plugins/vm/VirtualMachineImpl.hpp +++ b/src/plugins/vm/VirtualMachineImpl.hpp @@ -54,8 +54,8 @@ public: sg_size_t get_ramsize() const { return ramsize_; } void set_ramsize(sg_size_t ramsize) { ramsize_ = ramsize; } - s4u::VirtualMachine::state get_state() const { return vm_state_; } - void set_state(s4u::VirtualMachine::state state) { vm_state_ = state; } + s4u::VirtualMachine::State get_state() const { return vm_state_; } + void set_state(s4u::VirtualMachine::State state) { vm_state_ = state; } unsigned int get_core_amount() const { return core_amount_; } kernel::resource::Action* get_action() const { return action_; } @@ -82,7 +82,7 @@ private: unsigned int core_amount_; double user_bound_ = std::numeric_limits::max(); size_t ramsize_ = 0; - s4u::VirtualMachine::state vm_state_ = s4u::VirtualMachine::state::CREATED; + s4u::VirtualMachine::State vm_state_ = s4u::VirtualMachine::State::CREATED; bool is_migrating_ = false; }; diff --git a/src/plugins/vm/VmLiveMigration.cpp b/src/plugins/vm/VmLiveMigration.cpp index 77d9b5cebb..f0ec902276 100644 --- a/src/plugins/vm/VmLiveMigration.cpp +++ b/src/plugins/vm/VmLiveMigration.cpp @@ -41,7 +41,7 @@ void MigrationRx::operator()() /* Update the vm location */ /* precopy migration makes the VM temporally paused */ - xbt_assert(vm_->get_state() == s4u::VirtualMachine::state::SUSPENDED); + xbt_assert(vm_->get_state() == s4u::VirtualMachine::State::SUSPENDED); /* Update the vm location and resume it */ vm_->set_pm(dst_pm_); @@ -323,7 +323,7 @@ void sg_vm_migrate(simgrid::s4u::VirtualMachine* vm, simgrid::s4u::Host* dst_pm) throw simgrid::VmFailureException( XBT_THROW_POINT, simgrid::xbt::string_printf("Cannot migrate VM '%s' to host '%s', which is offline.", vm->get_cname(), dst_pm->get_cname())); - if (vm->get_state() != simgrid::s4u::VirtualMachine::state::RUNNING) + if (vm->get_state() != simgrid::s4u::VirtualMachine::State::RUNNING) throw simgrid::VmFailureException( XBT_THROW_POINT, simgrid::xbt::string_printf("Cannot migrate VM '%s' that is not running yet.", vm->get_cname())); diff --git a/src/plugins/vm/s4u_VirtualMachine.cpp b/src/plugins/vm/s4u_VirtualMachine.cpp index 88d7f498b9..2a7fcd3698 100644 --- a/src/plugins/vm/s4u_VirtualMachine.cpp +++ b/src/plugins/vm/s4u_VirtualMachine.cpp @@ -95,7 +95,7 @@ void VirtualMachine::start() } } - this->pimpl_vm_->set_state(VirtualMachine::state::RUNNING); + this->pimpl_vm_->set_state(State::RUNNING); }); on_started(*this); @@ -146,7 +146,7 @@ VirtualMachine* VirtualMachine::set_pm(simgrid::s4u::Host* pm) return this; } -VirtualMachine::state VirtualMachine::get_state() const +VirtualMachine::State VirtualMachine::get_state() const { return kernel::actor::simcall([this]() { return pimpl_vm_->get_state(); }); } @@ -242,19 +242,19 @@ void sg_vm_set_bound(sg_vm_t vm, double bound) /** @brief Returns whether the given VM has just created, not running. */ int sg_vm_is_created(const_sg_vm_t vm) { - return vm->get_state() == simgrid::s4u::VirtualMachine::state::CREATED; + return vm->get_state() == simgrid::s4u::VirtualMachine::State::CREATED; } /** @brief Returns whether the given VM is currently running */ int sg_vm_is_running(const_sg_vm_t vm) { - return vm->get_state() == simgrid::s4u::VirtualMachine::state::RUNNING; + return vm->get_state() == simgrid::s4u::VirtualMachine::State::RUNNING; } /** @brief Returns whether the given VM is currently suspended, not running. */ int sg_vm_is_suspended(const_sg_vm_t vm) { - return vm->get_state() == simgrid::s4u::VirtualMachine::state::SUSPENDED; + return vm->get_state() == simgrid::s4u::VirtualMachine::State::SUSPENDED; } /** @brief Start a vm (i.e., boot the guest operating system) -- 2.20.1