From f1760e04ceab564f8cef0c8d267bece75cce116c Mon Sep 17 00:00:00 2001 From: Mike Jones Date: Mon, 12 Mar 2012 15:28:10 -0500 Subject: ERRL: Interface to remove backtrace from error log RTC: 37794 Change-Id: I944f6ed9c86c64e0d3a84649d1f71e66a9aaa7c3 Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/732 Tested-by: Jenkins Server Reviewed-by: A. Patrick Williams III --- src/include/usr/errl/errlentry.H | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) (limited to 'src/include/usr/errl/errlentry.H') diff --git a/src/include/usr/errl/errlentry.H b/src/include/usr/errl/errlentry.H index 32eb5a1ea..1b71aa39d 100644 --- a/src/include/usr/errl/errlentry.H +++ b/src/include/usr/errl/errlentry.H @@ -63,15 +63,7 @@ namespace ERRORLOG // Forward class declarations /*****************************************************************************/ class ErrlManager; - - - - -// In Sprint 6, the return from errl->addFFDC changed from -// ErrlFFDC* to ErrlUD*. This typedef is for compatibility in -// case anybody previously stored the return from errl->addFFDC() as -// ErrlFFDC *. -typedef ErrlUD ErrlFFDC; +class ErrlUserDetailsBackTrace; /** * @brief Host Boot Error log entry class. @@ -100,6 +92,9 @@ public: * Platform Event Log and SRC PLDD at: https://mcdoc.boeblingen.de. * ibm.com/out/out.ViewDocument.php?documentid=1675 * + * The backtrace is captured as user detail data. Use removeBackTrace to + * remove + * * The order of parameters is arranged so that Host Boot error log * is as close to SP as possible. * @@ -350,9 +345,14 @@ public: bool collectTrace(const char i_name[], const uint64_t i_max = 0); - - - + /** + * @brief Remove the back trace user detail data + * When an error log is constructed, the back trace is automatically + * captured. This function removes the backtrace. This should be used when + * a caller knows that the backtrace is of no use and wants to limit the + * size of the error log. + */ + void removeBackTrace(); private: /** @@ -467,6 +467,7 @@ private: ErrlSrc iv_Src; // primary SRC section std::vector iv_SectionVector; // list of user defined sections std::vector iv_btAddrs; // list of addresses for the backtrace + ErrlUserDetailsBackTrace * iv_pBackTrace; // Pointer to back trace // TODO need to interpret term state and terminate accordingly. // TODO termstate is presently not being flattend into PEL -- cgit v1.2.1