diff options
author | Peng Fei GOU <shgoupf@cn.ibm.com> | 2017-01-11 21:40:24 -0500 |
---|---|---|
committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2017-05-24 22:35:47 -0400 |
commit | 8cb9e23b499f04e65cd71b1d3e78b3f2763c1159 (patch) | |
tree | a91328bdfa43df594c4cda7ec1ef03768b966dcb /src/import/chips/p9/procedures/hwp/cache | |
parent | faa8f92fba576fefb35398b80b5910a0ec145ad1 (diff) | |
download | talos-hostboot-8cb9e23b499f04e65cd71b1d3e78b3f2763c1159.tar.gz talos-hostboot-8cb9e23b499f04e65cd71b1d3e78b3f2763c1159.zip |
p9_l2err_extract -- Fix bugs and tight up output formats
1) when error is not found for an EX, the procedure will continue
parse other EXs.
2) tight up the output formats.
Change-Id: I33af9dbc1a5ac83b2a09ce06ee757425127ee063
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/34774
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Reviewed-by: Kevin F. Reick <reick@us.ibm.com>
Reviewed-by: Joseph J. McGill <jmcgill@us.ibm.com>
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/40874
Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/import/chips/p9/procedures/hwp/cache')
-rw-r--r-- | src/import/chips/p9/procedures/hwp/cache/p9_l2err_extract.C | 17 | ||||
-rw-r--r-- | src/import/chips/p9/procedures/hwp/cache/p9_l2err_extract.H | 15 |
2 files changed, 18 insertions, 14 deletions
diff --git a/src/import/chips/p9/procedures/hwp/cache/p9_l2err_extract.C b/src/import/chips/p9/procedures/hwp/cache/p9_l2err_extract.C index 65c36ac6c..d3b9ab6d7 100644 --- a/src/import/chips/p9/procedures/hwp/cache/p9_l2err_extract.C +++ b/src/import/chips/p9/procedures/hwp/cache/p9_l2err_extract.C @@ -71,7 +71,8 @@ extern "C" fapi2::ReturnCode p9_l2err_extract(const fapi2::Target<fapi2::TARGET_TYPE_EX>& i_target, const fapi2::variable_buffer& i_ta_data, p9_l2err_extract_err_type i_err_type, - p9_l2err_extract_err_data& o_err_data) + p9_l2err_extract_err_data& o_err_data, + bool& o_error_found) { uint32_t rc_ecmd = 0; // other vars @@ -231,14 +232,14 @@ extern "C" FAPI_DBG("Found UE or CE: error_found = %i", error_found); - //log an error if nothing was found based on what the user was looking for - FAPI_ASSERT(error_found, - fapi2::P9_L2ERR_EXTRACT_NO_CEUE_FOUND() - .set_TARGET(i_target) - .set_TA_DATA(i_ta_data) - .set_ERR_REQ_TYPE(i_err_type), - "No CE or UE found in trace array."); + o_error_found = error_found; + // Don't panic if error is not found. + if (!error_found) + { + FAPI_DBG("No error is found!"); + return fapi2::current_err; + } //generate compression indexes, we will use these to look back for data l_ce_trace_index = trace_index; diff --git a/src/import/chips/p9/procedures/hwp/cache/p9_l2err_extract.H b/src/import/chips/p9/procedures/hwp/cache/p9_l2err_extract.H index 6449a993d..c40ce6a73 100644 --- a/src/import/chips/p9/procedures/hwp/cache/p9_l2err_extract.H +++ b/src/import/chips/p9/procedures/hwp/cache/p9_l2err_extract.H @@ -85,7 +85,8 @@ typedef fapi2::ReturnCode (*p9_l2err_extract_FP_t) (const fapi2::Target<fapi2::TARGET_TYPE_EX>&, const fapi2::variable_buffer&, p9_l2err_extract_err_type, - p9_l2err_extract_err_data&); + p9_l2err_extract_err_data&, + bool&); extern "C" { @@ -97,15 +98,17 @@ extern "C" // function: FAPI2 p9_l2err_extract HWP entry point // Parse and extract L2 error information from provided // L2_T0 trace array that has been stopped on an L2 CE or UE. -// parameters: i_target => chiplet target for callouts -// i_ta_data => ecmdDataBufferBase that contains the trace data -// i_err_type => type of error that is to be extracted (CE,UE,both) -// o_err_data => failing location information for CE or UE +// parameters: i_target => chiplet target for callouts +// i_ta_data => ecmdDataBufferBase that contains the trace data +// i_err_type => type of error that is to be extracted (CE,UE,both) +// o_err_data => failing location information for CE or UE +// o_error_found => error is found fapi2::ReturnCode p9_l2err_extract(const fapi2::Target<fapi2::TARGET_TYPE_EX>& i_target, const fapi2::variable_buffer& i_ta_data, p9_l2err_extract_err_type i_err_type, - p9_l2err_extract_err_data& o_err_data); + p9_l2err_extract_err_data& o_err_data, + bool& o_error_found); } // extern "C" |