diff options
author | Larina DSouza <larsouza@in.ibm.com> | 2012-06-13 22:53:59 -0500 |
---|---|---|
committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2012-09-24 11:10:07 -0500 |
commit | b52c81900043f02fe05d9313cebbde4fe805640c (patch) | |
tree | f3c24624f02927b068e72ff1a9f20231b2f021a0 /src/usr/diag/mdia/mdiasm.H | |
parent | f754a2a6f0079f3424e2368ae3c3635ac8440612 (diff) | |
download | talos-hostboot-b52c81900043f02fe05d9313cebbde4fe805640c.tar.gz talos-hostboot-b52c81900043f02fe05d9313cebbde4fe805640c.zip |
Process Maintenance Command timeout
When a maintenance cmd timesout, set the target/s WorkFlowStatus
to the appropriate state such that the state machine can
take further action.
RTC: 41894
Change-Id: Iaf5b2b5ab07f9269379b011b720df760e92e178f
Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/1200
Tested-by: Jenkins Server
Reviewed-by: Zane Shelley <zshelle@us.ibm.com>
Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/usr/diag/mdia/mdiasm.H')
-rw-r--r-- | src/usr/diag/mdia/mdiasm.H | 29 |
1 files changed, 16 insertions, 13 deletions
diff --git a/src/usr/diag/mdia/mdiasm.H b/src/usr/diag/mdia/mdiasm.H index 60abe14b1..146bb1ce9 100644 --- a/src/usr/diag/mdia/mdiasm.H +++ b/src/usr/diag/mdia/mdiasm.H @@ -57,7 +57,7 @@ class StateMachine * @param[in] i_monitorIDs Vector of monitorIDs */ virtual void processCommandTimeout( - const std::vector<uint64_t> & i_monitorIDs) {} + const MonitorIDs & i_monitorIDs); /** * @brief run the state machine to completion @@ -94,13 +94,26 @@ class StateMachine */ virtual ~StateMachine(); + protected: + + /** + * @brief serialization mutex + */ + mutex_t iv_mutex; + + /** + * @brief command monitor + */ + CommandMonitor * iv_monitor; + private: /** * @brief aliases */ typedef std::vector<WorkFlowProperties *> WorkFlowPropertiesList; - typedef std::vector<WorkFlowProperties *>::iterator WorkFlowPropertiesIterator; + typedef std::vector<WorkFlowProperties *>::iterator + WorkFlowPropertiesIterator; /** * @brief setup load the workflow properties for the provided @@ -165,7 +178,7 @@ class StateMachine * * @param[in] i_wfp the target for which a command should be issued */ - errlHndl_t doMaintCommand(WorkFlowProperties & i_wfp); + virtual errlHndl_t doMaintCommand(WorkFlowProperties & i_wfp); /** * @brief executeWorkItem work item entry point for @@ -202,16 +215,6 @@ class StateMachine Util::ThreadPool<WorkItem> * iv_tp; /** - * @brief command monitor - */ - CommandMonitor * iv_monitor; - - /** - * @brief serialization mutex - */ - mutex_t iv_mutex; - - /** * @brief completion condition */ sync_cond_t iv_cond; |