History log of /openbmc/phosphor-logging/test/ (Results 1 – 25 of 284)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
6eb96bf705-Nov-2024 Patrick Williams <patrick@stwcx.xyz>

lg2: commit: add support for journal-only method

The design document for the new event system references an
option to log events to the journal rather than to dbus[1] using
the 'OPENBMC_MESSAGE_ID'

lg2: commit: add support for journal-only method

The design document for the new event system references an
option to log events to the journal rather than to dbus[1] using
the 'OPENBMC_MESSAGE_ID' identifier. Add support and test cases
for this as a meson option.

[1]: https://github.com/openbmc/docs/blob/master/designs/event-logging.md#phosphor-logging

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I6cb94453c6cc95a9ccbbbc11859b70ef12d375fd

show more ...

247fed6031-Oct-2024 Patrick Williams <patrick@stwcx.xyz>

lg2: commit: extract source location information and add to event

sdbusplus will add PID and std::source_location information, from
the event origination point, to the event. Extract this and add
i

lg2: commit: extract source location information and add to event

sdbusplus will add PID and std::source_location information, from
the event origination point, to the event. Extract this and add
it to the event.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I6364ba0f74231fca2815c770bc3e56c2780d199e

show more ...

f0af358f10-Oct-2024 Patrick Williams <patrick@stwcx.xyz>

lg2: commit: add methods for new sdbusplus events

Add implementations and test cases for the `lg2::commit` functions.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I25a87fd65738e4d

lg2: commit: add methods for new sdbusplus events

Add implementations and test cases for the `lg2::commit` functions.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I25a87fd65738e4debbe98f3473709f77d51777e9

show more ...

e001cd7907-Oct-2024 Patrick Williams <patrick@stwcx.xyz>

lg2: commit: add stubs to support new sdbusplus events

Create empty stubs for the commit functions from the new event
log design[1].

[1]: https://github.com/openbmc/docs/blob/master/designs/event-l

lg2: commit: add stubs to support new sdbusplus events

Create empty stubs for the commit functions from the new event
log design[1].

[1]: https://github.com/openbmc/docs/blob/master/designs/event-logging.md

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I8c0232858f41b875e78d5e41f17c065ca727429d

show more ...

083c704914-Oct-2024 Matt Spinler <spinler@us.ibm.com>

PEL: Remove dump status bits from PELs

Stop filling in the bits in the PEL that say there are un-offloaded
dumps. These require calls to the dump daemon that can be slow and even
time out if the du

PEL: Remove dump status bits from PELs

Stop filling in the bits in the PEL that say there are un-offloaded
dumps. These require calls to the dump daemon that can be slow and even
time out if the dump daemon is busy.

These aren't parsed out in the peltool output anyway, and there are
other ways to determine if there are dumps - someone could just look at
the dump D-Bus directly.

This isn't a direct revert of the commit that introduced it because of
all the merge conflicts trying to do a revert entailed.

Tested:
Can still create PELs.

Change-Id: I975f06ebf3638b39315fdea49393d1941a6f5216
Signed-off-by: Matt Spinler <spinler@us.ibm.com>

show more ...

730c40fa03-Oct-2024 Patrick Williams <patrick@stwcx.xyz>

test: fix resolve-flag test

Due to two commits getting merged in close proximity, a variable
for the path to write error logs no longer exists and one test case
was broken in compile. Fix that per

test: fix resolve-flag test

Due to two commits getting merged in close proximity, a variable
for the path to write error logs no longer exists and one test case
was broken in compile. Fix that per the second commit approach.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I567462193ecc729e932da107d8e4932b7c6f5b49

show more ...

fa2d962b30-Sep-2024 Patrick Williams <patrick@stwcx.xyz>

log-manager: enable non-standard path for local tests

Enable the log-manager to be launched with a path other than
`/var/phosphor-logging` to allow it to be ran on a development system
for test purp

log-manager: enable non-standard path for local tests

Enable the log-manager to be launched with a path other than
`/var/phosphor-logging` to allow it to be ran on a development system
for test purposes. This required some refactoring throughout as to
how paths were handled.

Tested:

After running tests, `/tmp/phosphor-logging` is populated with
entries. Launching `./builddir/phosphor-log-manager
/tmp/phosphor-logging`, the log-manager will have the entries on
dbus:

```
$ busctl --user tree xyz.openbmc_project.Logging
└─ /xyz
└─ /xyz/openbmc_project
└─ /xyz/openbmc_project/logging
├─ /xyz/openbmc_project/logging/entry
│ ├─ /xyz/openbmc_project/logging/entry/100
│ ├─ /xyz/openbmc_project/logging/entry/101
│ ├─ /xyz/openbmc_project/logging/entry/102
│ ├─ /xyz/openbmc_project/logging/entry/103
```

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I84968edeed0dcf73aaf8bb653060b6d3400b9b7b

show more ...

253bfb7230-Sep-2024 Patrick Williams <patrick@stwcx.xyz>

openpower-pels: time: use gmtime for all operations

The test cases in `bcd_time_test.cpp` could fail if the executing
host were not in UTC. By default the BMC uses UTC but the development
systems a

openpower-pels: time: use gmtime for all operations

The test cases in `bcd_time_test.cpp` could fail if the executing
host were not in UTC. By default the BMC uses UTC but the development
systems are often in a user's local time zone. Switch all time
operations to work off UTC by using gmtime/timegm instead of
localtime/mktime.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I6230fd014f44123fe917a8e2b39e3b903d3a05e8

show more ...

916bb97e26-Sep-2024 Arya K Padman <aryakpadman@gmail.com>

PEL: Prohibit PEL resolving if associated guard record exists

The commit prohibits marking the 'Resolve' flag of the PEL as 'true'
until the associated guard record resolved if one exists.The user w

PEL: Prohibit PEL resolving if associated guard record exists

The commit prohibits marking the 'Resolve' flag of the PEL as 'true'
until the associated guard record resolved if one exists.The user will
get notified with the same by throwing the DBUS error
`sdbusplus::xyz::openbmc_project::Common::Error::Unavailable`.

Implemented approach:
The PELs will be prohibited from deleting also if the PEL is
associated with a guard record. Hence, implementation is like that
resolve will be prohibited until delete does the same.

Tested:
Sample output:

```
busctl set-property xyz.openbmc_project.Logging
/xyz/openbmc_project/logging/entry/406 xyz.openbmc_project.Logging.Entry
Resolved b true

Failed to set property Resolved on interface xyz.openbmc_project.Logging.Entry:
The service is temporarily unavailable.
```
Change-Id: I77cc191e95c494423d3c875c231fdace8237cf22
Signed-off-by: Arya K Padman<aryakpadman@gmail.com>

show more ...

70e8a11b24-Sep-2024 Matt Spinler <spinler@us.ibm.com>

PEL: Update check for identifying I2C dev paths

Due to changes in the kernel, I2C device paths changed slightly and so
the code that identifies if a device path passed in for a callout is for
an I2C

PEL: Update check for identifying I2C dev paths

Due to changes in the kernel, I2C device paths changed slightly and so
the code that identifies if a device path passed in for a callout is for
an I2C device needs an update.

An example of a new canonical device path is:
```
/sys/devices/platform/ahb/1e780000.apb/1e780000.apb:bus@1e78a000/1e78a200.i2c/i2c-3/3-006d
```

Tested:
Creating a PEL with CALLOUT_DEVICE_PATH=/sys/bus/i2c/devices/3-006d on
an IBM Everest system generates a proper callout, as shown in this
captured PEL debug UserData section:

```
"I2C: bus: 3 address: 109 dest: /sys-0/node-0/bellavista-0/Power-riser-conn-0/Fansipan-0/power-supply-conn-2/power-supply-0/power-supply-blackbox-0"
```

Change-Id: I4efb9135982f417560172df99dfe36f98e3a9696
Signed-off-by: Matt Spinler <spinler@us.ibm.com>

show more ...

9972716f23-Sep-2024 harsh-agarwal1 <harsh.agarwal@ibm.com>

PEL: Updated PEL spec error action flag bit#10

- This will help to indicate which SRCs need to be collected and
regularly called home.
- Defined new entry in message registry schema action flags fie

PEL: Updated PEL spec error action flag bit#10

- This will help to indicate which SRCs need to be collected and
regularly called home.
- Defined new entry in message registry schema action flags field
- Set this action flag in the registry for the daily clock PEL
and the voltage regulator N+1 phase fault PEL

Tested:
Sample output:
```bash
$ peltool -af
...
"Action Flags": [
"Report Externally",
"Heartbeat Call Home Event"
...
"Action Flags": [
"Report Externally",
"HMC Call Home",
"Heartbeat Call Home Event"
...
$ peltool -afx
...
00000030 55 48 00 18 01 00 20 00 60 03 00 01 00 00 00 00 |
00000040 00 00 20 20 00 00 00 00 50 53 00 50 01 01 27 00 |
...
00000030 55 48 00 18 01 00 20 00 58 03 00 01 00 00 00 00 |
00000040 00 00 28 20 00 00 00 00 50 53 00 50 01 01 30 00 |
...

```
Change-Id: Ifa181374692013dfadc0dd744f6db61baad3d42e
Signed-off-by: Harsh Agarwal <Harsh.Agarwal@ibm.com>

show more ...

d763db3503-Sep-2024 harsh-agarwal1 <harsh.agarwal@ibm.com>

PEL: Prevent deletion if it's associated with HWIsolation

- This ensures that PELs linked to HWIsolation records are protected
from accidental deletion.
- Shows error message of "Call failed: The se

PEL: Prevent deletion if it's associated with HWIsolation

- This ensures that PELs linked to HWIsolation records are protected
from accidental deletion.
- Shows error message of "Call failed: The service is temporarily
unavailable.", when attempting to delete such a PEL individually.
- If trying to Delete all, will skip such PELs without showing any
message.

Tested:
Sample output:
```bash
$ busctl call xyz.openbmc_project.Logging /xyz/openbmc_project/
logging xyz.openbmc_project.Collection.DeleteAll DeleteAll

$ busctl call xyz.openbmc_project.Logging /xyz/openbmc_project/
logging/entry/2 xyz.openbmc_project.Object.Delete Delete
Call failed: The service is temporarily unavailable.

```
Change-Id: I2d28de91bbb0fbc2a991e3d5e5631814d41fe044
Signed-off-by: Harsh Agarwal <Harsh.Agarwal@ibm.com>

show more ...

ced8ed7702-Sep-2024 Arya K Padman <aryakpadman@gmail.com>

PEL: DRAM: Remove the Debug Section for PHAL Errors

In commit 8ae618, when the system attempts to call out FRUs, PEL is
designed to include DRAM manufacturer details if the FRU being
identified is a

PEL: DRAM: Remove the Debug Section for PHAL Errors

In commit 8ae618, when the system attempts to call out FRUs, PEL is
designed to include DRAM manufacturer details if the FRU being
identified is a DIMM. The FRU type is determined using the PHAL API
"getFRUType", and if this fails, the corresponding PHAL error message
is added to the PEL debug section to aid in debugging.

However, there are cases where some FRUs, such as Planar, Fan, Power
Supply, etc., are not represented in the PHAL device tree. The PHAL
device tree primarily serves CEC (Central Electronic Complex)
hardware, which is crucial for booting the host processor. For these
unmodeled FRUs, PHAL returns 'Location code not found,' which is then
recorded in the PEL debug section.

Since these failures are expected, the PHAL error messages should be
removed from the PEL debug section to prevent confusion, as errors for
non-modeled FRUs in the PHAL device tree are expected.

The downside is that this removal could reduce debuggability for real
errors, such as a valid location code not being found or the need for
updates to the PHAL predefined FRU list. The expectation is that the
PHAL API "getFRUType" should have sufficient trace information for
debugging such issues. The phosphor-logging is not designed to capture
traces for PHAL error scenarios because of the limitations with the
PHAL device tree mentioned above.

Signed-off-by: Arya K Padman <aryakpadman@gmail.com>
Change-Id: I9a0011252667173f9e5f6aecbab2e7cd76174afa

show more ...

d8ae618a19-Jul-2024 Arya K Padman <aryakpadman@gmail.com>

PEL: Add the DRAM manufacturer info of DIMM callout in UD section

Add the called out DIMMs DRAM manufacturer info to the user data
section of the PEL to assist the service engineers in identifying t

PEL: Add the DRAM manufacturer info of DIMM callout in UD section

Add the called out DIMMs DRAM manufacturer info to the user data
section of the PEL to assist the service engineers in identifying the
manufacturer of the faulty DRAMs packaged within the DIMM module
directly from the logs, aiding in quick resolution.

The changes also moves the pdbg target and libekb initialization to
the PEL startup which avoids the need of multiple initialization as
the existing design.

When a PEL calls out a DIMM FRU, the DRAM manufacturer ID and the
expanded location code of those DIMMs are added to the SysInfo user
data section of the generated PEL in JSON format under the key 'DIMMs
Additional Info'.

In case of any errors occur during the collection or processing of
the manufacturer data, the error messages will be logged in the 'PEL
Internal Debug Data' section as a JSON array under the key 'DIMMs Info
Fetch Error' as a separate user data section.

Tested :

Below is a portion of PEL(callout section and User Data section are
shown) which callout the DIMM P0-C32.

```
"Hex Word 9": "00000000",
"Callout Section": {
"Callout Count": "1",
"Callouts": [{
"FRU Type": "Normal Hardware FRU",
"Priority": "Mandatory, replace all with this
type as a unit",
"Location Code": "UXXX.YYY.WWW004A-P0-C32",
"Part Number": "7777777",
"CCIN": "1234",
"Serial Number": "YYYYYY"
}]
}
```
"User Data": {
"Section Version": "1",
"Sub-section type": "1",
"Created by": "bmc error logging",
"BMCLoad": "0.65 0.69 0.64",
"BMCState": "Ready",
"BMCUptime": "0y 0d 0h 17m 43s",
"BootState": "Unspecified",
"ChassisState": "Off",
"DIMMs Additional Info": [
{
"DRAM Manufacturer ID": [
"0x88",
"0xAA"
]
"Location Code": "UXXX.YYY.WWW004A-P0-C32",
}
],
"FW Version ID": "fw1060.20-4-1060.2432.20240729a (NL1060_068)",
"HostState": "Off",
"System IM": "50001001"
}
```

Change-Id: I2ff81c66e63b99e8e84378ec78f586fb9b6322d7
Signed-off-by: Arya K Padman <aryakpadman@gmail.com>

show more ...

075c792316-Aug-2024 Patrick Williams <patrick@stwcx.xyz>

clang-format: re-format for clang-18

clang-format-18 isn't compatible with the clang-format-17 output, so we
need to reformat the code with the latest version. The way clang-18
handles lambda forma

clang-format: re-format for clang-18

clang-format-18 isn't compatible with the clang-format-17 output, so we
need to reformat the code with the latest version. The way clang-18
handles lambda formatting also changed, so we have made changes to the
organization default style format to better handle lambda formatting.

See I5e08687e696dd240402a2780158664b7113def0e for updated style.
See Iea0776aaa7edd483fa395e23de25ebf5a6288f71 for clang-18 enablement.

Change-Id: I21d2ca8065f24fd73509229c517f5caf48934b60
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>

show more ...


/openbmc/phosphor-logging/.clang-format
/openbmc/phosphor-logging/elog_block.hpp
/openbmc/phosphor-logging/elog_entry.hpp
/openbmc/phosphor-logging/elog_meta.cpp
/openbmc/phosphor-logging/elog_meta.hpp
/openbmc/phosphor-logging/elog_serialize.hpp
/openbmc/phosphor-logging/extensions/openpower-pels/bcd_time.hpp
/openbmc/phosphor-logging/extensions/openpower-pels/callout.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/callouts.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/data_interface.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/data_interface.hpp
/openbmc/phosphor-logging/extensions/openpower-pels/dbus_watcher.hpp
/openbmc/phosphor-logging/extensions/openpower-pels/device_callouts.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/device_callouts.hpp
/openbmc/phosphor-logging/extensions/openpower-pels/extended_user_data.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/fapi_data_process.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/host_notifier.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/journal.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/journal.hpp
/openbmc/phosphor-logging/extensions/openpower-pels/json_utils.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/manager.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/manager.hpp
/openbmc/phosphor-logging/extensions/openpower-pels/mru.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/pel.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/pel.hpp
/openbmc/phosphor-logging/extensions/openpower-pels/pel_entry.hpp
/openbmc/phosphor-logging/extensions/openpower-pels/pel_values.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/pldm_interface.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/registry.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/registry.hpp
/openbmc/phosphor-logging/extensions/openpower-pels/registry/message_registry.json
/openbmc/phosphor-logging/extensions/openpower-pels/repository.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/repository.hpp
/openbmc/phosphor-logging/extensions/openpower-pels/section_header.hpp
/openbmc/phosphor-logging/extensions/openpower-pels/service_indicators.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/severity.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/severity.hpp
/openbmc/phosphor-logging/extensions/openpower-pels/src.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/src.hpp
/openbmc/phosphor-logging/extensions/openpower-pels/temporary_file.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/tools/peltool.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/user_data.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/user_data_json.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/user_data_json.hpp
/openbmc/phosphor-logging/extensions/openpower-pels/user_header.cpp
/openbmc/phosphor-logging/lib/include/phosphor-logging/lg2/conversion.hpp
/openbmc/phosphor-logging/lib/lg2_logger.cpp
/openbmc/phosphor-logging/log_manager.cpp
/openbmc/phosphor-logging/log_manager.hpp
/openbmc/phosphor-logging/logging_test.cpp
/openbmc/phosphor-logging/phosphor-rsyslog-config/server-conf.cpp
elog_errorwrap_test.hpp
openpower-pels/device_callouts_test.cpp
openpower-pels/failing_mtms_test.cpp
openpower-pels/host_notifier_test.cpp
openpower-pels/mocks.hpp
openpower-pels/pel_manager_test.cpp
openpower-pels/pel_test.cpp
openpower-pels/registry_test.cpp
openpower-pels/src_callout_test.cpp
openpower-pels/src_test.cpp
openpower-pels/user_data_test.cpp
0387a74e01-Jul-2024 Lakshmi Yadlapati <lakshmiy@us.ibm.com>

openpower-pels: Move to libpldm pldm_transport APIs

- Replaced the deprecated pldm transport APIs with the new libpldm
pldm_transport APIs.
- Updated the receive function to pass pldm_transport as

openpower-pels: Move to libpldm pldm_transport APIs

- Replaced the deprecated pldm transport APIs with the new libpldm
pldm_transport APIs.
- Updated the receive function to pass pldm_transport as a parameter.
- Modified the function signatures and their calls to ensure the
pldm_transport parameter is properly passed.

This change migrates the application off of the deprecated "requester"
APIs in libpldm.

We don't currently have the infrastructure in place to get the correct
TIDs, so to keep everything working as before use the EID as the TID in
the EID-to-TID mapping.

Change-Id: Ib143dc122637ef7e390fceb64f1f94c65172ae39
Signed-off-by: Lakshmi Yadlapati <lakshmiy@us.ibm.com>

show more ...

1537029214-May-2024 Arya K Padman <aryakpadman@gmail.com>

PEL: Adding the support for Systems Key in message registry

The current implementation has the support for adding system specific
callouts with the help of 'System' key in message_registry.json.

Ad

PEL: Adding the support for Systems Key in message registry

The current implementation has the support for adding system specific
callouts with the help of 'System' key in message_registry.json.

Adding one more key named 'Systems' where it can have array of system
names in the form of strings. The 'Systems' key can be used to define
the shared callouts for a group of systems.

A unique callout to a specific system can be added using the existing
System key. If both 'System' and 'Systems' are not present or not
matching with the system name, then the default calloutList will be
taken if configured.

Tested:

The test setup has the following names for the compatible interface.

```
busctl -j get-property xyz.openbmc_project.EntityManager
/xyz/openbmc_project/inventory/system/chassis/Rainier_2U_Chassis
xyz.openbmc_project.Inventory.Decorator.Compatible Names
{
"type" : "as",
"data" : [
"com.ibm.Hardware.Chassis.Model.Rainier2U",
"com.ibm.Hardware.Chassis.Model.Rainier"
]
}
```
The callout section in the message_registry.json for TestError1 is
defined as below.
```
"Callouts": [
{
"Systems": ["com.ibm.Hardware.Chassis.Model.Rainier",
"com.ibm.Hardware.Chassis.Model.Blue_Ridge"],
"CalloutList": [
{"Priority": "medium", "SymbolicFRU": "service_docs"}
]
},
{
"System": "com.ibm.Hardware.Chassis.Model.Rainier",
"CalloutList": [
{"Priority": "high", "Procedure": "BMC0001"}
]
},
{
"CalloutList": [
{ "LocCode": "P0", "Priority": "high" },
{ "LocCode": "P0-C15","Priority": "low" }
]
}
]
```

Leads to PEL callouts section as below:
```
"Callout Section": {
"Callout Count": "2",
"Callouts": [{
"FRU Type": "Maintenance Procedure Required",
"Priority": "Mandatory, replace all with this type
as a unit",
"Procedure": "BMC0001"
}, {
"FRU Type": "Symbolic FRU",
"Priority": "Medium Priority",
"Part Number": "SVCDOCS"
}]
}
```

Signed-off-by: Arya K Padman <aryakpadman@gmail.com>
Change-Id: Iea65816dcb822bb07043897488a6251929548dc7

show more ...


/openbmc/phosphor-logging/elog_entry.cpp
/openbmc/phosphor-logging/elog_serialize.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/callout.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/callouts.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/device_callouts.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/entry_points.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/extended_user_data.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/extended_user_header.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/failing_mtms.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/fapi_data_process.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/fru_identity.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/generic.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/journal.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/json_utils.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/json_utils.hpp
/openbmc/phosphor-logging/extensions/openpower-pels/log_id.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/manager.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/mru.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/pel.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/phal_service_actions.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/private_header.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/registry.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/registry/O_component_ids.json
/openbmc/phosphor-logging/extensions/openpower-pels/registry/README.md
/openbmc/phosphor-logging/extensions/openpower-pels/registry/message_registry.json
/openbmc/phosphor-logging/extensions/openpower-pels/registry/schema/schema.json
/openbmc/phosphor-logging/extensions/openpower-pels/sbe_ffdc_handler.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/sbe_ffdc_handler.hpp
/openbmc/phosphor-logging/extensions/openpower-pels/service_indicators.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/tools/peltool.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/user_data.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/user_header.cpp
/openbmc/phosphor-logging/lib/elog.cpp
/openbmc/phosphor-logging/log_manager.cpp
/openbmc/phosphor-logging/log_manager.hpp
/openbmc/phosphor-logging/meson.build
openpower-pels/registry_test.cpp
4efed0ef26-Feb-2024 Matt Spinler <spinler@us.ibm.com>

PEL: Don't allow duplicate callouts

When adding callouts, check if the callout being added already exists.
If it does, don't add it and rather just update the priority of the
existing one to be the

PEL: Don't allow duplicate callouts

When adding callouts, check if the callout being added already exists.
If it does, don't add it and rather just update the priority of the
existing one to be the highest of the two.

Callouts are considered to be equal if their location code matches, or
if they have the same maintenance procedure, or if they have the same
symbolic FRU.

The change entails adding an operator== on the Callout object, as well
as an operator> so that the callout with the highest priority can be
determined. Also use this new operator> in the sort of the callout list
that happens after a callout is added or changed.

Signed-off-by: Matt Spinler <spinler@us.ibm.com>
Change-Id: I5ee148cc12e92f67fb3da233c3615e9665e95355

show more ...

2edce4e217-Jan-2024 Matt Spinler <spinler@us.ibm.com>

PEL: Use raw procedure names in PEL msg reg

Start using the raw maintenance procedure names in the PEL message
registry, such as BMC0001, instead of the enum values, such as
'bmc_firmware'. This wa

PEL: Use raw procedure names in PEL msg reg

Start using the raw maintenance procedure names in the PEL message
registry, such as BMC0001, instead of the enum values, such as
'bmc_firmware'. This way, the script that generates documentation can
list the procedure in the section for that PEL. This was requested by
the support team.

Note that there is still one user of the enums - the checkstop analysis
code uses them when it creates callouts by passing in them via JSON user
data files.

There are pointers added to the README and schema to find the available
procedures and their descriptions.

Tested:
- The unit tests still work which verify the callout contents when PEL
callouts are created via the message registry.
- Also manually verified PEL procedure callouts look correct when
created from the message registry.

Signed-off-by: Matt Spinler <spinler@us.ibm.com>
Change-Id: I3e8416956120d4dae1ff40592fd0df4f0285d072

show more ...

972dd4f611-Dec-2023 Lei YU <yulei.sh@bytedance.com>

test: Set some cases non-parallel

Some UT cases read and write to `ERRLOG_PERSIST_PATH` dir so they will
try to remove/create the dir and read/write files in the dir during the
case execution.
It ca

test: Set some cases non-parallel

Some UT cases read and write to `ERRLOG_PERSIST_PATH` dir so they will
try to remove/create the dir and read/write files in the dir during the
case execution.
It causes races and the unit tests fail intermittently.

Fix the issue by setting the `is_parallel` to false for the specific
cases that use the `ERRLOG_PERSIST_PATH` dir, so that these cases are
run in sequence.

Tested: Verify the UT always passes for more than 300 loops.

Signed-off-by: Lei YU <yulei.sh@bytedance.com>
Change-Id: I33f10ded3ca0dc11ae52f7f43849d9483ee9d202

show more ...

5fb575ae20-Oct-2023 Patrick Williams <patrick@stwcx.xyz>

clang-format: copy latest and re-format

clang-format-17 has some backwards incompatible changes that require
additional settings for best compatibility and re-running the formatter.
Copy the latest

clang-format: copy latest and re-format

clang-format-17 has some backwards incompatible changes that require
additional settings for best compatibility and re-running the formatter.
Copy the latest .clang-format from the docs repository and reformat the
repository.

Change-Id: Ib459ac591ed3031de84d0239948d8daa583ef8a5
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>

show more ...


/openbmc/phosphor-logging/.clang-format
/openbmc/phosphor-logging/extensions/openpower-pels/bcd_time.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/data_interface.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/dbus_types.hpp
/openbmc/phosphor-logging/extensions/openpower-pels/entry_points.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/extended_user_data.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/extended_user_header.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/failing_mtms.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/fapi_data_process.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/fru_identity.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/generic.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/host_notifier.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/journal.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/manager.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/pel.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/phal_service_actions.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/private_header.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/registry/message_registry.json
/openbmc/phosphor-logging/extensions/openpower-pels/repository.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/repository.hpp
/openbmc/phosphor-logging/extensions/openpower-pels/sbe_ffdc_handler.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/sbe_ffdc_handler.hpp
/openbmc/phosphor-logging/extensions/openpower-pels/service_indicators.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/src.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/tools/peltool.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/user_data.cpp
/openbmc/phosphor-logging/extensions/openpower-pels/user_header.cpp
/openbmc/phosphor-logging/gen/meson.build
/openbmc/phosphor-logging/gen/xyz/openbmc_project/Logging/Internal/Manager/meson.build
/openbmc/phosphor-logging/lib/lg2_logger.cpp
/openbmc/phosphor-logging/lib/meson.build
/openbmc/phosphor-logging/meson.options
openpower-pels/host_notifier_test.cpp
openpower-pels/mocks.hpp
/openbmc/phosphor-logging/tools/phosphor-logging/templates/elog-gen-template.mako.hpp
22e8695f09-Jun-2023 Ivan Mikhaylov <fr0st61te@gmail.com>

phosphor-logging: add rsyslog configuration for TCP, UDP

Add possibility to set TCP or UDP as transport protocol for rsyslog
configuration.

Depends on change of dbus interfaces in:
https://gerrit.o

phosphor-logging: add rsyslog configuration for TCP, UDP

Add possibility to set TCP or UDP as transport protocol for rsyslog
configuration.

Depends on change of dbus interfaces in:
https://gerrit.openbmc.org/c/openbmc/phosphor-dbus-interfaces/+/64224

Tested: "@" set for UDP and "@@" for TCP in configuration file.

Change-Id: Ie849fb64b5e6cc8d87d7a984cd4d326e39aeb4ea
Signed-off-by: Ivan Mikhaylov <fr0st61te@gmail.com>

show more ...

527ff34629-Jun-2023 Matt Spinler <spinler@us.ibm.com>

PEL: Handle failing to start a PLDM cmd better

A recent PLDM bug caused the registerReceiveCallback() function, which
is used to setup listening for the PLDM response from the host when
telling the

PEL: Handle failing to start a PLDM cmd better

A recent PLDM bug caused the registerReceiveCallback() function, which
is used to setup listening for the PLDM response from the host when
telling them about a new PEL, to throw an exception.

When this happened, the code got stuck in the 'in progress' state, so it
would never try again when the next PEL came in.

Fix that by having startCommand() throw an exception instead of calling
the failure response function callback. With this change, the code will
continue on to call the cleanupCmd() function so everything is ready
when the next PEL comes in.

Tested:
With the bad PLDM code, after the first PEL ran out of retry attempts,
created another PEL and saw the code attempt again to call PLDM. Also,
wrote a new unit test case for it.

Signed-off-by: Matt Spinler <spinler@us.ibm.com>
Change-Id: I38034440435d6a86e8dd880eef09499f19dd6e9c

show more ...

da5b76b201-Jun-2023 Matt Spinler <spinler@us.ibm.com>

PEL: Support for CheckstopFlag msg reg field

Similiar to the DeconfigFlag field that was recently added, this one
indicates the PEL is for a hardware checkstop and results in a bit in
SRC hex word 5

PEL: Support for CheckstopFlag msg reg field

Similiar to the DeconfigFlag field that was recently added, this one
indicates the PEL is for a hardware checkstop and results in a bit in
SRC hex word 5 being set.

Signed-off-by: Matt Spinler <spinler@us.ibm.com>
Change-Id: Ib05de7471ad3e32f48e7f20a5c611abc119fe82a

show more ...

81bc561101-Jun-2023 Matt Spinler <spinler@us.ibm.com>

PEL: Fixes for gcc13

* Add the cstdint header file as now required to get the uint* types.
* Fix a move assignment test
* Refactor some nlohmann::json code to avoid:

```
/usr/include/c++/13/valarra

PEL: Fixes for gcc13

* Add the cstdint header file as now required to get the uint* types.
* Fix a move assignment test
* Refactor some nlohmann::json code to avoid:

```
/usr/include/c++/13/valarray:1201:1: note: template argument deduction/substitution failed:
../extensions/openpower-pels/registry.cpp:665:43: note: ‘const nlohmann::json_abi_v3_11_2::basic_json<>::value_type’ {aka ‘const nlohmann::json_abi_v3_11_2::basic_json<>’} is not derived from ‘const std::valarray<_Tp>’
665 | (name == j["SRC"]["ReasonCode"] && type == LookupType::reasonCode));
```

Signed-off-by: Matt Spinler <spinler@us.ibm.com>
Change-Id: Ia3e733602134a60008d0d47934f95a217d2a0eb1

show more ...

12345678910>>...12