diff options
Diffstat (limited to 'src/import/hwpf')
-rw-r--r-- | src/import/hwpf/fapi2/include/collect_reg_ffdc.H | 10 | ||||
-rw-r--r-- | src/import/hwpf/fapi2/include/ffdc.H | 10 | ||||
-rw-r--r-- | src/import/hwpf/fapi2/include/utils.H | 8 |
3 files changed, 24 insertions, 4 deletions
diff --git a/src/import/hwpf/fapi2/include/collect_reg_ffdc.H b/src/import/hwpf/fapi2/include/collect_reg_ffdc.H index bf62d7b25..aa5dd5176 100644 --- a/src/import/hwpf/fapi2/include/collect_reg_ffdc.H +++ b/src/import/hwpf/fapi2/include/collect_reg_ffdc.H @@ -382,6 +382,12 @@ ReturnCode collectRegisterData(std::vector<T>& i_addresses, U& i_reader, if(l_rc) { l_data = 0xbaddbadd; + +#ifdef __DELETE_PLATFORMDATA_SUPPORTED + // delete the platform log if it exits + deletePlatformDataPointer(l_rc); +#endif + } else { @@ -418,6 +424,10 @@ ReturnCode collectRegisterAndAddressData(std::vector<T>& i_addresses, U& i_reade if(l_rc) { l_data = 0xbaddbadd; +#ifdef __DELETE_PLATFORMDATA_SUPPORTED + // delete the platform data pointer if it exists + deletePlatformDataPointer(l_rc); +#endif } else { diff --git a/src/import/hwpf/fapi2/include/ffdc.H b/src/import/hwpf/fapi2/include/ffdc.H index 28976a44c..48a8979bd 100644 --- a/src/import/hwpf/fapi2/include/ffdc.H +++ b/src/import/hwpf/fapi2/include/ffdc.H @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* Contributors Listed Below - COPYRIGHT 2015,2016 */ +/* Contributors Listed Below - COPYRIGHT 2015,2018 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -142,7 +142,7 @@ class FirstFailureData inline void* releaseData(void) { void* l_pData = iv_info; - iv_info = NULL; + iv_info = nullptr; return l_pData; } @@ -213,7 +213,11 @@ class FirstFailureData /// inline void* getPlatDataPtr() { - return iv_platDataPtr; + void* l_platDataPtr = iv_platDataPtr; + + iv_platDataPtr = nullptr; + + return l_platDataPtr; }; /// diff --git a/src/import/hwpf/fapi2/include/utils.H b/src/import/hwpf/fapi2/include/utils.H index cd6a27717..8534d3bdb 100644 --- a/src/import/hwpf/fapi2/include/utils.H +++ b/src/import/hwpf/fapi2/include/utils.H @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* Contributors Listed Below - COPYRIGHT 2015,2017 */ +/* Contributors Listed Below - COPYRIGHT 2015,2018 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -130,6 +130,12 @@ void createPlatLog( ); /// +/// @brief delete platform data ptr - free platform data from the +// passed in RC. +/// +void deletePlatformDataPointer(fapi2::ReturnCode& io_rc); + +/// /// @brief Associate an error to PRD PLID /// /// @param[in] i_target Reference to target |