Home
last modified time | relevance | path

Searched full:ffdc (Results 1 – 25 of 270) sorted by relevance

1234567891011

/openbmc/phosphor-logging/extensions/openpower-pels/
H A Dsbe_ffdc_handler.cpp77 lg2::info("SBE FFDC processing requested"); in SbeFFDC()
80 // associated to the SBE FFDC in SbeFFDC()
113 lg2::info("SbeFFDC : No files found, skipping ffdc processing"); in SbeFFDC()
130 lg2::info("SBE FFDC file fd:({FD}), parsing started", "FD", fd); in parse()
135 // get SBE FFDC data. in parse()
139 lg2::error("Empty SBE FFDC file fd:({FD}), skipping", "FD", fd); in parse()
146 // Next un-extracted FFDC Packet in parse()
154 p10FfdcHeader* ffdc = reinterpret_cast<p10FfdcHeader*>( in parse() local
156 lenWords = ntohs(ffdc->lengthinWords); in parse()
157 auto fapiRc = ntohl(ffdc->fapiRc); in parse()
[all …]
H A Dsbe_ffdc_handler.hpp17 // SBE FFDC sub type.
21 * @brief FFDC Package structure and definitions based on SBE chip-op spec.
23 * SBE FFDC Starts with a header word (Word 0) that has an unique magic
24 * identifier code of 0xFFDC followed by the length of the FFDC package
29 * contents of subsequent FFDC Data Words (0-N).
31 * A FFDC package can typically contain debug data from either:
42 * | Word 3 | FFDC Data – Word 0 |
44 * | Word N+3 | FFDC Data – Word N |
48 * First FFDC packet structure
56 * | Word 4 | HWP FFDC Dump Fields (Local FFDC | HW Register) |
[all …]
H A Dfapi_data_process.cpp245 * @param[in] ffdc FFDC data capturd by the HWP
248 * @param[out] ffdcUserData used to store additional ffdc user data to
249 * provided by the SBE FFDC packet.
255 const FFDC& ffdc, json& pelJSONFmtCalloutDataList, FFDCData& ffdcUserData) in processClockInfoErrorHelper() argument
257 lg2::info("processClockInfoErrorHelper: FFDC Message[{FFDC_MSG}]", in processClockInfoErrorHelper()
258 "FFDC_MSG", ffdc.message); in processClockInfoErrorHelper()
261 ffdcUserData.emplace_back("HWP_RC", ffdc.hwp_errorinfo.rc); in processClockInfoErrorHelper()
262 ffdcUserData.emplace_back("HWP_RC_DESC", ffdc.hwp_errorinfo.rc_desc); in processClockInfoErrorHelper()
264 // Adding hardware procedures required ffdc data for debug in processClockInfoErrorHelper()
265 for_each(ffdc.hwp_errorinfo.ffdcs_data.cbegin(), in processClockInfoErrorHelper()
[all …]
H A Dfapi_data_process.hpp20 * @brief Used to convert processed SBE FFDC FAPI format packets into
23 * @param[in] ffdc FFDC data capturd by the HWP
26 * @param[out] ffdcUserData used to store additional ffdc user data to
27 * provided by the SBE FFDC packet.
32 void convertFAPItoPELformat(FFDC& ffdc, json& pelJSONFmtCalloutDataList,
H A DREADME.md18 - [SBE FFDC](#self-boot-engine-first-failure-data-capture-support)
140 ### FFDC Intended For UserData PEL sections
142 When one needs to add FFDC into the PEL UserData sections, the
315 ### Specifying multiple callouts using JSON format FFDC files
319 [FFDC file](#ffdc-intended-for-userdata-pel-sections). The JSON will still be
322 To specify that an FFDC file contains callouts, the format value for that FFDC
326 using FFDC = std::tuple<CreateIface::FFDCFormat,
331 FFDC ffdc{
667 During SBE chip-op failure SBE creates FFDC with custom data format. SBE FFDC
669 user data also Hardware procedure failure FFDC created by FAPI infrastructure.
[all …]
/openbmc/openbmc-test-automation/lib/
H A Dopenbmc_ffdc_methods.robot3 ... data to a list of FFDC files
29 # Method : Call FFDC Methods #
30 # Execute the user define keywords from the FFDC List #
32 # list of keywords defined in the FFDC list at one go #
34 Call FFDC Methods
35 [Documentation] Call into FFDC Keyword index list.
39 # ffdc_function_list A colon-delimited list naming the kinds of FFDC that
41 # (e.g. "FFDC Generic Report:BMC Specific Files").
45 # obtained via a call to 'Get FFDC Method Desc' (also
48 @{entries}= Get FFDC Method Index
[all …]
H A Dopenbmc_ffdc.py22 def ffdc( function
29 Gather First Failure Data Capture (FFDC).
33 - Create FFDC work space directory.
35 - Call BMC methods to write/collect FFDC data.
38 ffdc_dir_path The dir path where FFDC data should be put.
39 ffdc_prefix The prefix to be given to each FFDC file name generated.
40 …ffdc_function_list A colon-delimited list of all the types of FFDC data you wish to h…
41 … collected. A blank value means that all possible kinds of FFDC are to be
44 …comm_check Do a communications check prior to collecting FFDC. If commincati…
45 the BMC can't be established, abort the FFDC collection.
[all …]
H A Dffdc_cli_robot_script.py8 sys.path.append(__file__.split(__file__.split("/")[-1])[0] + "../ffdc")
32 the new ffdc collector ../ffdc/ffdc_collector.py via robot variable FFDC_DEFAULT
34 variable FFDC_DEFAULT:1, by default use the existing ffdc collection method.
35 variable FFDC_DEFAULT:0 use the new ffdc method
38 (1) Legacy ffdc collection
41 (2) New ffdc collection
48 xx_USERNAME:username user on the targeted system with access to FFDC files
50 xx_CONFIG:ffdc_config configuration file listing commands and files for FFDC
51 xx_LOCATION:location where to store collected FFDC. Default: <current dir>/logs/
60 Run Keyword If ${FFDC_DEFAULT} == ${1} FFDC
[all …]
H A Dopenbmc_ffdc.robot6 ... FFDC logging sample layout:
40 FFDC On Test Case Fail
41 [Documentation] Generic FFDC entry point. Place holder to hook in
49 ... 3. Delete error logs and BMC dumps post FFDC collection.
55 Run Keyword If '${TEST_STATUS}' == 'FAIL' Launch FFDC
60 Launch FFDC
61 [Documentation] Call point to call FFDC robot or FFDC script.
63 ... FFDC_DEFAULT:1 use legacy ffdc collector
64 ... FFDC_DEFAULT:0 use new ffdc collector.
66 Run Keyword If ${FFDC_DEFAULT} == ${1} FFDC # Keyword from openbmc_ffdc.py
H A Dopenbmc_ffdc_utils.robot2 Documentation Utility keywords for FFDC
38 Create FFDC Directory
41 Create FFDC Report File
44 Create FFDC Report File
45 [Documentation] Create a generic file name for ffdc
52 [Documentation] Write data to the ffdc report document
95 # --- FFDC header notes ---
96 @{entries}= Get ffdc cmd index
106 Write Cmd Output to FFDC File
/openbmc/openpower-hw-diags/analyzer/
H A Dservice_data.cpp14 // Add the callout FFDC. in calloutTarget()
15 nlohmann::json ffdc; in calloutTarget() local
16 ffdc["Callout Type"] = "Hardware Callout"; in calloutTarget()
17 ffdc["Target"] = util::pdbg::getPhysDevPath(i_target); in calloutTarget()
18 ffdc["Priority"] = callout::getStringFFDC(i_priority); in calloutTarget()
19 ffdc["Guard"] = i_guard; in calloutTarget()
20 addCalloutFFDC(ffdc); in calloutTarget()
36 // Add the callout FFDC. in calloutConnected()
37 nlohmann::json ffdc; in calloutConnected() local
38 ffdc["Callout Type"] = "Connected Callout"; in calloutConnected()
[all …]
/openbmc/openpower-proc-control/extensions/phal/
H A Dphal_error.cpp342 * @param[in] ffdc - FFDC data capturd by the HWP
345 void processClockInfoErrorHelper(FFDC* ffdc, const std::string& ffdc_prefix) in processClockInfoErrorHelper() argument
350 std::format("processClockInfoErrorHelper: FFDC Message[{}]", in processClockInfoErrorHelper()
351 ffdc->message) in processClockInfoErrorHelper()
358 // To store phal trace and other additional data about ffdc. in processClockInfoErrorHelper()
363 pelAdditionalData.emplace_back(keyWithPrefix, ffdc->hwp_errorinfo.rc); in processClockInfoErrorHelper()
366 ffdc->hwp_errorinfo.rc_desc); in processClockInfoErrorHelper()
368 // Adding hardware procedures required ffdc data for debug in processClockInfoErrorHelper()
369 for_each(ffdc->hwp_errorinfo.ffdcs_data.begin(), in processClockInfoErrorHelper()
370 ffdc->hwp_errorinfo.ffdcs_data.end(), in processClockInfoErrorHelper()
[all …]
H A Dcreate_pel.hpp65 * @brief This class is used to create ffdc data file and to get fd
77 * Used to pass json object to create unique ffdc file by using
83 * Used to remove created ffdc file.
88 * Used to get created ffdc file file descriptor id.
96 * Used to store callout ffdc data from passed json object.
101 * Used to store unique ffdc file name.
106 * Used to store created ffdc file descriptor id.
111 * Used to create ffdc file to pass PEL api for creating
119 * Create unique ffdc file.
133 * Used set ffdc file seek position begining to consume by PEL
[all …]
/openbmc/openpower-debug-collector/dump/
H A Dcreate_pel.hpp53 * @brief Process FFDC packets and create PELs for each packet.
55 * @param[in] sbeError - An SBE error object containing FFDC packet information.
66 * @brief This class is used to create ffdc data file and to get fd
78 * Used to pass json object to create unique ffdc file by using
84 * Used to remove created ffdc file.
89 * Used to get created ffdc file file descriptor id.
97 * Used to store callout ffdc data from passed json object.
102 * Used to store unique ffdc file name.
107 * Used to store created ffdc file descriptor id.
112 * Used to create ffdc file to pass PEL api for creating
[all …]
/openbmc/openpower-occ-control/
H A Docc_ffdc.hpp75 /** @class FFDC
76 * @brief Monitors for SBE FFDC availability
78 class FFDC : public Error class
81 FFDC() = delete;
82 FFDC(const FFDC&) = delete;
83 FFDC& operator=(const FFDC&) = delete;
84 FFDC(FFDC&&) = default;
85 FFDC& operator=(FFDC&&) = default;
87 /** @brief Constructs the FFDC object
90 * @param[in] file - File used by driver to communicate FFDC data
[all …]
H A Docc_ffdc.cpp36 uint32_t FFDC::createPEL(const char* path, uint32_t src6, const char* msg, in createPEL()
45 lg2::info("Creating PEL for OCC{INST} with SBE FFDC: {PATH} - SRC6: {SRC}", in createPEL()
56 // Add journal traces to PEL FFDC in createPEL()
98 void FFDC::createOCCResetPEL(unsigned int instance, const char* path, int err, in createOCCResetPEL()
136 FFDCFiles ffdc; in createOCCResetPEL() local
137 // Add journal traces to PEL FFDC in createOCCResetPEL()
139 addJournalEntries(ffdc, "openpower-occ-control", 25); in createOCCResetPEL()
155 method.append(path, level, additionalData, ffdc); in createOCCResetPEL()
164 // Reads the SBE FFDC file and create an error log
165 void FFDC::analyzeEvent() in analyzeEvent()
[all …]
/openbmc/phosphor-logging/test/openpower-pels/
H A Dpel_test.cpp169 PelFFDC ffdc; in TEST_F() local
172 ad, ffdc, dataIface, journal}; in TEST_F()
217 ad, ffdc, in TEST_F()
237 PelFFDC ffdc; in TEST_F() local
246 ad, ffdc, dataIface, journal}; in TEST_F()
497 PelFFDCfile ffdc; in getJSONFFDC() local
498 ffdc.format = UserDataFormat::json; in getJSONFFDC()
499 ffdc.subType = 5; in getJSONFFDC()
500 ffdc.version = 42; in getJSONFFDC()
512 ffdc.fd = writeFileAndGetFD(dir, data); in getJSONFFDC()
[all …]
/openbmc/openbmc-test-automation/tools/
H A Dmyffdc.robot33 Test Teardown Gather FFDC
37 My FFDC Logs
38 [Documentation] This test is needed to satisfy FFDC initial setup auto
39 ... variables required for FFDC collection.
40 Log To Console Manual FFDC collection
44 Gather FFDC
45 [Documentation] Call point to call FFDC robot or FFDC script..
46 Run Keyword If ${FFDC_DEFAULT} == ${1} FFDC # Keyword from openbmc_ffdc.py
/openbmc/openpower-debug-collector/watchdog/
H A Dwatchdog_main.cpp86 // Capture FFDC information on primary processor in handleSbeBootError()
91 // Failed to collect FFDC information in handleSbeBootError()
101 lg2::info("No FFDC data"); in handleSbeBootError()
119 // FFDC in handleSbeBootError()
120 auto ffdc = std::vector<FFDCTuple>{}; in handleSbeBootError()
121 // get SBE ffdc file descriptor in handleSbeBootError()
124 // Log error with additional ffdc if fd is valid in handleSbeBootError()
127 ffdc.push_back( in handleSbeBootError()
140 // In this case no SBE FFDC information available and in handleSbeBootError()
146 ffdc.push_back(std::make_tuple( in handleSbeBootError()
[all …]
H A Dffdc_file.hpp27 * File that contains FFDC (first failure data capture) data in json format.
29 * This class is used to store FFDC json callout data in an error log.
45 * @details Creates the FFDC file by using passed json data.
76 * @brief Temporary file where FFDC data is stored.
92 * @brief Used to store callout ffdc data from passed json object
97 * @brief Creates FFDC file for creating PEL records.
/openbmc/linux/drivers/hwmon/occ/
H A Dp9_sbe.c23 void *ffdc; member
26 struct mutex sbe_error_lock; /* lock access to ffdc data */
42 rc = memory_read_from_buffer(buf, count, &pos, ctx->ffdc, in ffdc_read()
51 static BIN_ATTR_RO(ffdc, OCC_MAX_RESP_WORDS * 4);
61 kvfree(ctx->ffdc); in p9_sbe_occ_save_ffdc()
62 ctx->ffdc = kvmalloc(resp_len, GFP_KERNEL); in p9_sbe_occ_save_ffdc()
63 if (!ctx->ffdc) { in p9_sbe_occ_save_ffdc()
75 memcpy(ctx->ffdc, resp, resp_len); in p9_sbe_occ_save_ffdc()
162 "failed to create SBE error ffdc file\n"); in p9_sbe_occ_probe()
180 kvfree(ctx->ffdc); in p9_sbe_occ_remove()
/openbmc/openbmc-test-automation/bin/plug_ins/FFDC/
H A Dcp_ffdc_check17 "%(prog)s will determine whether FFDC should be collected. If so, it"
68 "The caller wishes to dump FFDC after each boot failure."
72 print_timen("The caller wishes to dump FFDC after each boot test.")
77 print_timen("The caller wishes to dump FFDC.")
85 + " caller wishes to dump FFDC on soft errors."
89 print_timen("The caller does not wish for any FFDC to be collected.")
/openbmc/phosphor-power/phosphor-regulators/src/
H A Derror_logging.cpp122 // Create FFDC file of type Text in createFFDCFile()
147 std::string{"Unable to write to FFDC file: "} + in createFFDCFile()
159 std::string{"Unable to seek within FFDC file: "} + strerror(errno)}; in createFFDCFile()
169 // Create FFDC files containing journal messages from relevant executables. in createFFDCFiles()
170 // Executables in priority order in case error log cannot hold all the FFDC. in createFFDCFiles()
180 // Create FFDC file containing the journal messages in createFFDCFiles()
217 // Create FFDC files containing debug data to store in error log in logError()
220 // Create FFDC tuples used to pass FFDC files to D-Bus method in logError()
223 // Call D-Bus method to create an error log with FFDC files in logError()
232 // Remove FFDC files. If an exception occurs before this, the files in logError()
[all …]
/openbmc/openpower-hw-diags/util/
H A Dffdc.hpp14 * of interest for logging. For each of these entries create a ffdc trace file
15 * that will be used to create ffdc log entries. These files will be pushed
16 * onto the stack of ffdc files.
18 * @param i_files - vector of ffdc files that will become log entries
/openbmc/phosphor-logging/
H A Dlog_manager.hpp179 * @param[in] ffdc - A vector of tuples that allows one to pass in file
180 * descriptors for files that contain FFDC (First
186 const FFDCEntries& ffdc = FFDCEntries{})
259 * @param[in] ffdc - A vector of FFDC file info
261 void doExtensionLogCreate(const Entry& entry, const FFDCEntries& ffdc);
269 * @param[in] ffdc - A vector of FFDC file info. Defaults to an empty
274 const FFDCEntries& ffdc = FFDCEntries{})
378 /** @brief D-Bus method call implementation to create an event log with FFDC
380 * The same as create(), but takes an extra FFDC argument.
386 * @param[in] ffdc - A vector of FFDC file info
[all …]

1234567891011