Skip to content

Commit

Permalink
p9_l2err_extract -- Fix bugs and tight up output formats
Browse files Browse the repository at this point in the history
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>
  • Loading branch information
shgoupf authored and dcrowell77 committed May 25, 2017
1 parent faa8f92 commit 8cb9e23
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 14 deletions.
17 changes: 9 additions & 8 deletions src/import/chips/p9/procedures/hwp/cache/p9_l2err_extract.C
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down Expand Up @@ -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;
Expand Down
15 changes: 9 additions & 6 deletions src/import/chips/p9/procedures/hwp/cache/p9_l2err_extract.H
Original file line number Diff line number Diff line change
Expand Up @@ -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"
{
Expand All @@ -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"

Expand Down

0 comments on commit 8cb9e23

Please sign in to comment.