Home
last modified time | relevance | path

Searched full:pels (Results 1 – 25 of 179) sorted by relevance

12345678

/openbmc/phosphor-logging/extensions/openpower-pels/
H A Drepository.hpp13 namespace pels namespace
19 * The class handles saving and retrieving PELs on the BMC.
116 * @brief A structure for keeping a breakdown of the sizes of PELs
155 * @param[in] repoSize - The maximum amount of space to use for PELs,
157 * @param[in] maxNumPELs - The maximum number of PELs to allow
250 * @brief Subscribe to PELs being added to the repository.
266 * @brief Unsubscribe from new PELs.
278 * @brief Subscribe to PELs being deleted from the repository.
294 * @brief Unsubscribe from deleted PELs.
314 * @brief Returns the attributes map so that others can traverse PELs.
[all …]
H A DREADME.md3 This extension will create PELs for every OpenBMC event log. It is also possible
9 - [Passing in data when creating PELs](#passing-pel-related-data-within-an-openbmc-event-log)
10 - [Default UserData sections for BMC created PELs](#default-userdata-sections-for-bmc-created-pels)
20 - [Handling PELs for hot plugged FRUs](#handling-pels-for-hot-plugged-frus)
37 RAWPEL="/tmp/pels/pel.5"
76 sends down PELs when it is configured in IPMI communication mode. The PEL is
210 ## Default UserData sections for BMC created PELs
212 The extension code that creates PELs will add these UserData sections to every
226 The PEL message registry is used to create PELs from OpenBMC event logs.
492 space gets close to being full, the code will remove a percentage of PELs to
[all …]
H A Dhost_notifier.hpp13 namespace openpower::pels namespace
19 * This class handles notifying the host firmware of new PELs.
22 * notified about new PELs.
24 * Some PELs do not need to be sent - see enqueueRequired() and
41 * The host firmware has a finite amount of space to store PELs before
46 * PELs from being sent, and the first PEL that hits this will have
128 * PELs at this time.
131 * staging area to hold the PELs before sending them up
132 * to the OS is full. This will stop future PEls from being
137 * of already sent PELs.
[all …]
H A Dpaths.hpp8 namespace pels namespace
27 * @brief Returns the maximum size in bytes allocated to store PELs.
32 * @return size_t The maximum size in bytes to use for storing PELs.
37 * @brief Returns the maximum number of PELs allowed
42 * @return size_t The maximum number of PELs to allow in the repository.
46 } // namespace pels
H A Dpel_paths.cpp24 namespace pels namespace
34 logIDPath /= fs::path{"pels"} / fs::path{"pelID"}; in getPELIDFile()
41 repoPath /= "pels"; in getPELRepoPath()
47 return std::filesystem::path{"/usr/share/phosphor-logging/pels"}; in getPELReadOnlyDataPath()
64 } // namespace pels
H A Drepository.cpp28 namespace pels namespace
468 // - deconfig flag - Can be cleared for PELs that call out in updatePEL()
617 "{NUM_PELS} PELs", in prune()
623 // BMC informational PELs should only take up 15% in prune()
628 // BMC non informational PELs should only take up 30% in prune()
633 // Non BMC informational PELs should only take up 15% in prune()
638 // Non BMC non informational PELs should only take up 15% in prune()
643 // Bring the total number of PELs down to 80% of the max in prune()
675 // When counting PELs, count every PEL in prune()
688 // After the above pruning check if there are still too many PELs, in prune()
[all …]
H A Dmanager.hpp24 namespace pels namespace
140 * of PELs (and therefore OpenBMC event logs).
247 std::string getResolution(const openpower::pels::PEL& pel) const;
254 std::string getEventId(const openpower::pels::PEL& pel) const;
286 void updateProgressSRC(std::unique_ptr<openpower::pels::PEL>& pel) const;
383 * @brief Prunes old PELs out of the repository to save space.
415 void checkPelAndQuiesce(std::unique_ptr<openpower::pels::PEL>& pel);
425 void updateEventId(std::unique_ptr<openpower::pels::PEL>& pel);
457 bool updateResolution(const openpower::pels::PEL& pel);
466 void updateDBusSeverity(const openpower::pels::PEL& pel);
[all …]
H A Dsbe_ffdc_handler.cpp38 namespace pels namespace
271 openpower::pels::phal::FFDCData ffdcUserData; in process()
274 openpower::pels::phal::convertFAPItoPELformat( in process()
283 pf.format = openpower::pels::UserDataFormat::json; in process()
284 pf.subType = openpower::pels::jsonCalloutSubtype; in process()
300 pdf.format = openpower::pels::UserDataFormat::text; in process()
321 } // namespace pels
H A Dmanager.cpp40 namespace pels namespace
45 namespace rg = openpower::pels::message;
141 auto pel = std::make_unique<openpower::pels::PEL>(pelData, obmcLogID); in addPEL()
144 // PELs created by others still need this field set by us. in addPEL()
394 auto pel = std::make_unique<openpower::pels::PEL>( in createPEL()
557 // Remove the OpenBMC event logs for the PELs that were just removed. in pruneRepo()
598 // An event for 1 PEL uses 48B. When all PELs are deleted at once, in pelFileDeleted()
694 void Manager::checkPelAndQuiesce(std::unique_ptr<openpower::pels::PEL>& pel) in checkPelAndQuiesce()
732 std::string Manager::getEventId(const openpower::pels::PEL& pel) const in getEventId()
757 void Manager::updateEventId(std::unique_ptr<openpower::pels::PEL>& pel) in updateEventId()
[all …]
H A Dservice_indicators.hpp6 namespace openpower::pels::service_indicators namespace
52 * which callouts inside PELs should have their LEDs asserted,
84 * It only does the above for PELs that were created by the BMC
111 * It will ignore all PELs except for those created by the BMC or
192 } // namespace openpower::pels::service_indicators
H A Dhost_notifier.cpp20 namespace openpower::pels namespace
38 // Subscribe to be told about new PELs. in HostNotifier()
43 // Subscribe to be told about deleted PELs. in HostNotifier()
49 // Add any existing PELs to the queue to send them if necessary. in HostNotifier()
99 // Manufacturing testing may turn off sending up PELs in enqueueRequired()
341 // Reset the state on any PELs that were sent but not acked back in hostStateChange()
453 // Start sending PELs again, from the event loop in ackPEL()
482 // The only PELs that will be sent when the in setHostFull()
504 } // namespace openpower::pels
/openbmc/openbmc/meta-ibm/recipes-phosphor/logging/
H A Dphosphor-logging_%.bbappend1 PACKAGECONFIG:append:witherspoon-tacoma = " openpower-pels"
2 PACKAGECONFIG:append:p10bmc = " openpower-pels"
10 FILES:${PN}:append:p10bmc = " ${datadir}/phosphor-logging/pels/com.ibm.Hardware.Chassis.Model.Raini…
11 FILES:${PN}:append:p10bmc = " ${datadir}/phosphor-logging/pels/com.ibm.Hardware.Chassis.Model.Raini…
12 FILES:${PN}:append:p10bmc = " ${datadir}/phosphor-logging/pels/com.ibm.Hardware.Chassis.Model.Evere…
13 FILES:${PN}:append:p10bmc = " ${datadir}/phosphor-logging/pels/com.ibm.Hardware.Chassis.Model.Bonne…
20 install -d ${D}/${datadir}/phosphor-logging/pels
21 …hassis.Model.Rainier2U_dev_callouts.json ${D}/${datadir}/phosphor-logging/pels/com.ibm.Hardware.Ch…
22 …hassis.Model.Rainier4U_dev_callouts.json ${D}/${datadir}/phosphor-logging/pels/com.ibm.Hardware.Ch…
23 ….Chassis.Model.Everest_dev_callouts.json ${D}/${datadir}/phosphor-logging/pels/com.ibm.Hardware.Ch…
[all …]
/openbmc/phosphor-logging/extensions/openpower-pels/tools/
H A Dpeltool.cpp40 using namespace openpower::pels;
41 namespace message = openpower::pels::message;
42 namespace pv = openpower::pels::pel_values;
68 return std::string(phosphor::logging::paths::extension()) + "/pels/logs"; in pelLogDir()
292 * @param[in] hidden - Boolean to include hidden PELs
293 * @param[in] includeInfo - Boolean to include informational PELs
295 * termination PELs
463 * @brief Print a list of PELs or a JSON array of PELs
465 * @param[in] hidden - Boolean to include hidden PELs
466 * @param[in] includeInfo - Boolean to include informational PELs
[all …]
/openbmc/phosphor-logging/test/openpower-pels/
H A Dpel_utils.hpp1 #include "extensions/openpower-pels/paths.hpp"
10 * @brief Test fixture to remove the pelID file that PELs use.
17 pelIDFile = openpower::pels::getPELIDFile(); in SetUpTestCase()
34 pelIDFile = openpower::pels::getPELIDFile(); in SetUp()
35 repoPath = openpower::pels::getPELRepoPath(); in SetUp()
36 registryPath = openpower::pels::getPELReadOnlyDataPath(); in SetUp()
H A Dmeson.build15 '../../extensions/openpower-pels/host_notifier.cpp',
16 '../../extensions/openpower-pels/repository.cpp',
46 '../../extensions/openpower-pels/repository.cpp',
60 '../../extensions/openpower-pels/temporary_file.cpp',
89 'test-openpower-pels-' + t.underscorify(),
H A Dhost_notifier_test.cpp16 #include "extensions/openpower-pels/data_interface.hpp"
17 #include "extensions/openpower-pels/host_notifier.hpp"
29 using namespace openpower::pels;
156 // Test dealing with how acked PELs are put on the
199 // Test that hidden PELs need notification when there
264 // Test that PELs are enqueued on startup
267 // Give the repo 10 PELs to start with in TEST_F()
288 // Test the simple path were PELs get sent to the host
315 // Add a few more PELs. They will get sent. in TEST_F()
342 // it will send PELs
[all …]
H A Duser_header_test.cpp17 #include "extensions/openpower-pels/pel_types.hpp"
18 #include "extensions/openpower-pels/private_header.hpp"
19 #include "extensions/openpower-pels/user_header.hpp"
25 using namespace openpower::pels;
103 using namespace openpower::pels::message; in TEST()
195 using namespace openpower::pels::message; in TEST()
217 using namespace openpower::pels::message; in TEST()
239 using namespace openpower::pels::message; in TEST()
262 using namespace openpower::pels::message; in TEST()
284 using namespace openpower::pels::message; in TEST()
[all …]
H A Dpel_values_test.cpp16 #include "extensions/openpower-pels/pel_values.hpp"
20 using namespace openpower::pels;
21 using namespace openpower::pels::pel_values;
H A Dpel_paths.cpp16 #include "extensions/openpower-pels/paths.hpp"
22 namespace pels namespace
77 } // namespace pels
H A Dpce_identity_test.cpp16 #include "extensions/openpower-pels/pce_identity.hpp"
20 using namespace openpower::pels;
21 using namespace openpower::pels::src;
H A Drepository_test.cpp16 #include "extensions/openpower-pels/paths.hpp"
17 #include "extensions/openpower-pels/repository.hpp"
26 using namespace openpower::pels;
129 // Add some PELs to the repository in TEST_F()
216 // Add 2 PELs in TEST_F()
624 // Prune PELs, when no HMC/OS/PHYP acks
630 // Add 10 4096B (on disk) PELs of BMC nonInfo, Info and nonBMC info, in TEST_F()
658 // Sanity check the very first PELs with IDs 1 to 4 are in TEST_F()
670 EXPECT_EQ(sizes.total, 4096 * 18); // 90% of 20 PELs in TEST_F()
671 EXPECT_EQ(sizes.bmcInfo, 4096 * 3); // 15% of 20 PELs in TEST_F()
[all …]
/openbmc/openbmc-test-automation/docs/
H A Dopenbmc_test_tools.md208 -a Display all PELs
209 -l List PELs
210 -n Show number of PELs
212 -h Include hidden PELs
213 -f,--info Include informational PELs
214 -t,--termination List only critical system terminating PELs
216 -D,--delete-all Delete all PELs
219 --archive List or display archived PELs
/openbmc/phosphor-logging/extensions/openpower-pels/registry/
H A Drun-ci.sh2 /usr/bin/env python3 extensions/openpower-pels/registry/tools/validate_registry.py \
3 -s extensions/openpower-pels/registry/schema/schema.json \
4 -r extensions/openpower-pels/registry/message_registry.json
/openbmc/openbmc-test-automation/lib/
H A Dpel_utils.py93 Set True to get hidden PELs else False.
95 Set True to get informational PELs else False.
213 Set True to get hidden PELs else False.
242 Set True to get hidden PELs else False.
271 Set True to get hidden PELs else False.
327 number_of_pels Number of PELS to be returned.
/openbmc/phosphor-logging/extensions/openpower-pels/registry/tools/
H A Dvalidate_registry.py24 for entry in registry_json["PELs"]:
40 for entry in registry_json["PELs"]:
60 for entry in registry_json["PELs"]:
90 for entry in registry_json["PELs"]:

12345678