Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
plug (massive) leak with ptaskL07
authorFrederic Suter <frederic.suter@cc.in2p3.fr>
Tue, 21 Mar 2017 14:01:12 +0000 (15:01 +0100)
committerFrederic Suter <frederic.suter@cc.in2p3.fr>
Tue, 21 Mar 2017 14:01:12 +0000 (15:01 +0100)
src/surf/ptask_L07.cpp
src/surf/ptask_L07.hpp

index c72048b..19e7950 100644 (file)
@@ -41,7 +41,11 @@ HostL07Model::HostL07Model() : HostModel() {
   surf_cpu_model_pm = new CpuL07Model(this,maxminSystem_);
 }
 
   surf_cpu_model_pm = new CpuL07Model(this,maxminSystem_);
 }
 
-HostL07Model::~HostL07Model() = default;
+HostL07Model::~HostL07Model() 
+{
+  lmm_system_free(maxminSystem_);
+  maxminSystem_ = nullptr;
+}
 
 CpuL07Model::CpuL07Model(HostL07Model *hmodel,lmm_system_t sys)
   : CpuModel()
 
 CpuL07Model::CpuL07Model(HostL07Model *hmodel,lmm_system_t sys)
   : CpuModel()
@@ -49,10 +53,8 @@ CpuL07Model::CpuL07Model(HostL07Model *hmodel,lmm_system_t sys)
   {
     maxminSystem_ = sys;
   }
   {
     maxminSystem_ = sys;
   }
-CpuL07Model::~CpuL07Model() {
-  lmm_system_free(maxminSystem_);
-  maxminSystem_ = nullptr;
-}
+CpuL07Model::~CpuL07Model() {}
+
 NetworkL07Model::NetworkL07Model(HostL07Model *hmodel, lmm_system_t sys)
   : NetworkModel()
   , hostModel_(hmodel)
 NetworkL07Model::NetworkL07Model(HostL07Model *hmodel, lmm_system_t sys)
   : NetworkModel()
   , hostModel_(hmodel)
@@ -60,10 +62,7 @@ NetworkL07Model::NetworkL07Model(HostL07Model *hmodel, lmm_system_t sys)
     maxminSystem_ = sys;
     loopback_     = createLink("__loopback__", 498000000, 0.000015, SURF_LINK_FATPIPE);
   }
     maxminSystem_ = sys;
     loopback_     = createLink("__loopback__", 498000000, 0.000015, SURF_LINK_FATPIPE);
   }
-NetworkL07Model::~NetworkL07Model()
-{
-  maxminSystem_ = nullptr; // Avoid multi-free
-}
+NetworkL07Model::~NetworkL07Model() {}
 
 
 double HostL07Model::nextOccuringEvent(double now)
 
 
 double HostL07Model::nextOccuringEvent(double now)
@@ -378,6 +377,7 @@ void LinkL07::setLatency(double value)
     action->updateBound();
   }
 }
     action->updateBound();
   }
 }
+LinkL07::~LinkL07() {}
 
 /**********
  * Action *
 
 /**********
  * Action *
index bdac362..4a2d68d 100644 (file)
@@ -73,7 +73,7 @@ public:
 class CpuL07 : public Cpu {
 public:
   CpuL07(CpuL07Model *model, simgrid::s4u::Host *host, std::vector<double> * speedPerPstate, int core);
 class CpuL07 : public Cpu {
 public:
   CpuL07(CpuL07Model *model, simgrid::s4u::Host *host, std::vector<double> * speedPerPstate, int core);
-  ~CpuL07();
+  ~CpuL07() override;
   bool isUsed() override;
   void apply_event(tmgr_trace_iterator_t event, double value) override;
   Action *execution_start(double size) override;
   bool isUsed() override;
   void apply_event(tmgr_trace_iterator_t event, double value) override;
   Action *execution_start(double size) override;
@@ -86,7 +86,7 @@ class LinkL07 : public LinkImpl {
 public:
   LinkL07(NetworkL07Model* model, const char* name, double bandwidth, double latency,
           e_surf_link_sharing_policy_t policy);
 public:
   LinkL07(NetworkL07Model* model, const char* name, double bandwidth, double latency,
           e_surf_link_sharing_policy_t policy);
-  ~LinkL07(){ };
+  ~LinkL07() override;
   bool isUsed() override;
   void apply_event(tmgr_trace_iterator_t event, double value) override;
   void setBandwidth(double value) override;
   bool isUsed() override;
   void apply_event(tmgr_trace_iterator_t event, double value) override;
   void setBandwidth(double value) override;