#
55968b12 |
| 06-May-2025 |
Ed Tanous <ed@tanous.net> |
Nvidia add cmet-info
Add decoding of more specific Error codes.
Unit tests pass.
Change-Id: Ia0ca0dfdf550381da435b0fb9041b664784f7476 Signed-off-by: Ed Tanous <etanous@nvidia.com>
|
#
1bc852ab |
| 09-Apr-2025 |
Ed Tanous <etanous@nvidia.com> |
Allow decoding nvidia CPERs
There are cases where satmc might not be able to buffer the full CPER message. In those cases, it is advantageous if the decoder continues as far as it can.
This commit
Allow decoding nvidia CPERs
There are cases where satmc might not be able to buffer the full CPER message. In those cases, it is advantageous if the decoder continues as far as it can.
This commit moves a range check in nvidia cpers such that if there is a buffer error, the CPER registers are still iterated until we hit the buffer error, then filled in with null after the buffer error. This makes it more clear what the issue is, and decodes more of the output.
Change-Id: Idf202860d4994e719c1b73b811e767ad94ee0cae Signed-off-by: Ed Tanous <etanous@nvidia.com>
show more ...
|
#
50b966f7 |
| 11-Mar-2025 |
Ed Tanous <ed@tanous.net> |
Implement common logging function
When used as a library, it's desirable to be able to suppress logging, or pipe logging through a different path. This commit changes behavior such that logging is
Implement common logging function
When used as a library, it's desirable to be able to suppress logging, or pipe logging through a different path. This commit changes behavior such that logging is disabled by default, and introduces 2 new methods, cper_set_log_stdio and cper_set_log_custom.
These allow library integrators to specify their logging mode. In practice, this also allows fuzzing to run faster by not printing errors to the log.
Change-Id: I941476627bc9b8261ba5f6c0b2b2338fdf931dd2 Signed-off-by: Ed Tanous <etanous@nvidia.com>
show more ...
|
#
5e2164a0 |
| 09-Mar-2025 |
Ed Tanous <ed@tanous.net> |
More range checks
This is a second patch adding more range checks where appropriate.
Change-Id: Ie169efe8924153c9cc11e4472a1b07b8d04efb3b Signed-off-by: Ed Tanous <ed@tanous.net>
|
#
12dbd4fd |
| 08-Mar-2025 |
Ed Tanous <etanous@nvidia.com> |
Fix range check bugs
This is a patch hunting for fuzzing failures and adding appropriate range checks.
Change-Id: Ieae02b7e461b9a6c5e25de6c663a768f7a0d5e10 Signed-off-by: Ed Tanous <etanous@nvidia
Fix range check bugs
This is a patch hunting for fuzzing failures and adding appropriate range checks.
Change-Id: Ieae02b7e461b9a6c5e25de6c663a768f7a0d5e10 Signed-off-by: Ed Tanous <etanous@nvidia.com>
show more ...
|
#
5aedbb26 |
| 05-Mar-2025 |
Ed Tanous <etanous@nvidia.com> |
Make all section reads const
The way sections are read currently is unsafe in two ways, first, buffers are completely unchecked for length, and section, buffers are passed in as non-const void*.
St
Make all section reads const
The way sections are read currently is unsafe in two ways, first, buffers are completely unchecked for length, and section, buffers are passed in as non-const void*.
Start fixing things by making the sections const.
Change-Id: I02e9ded525e9710b56589a47a9cc4f3583c216df Signed-off-by: Ed Tanous <etanous@nvidia.com>
show more ...
|
#
e42fb487 |
| 15-Oct-2024 |
Thu Nguyen <thu@os.amperecomputing.com> |
Change include style to use system includes
The libcper header files in `libcper` are installed to `usr/include/libcper`. Use that system includes in `libcper` source instead of using the project in
Change include style to use system includes
The libcper header files in `libcper` are installed to `usr/include/libcper`. Use that system includes in `libcper` source instead of using the project includes.
Change-Id: I596edc2c754dae4829844f535a1e34caa246fb43 Signed-off-by: Thu Nguyen <thu@os.amperecomputing.com>
show more ...
|
#
a3b7f8a2 |
| 04-Nov-2024 |
Ed Tanous <etanous@nvidia.com> |
Unflatten edk includes
Installing the edk headers into a folder requires us to do odd things with imports, and either include headers with "..", or otherwise get the include directories lined up.
M
Unflatten edk includes
Installing the edk headers into a folder requires us to do odd things with imports, and either include headers with "..", or otherwise get the include directories lined up.
Move the contents of edk/*.c/h up a level, and just simplify the include structure. This is done to fix the immediate change of the prior patch and make this build again. Happy to discuss other options.
Change-Id: I328f20bca6d23100993493445bee0e5e11d2866a Signed-off-by: Ed Tanous <etanous@nvidia.com>
show more ...
|
#
2d17acec |
| 27-Aug-2024 |
Ed Tanous <etanous@nvidia.com> |
Improve Nvidia CPER decode
Add decoding of registers to the structure. Note, this requires COUNTED_BY support which is borrowed from LIBPLDM.
Also add unit-tests for NVIDIA section, and update sch
Improve Nvidia CPER decode
Add decoding of registers to the structure. Note, this requires COUNTED_BY support which is borrowed from LIBPLDM.
Also add unit-tests for NVIDIA section, and update schema to match existing register decoding.
Change-Id: If1c9cae97de35ba6a5dad1f462d3989ec6ac6a90 Signed-off-by: Karthik Rajagopalan <krajagopalan@nvidia.com> Signed-off-by: Ed Tanous <etanous@nvidia.com>
show more ...
|
#
379e492a |
| 28-Aug-2024 |
Patrick Williams <patrick@stwcx.xyz> |
Adjust strncpy sizes
When building under bitbake with the latest openbmc, we get compile warnings such as these:
``` | ../git/sections/cper-section-nvidia.c: In function 'ir_section_nvidia_to_cper'
Adjust strncpy sizes
When building under bitbake with the latest openbmc, we get compile warnings such as these:
``` | ../git/sections/cper-section-nvidia.c: In function 'ir_section_nvidia_to_cper': | ../git/sections/cper-section-nvidia.c:67:9: error: '__builtin_strncpy' specified bound 16 equals destination size [-Werror=stringop-truncation] | 67 | strncpy(section_cper->Signature, ```
Using `strncpy` on its own is unsafe because a string too long will end up in the destination buffer without NUL termination. Adjust the strncpy to be one shorter than the buffer and force the trailing byte to be a NUL.
Repeat this pattern for all `strncpy` calls.
Change-Id: I45c630733f0138d2b089a60f698d75e1c09de9e2 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
#
683e0550 |
| 07-Mar-2024 |
Karthik Rajagopalan <krajagopalan@nvidia.com> |
Add support for NVIDIA CPERs
Support Nvidia CPER entries.
Change-Id: Iea9bde181ead55ad99cdb2a341501bf48e1d82a8 Signed-off-by: Ed Tanous <etanous@nvidia.com>
|