summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorShakeeb <shakeebbk@in.ibm.com>2016-08-12 01:40:32 -0500
committerSachin Gupta <sgupta2m@in.ibm.com>2016-08-18 09:56:47 -0400
commit27ae0088b4aba0fae5ad75dde6389f7f873f2aab (patch)
tree10a146b923b3e0d543d1021b37d338ca66d62a2e
parent0fb389ffd510e41cbf71e64ea8c1a3e9cd5caf2b (diff)
downloadtalos-sbe-27ae0088b4aba0fae5ad75dde6389f7f873f2aab.tar.gz
talos-sbe-27ae0088b4aba0fae5ad75dde6389f7f873f2aab.zip
Updating SBE parser format
Change-Id: Ic3b97c3290045c459ac33120905b7a603649d695 RTC:151554 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/28201 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Sachin Gupta <sgupta2m@in.ibm.com>
-rw-r--r--sbe/sbefw/plugins/sbeUserDataParser.C11
-rw-r--r--sbe/sbefw/sbeFifoMsgUtils.C5
2 files changed, 10 insertions, 6 deletions
diff --git a/sbe/sbefw/plugins/sbeUserDataParser.C b/sbe/sbefw/plugins/sbeUserDataParser.C
index 3d2eb92b..64fca9f1 100644
--- a/sbe/sbefw/plugins/sbeUserDataParser.C
+++ b/sbe/sbefw/plugins/sbeUserDataParser.C
@@ -47,11 +47,13 @@
#define SBE_PARSER_MAX_LOCAL_BUFFER 8192
-#define SBE_PARSER_PRINT_DELIMETER {std::cout << \
+#define SBE_PARSER_PRINT_DELIMITER {std::cout << \
"*****************************************************************************"\
<< std::endl;}
-#define SBE_PARSER_PRINT_HEADING(x) {std::cout << \
-" "x<< std::endl;}
+#define SBE_PARSER_PRINT_HEADING(x) { SBE_PARSER_PRINT_DELIMITER \
+std::cout << \
+" "x<< std::endl;\
+SBE_PARSER_PRINT_DELIMITER }
std::string findSbeFile(const char *name)
{
@@ -108,7 +110,6 @@ void sbeParserSysCall(const char *cmd)
FILE *stream;
char buffer[256];
- std::cout << "calling " << cmd << std::endl;
stream = popen(cmd, "r" );
if(stream)
{
@@ -180,7 +181,6 @@ int parseSbeFFDC(ErrlUsrParser & i_parser, const void * i_pBuffer,
{
if(l_dumpFields & 0x0001)
{
- SBE_PARSER_PRINT_DELIMETER
if(l_buflen < sizeof(uint32_t))
{
//Complete this loop and let the tools print as much data
@@ -280,7 +280,6 @@ int parseSbeFFDC(ErrlUsrParser & i_parser, const void * i_pBuffer,
//Delete the temp file
l_fileObj.Remove();
- SBE_PARSER_PRINT_DELIMETER
}
l_dumpFields >>= 1;
if(l_rc != 0)
diff --git a/sbe/sbefw/sbeFifoMsgUtils.C b/sbe/sbefw/sbeFifoMsgUtils.C
index 15e36516..1090a7ba 100644
--- a/sbe/sbefw/sbeFifoMsgUtils.C
+++ b/sbe/sbefw/sbeFifoMsgUtils.C
@@ -346,7 +346,12 @@ uint32_t sbeDsSendRespHdr(const sbeRespGenHdr_t &i_hdr,
break;
}
distance += len;
+ }
+ // If there is a SBE internal failure
+ if((i_hdr.primaryStatus != SBE_PRI_OPERATION_SUCCESSFUL) ||\
+ (i_hdr.secondaryStatus != SBE_SEC_OPERATION_SUCCESSFUL))
+ {
//Add FFDC data as well.
//Generate all the fields of FFDC package
SbeFFDCPackage sbeFfdc;
OpenPOWER on IntegriCloud