| aa0aeda7 | 18-Sep-2025 |
Chau Ly <chaul@amperecomputing.com> |
dsp: base: decode_pldm_base_negotiate_transfer_params_resp() is stable
cb987c5c8863 ("dsp: base: Added decode_pldm_base_negotiate_transfer_params_req()") accidentally set `decode_pldm_base_negotiate
dsp: base: decode_pldm_base_negotiate_transfer_params_resp() is stable
cb987c5c8863 ("dsp: base: Added decode_pldm_base_negotiate_transfer_params_req()") accidentally set `decode_pldm_base_negotiate_transfer_params_resp()` back to `LIBPLDM_ABI_TESTING` when it was stabilized by 26c8eb2a2f22 ("Stabilize PLDM File Transfer related APIs").
Further, the existing integration of abi-compliance-checker was unable to find the fault as the generated dump contained testing symbols, and so decode_pldm_base_negotiate_transfer_params_resp() wasn't found to be absent. We rework scripts/pre-submit such that this kind of problem results in a CI failure.
Change-Id: I27d48e275646bbd75f19a3e1fe309a584d893cf2 Fixes: cb987c5c8863 ("dsp: base: Added decode_pldm_base_negotiate_transfer_params_req()") Signed-off-by: Chau Ly <chaul@amperecomputing.com> Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
|
| a4cfba49 | 15-Sep-2025 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
scripts: pre-submit: Limit file descriptors for valgrind
Valgrind complains and exits with an error if the limit is "too large":
--426:0:libcfile Valgrind: FATAL: Private file creation failed.
scripts: pre-submit: Limit file descriptors for valgrind
Valgrind complains and exits with an error if the limit is "too large":
--426:0:libcfile Valgrind: FATAL: Private file creation failed. The current file descriptor limit is 1073741804. If you are running in Docker please consider lowering this limit with the shell built-in limit command. --426:0:libcfile Exiting now.
Change-Id: I8b58f0c17ae3e22a11f1678e171c3ee54dc432c3 Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
|
| cd02e9d0 | 04-Sep-2025 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
scripts: pre-submit: ABI dump update requires a changelog entry
Change-Id: I5521a8356e0cc795bd0551aaddad354598d75c1e Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au> |
| 0f520d1b | 08-May-2025 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
meson: Define LIBPLDM_ABI_DEPRECATED_UNSAFE as empty as required
Not doing so for -Dabi=stable,testing causes unnecessary compilation errors. The library now builds with:
meson setup -Dabi=stab
meson: Define LIBPLDM_ABI_DEPRECATED_UNSAFE as empty as required
Not doing so for -Dabi=stable,testing causes unnecessary compilation errors. The library now builds with:
meson setup -Dabi=stable,testing -Dtests=false ...
Suggested-by: Sam Abu-Nassar <sam.abunassar@xconn-tech.com> Fixes: 36324f6bea8c ("Apply GCC's tainted_args attribute to library entrypoints") Change-Id: Ie825e036171edeec321c4df244c075da288b60e4 Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
|
| eba16206 | 12-Mar-2025 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
scripts: pre-submit: Force GCC for -fanalyzer
openbmc-build-scripts' unit-test.py currently[1] modifies its own environment to exploit clang. It seems like a pretty dicey approach (modify the enviro
scripts: pre-submit: Force GCC for -fanalyzer
openbmc-build-scripts' unit-test.py currently[1] modifies its own environment to exploit clang. It seems like a pretty dicey approach (modify the environment passed to the subprocess instead?), for now work around it by forcing use of GCC for the pre-submit script.
[1]: https://github.com/openbmc/openbmc-build-scripts/blob/966d67da385aef095d19b20fd778fcb88fa7be7b/scripts/unit-test.py#L1064-L1065
Change-Id: Ia6259eb949c2bab7fd30b49fc5c2d69af4f6470d Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
|
| fa2e2659 | 09-Jan-2025 |
Matt Johnston <matt@codeconstruct.com.au> |
scripts: pre-submit: Fail on meson format diff
Explicitly run git diff --exit-code.
When the --quiet argument was removed, the implicit --exit-code was lost.
gitlint-ignore: UC1 Fixes: 566f2fc1a61
scripts: pre-submit: Fail on meson format diff
Explicitly run git diff --exit-code.
When the --quiet argument was removed, the implicit --exit-code was lost.
gitlint-ignore: UC1 Fixes: 566f2fc1a617 ("scripts: pre-submit: Print meson format diff on failure") Change-Id: Ia890107b0a8accdf6e1602105487426d6e1ec1b4 Signed-off-by: Matt Johnston <matt@codeconstruct.com.au>
show more ...
|
| 65c64099 | 28-Nov-2024 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
meson: Convert options from feature to boolean
Features are things we can automatically enable or disable based on the presence or absence of supporting dependencies. Neither ABI compliance testing
meson: Convert options from feature to boolean
Features are things we can automatically enable or disable based on the presence or absence of supporting dependencies. Neither ABI compliance testing (despite the fact that we can detect the tool) nor tests fit this category: They are developer tools and their use should be judged ahead of the invocation of meson.
Change-Id: I9725cc0444d92c8443cfb28ecd878f77792f38ce Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
|
| 566f2fc1 | 21-Nov-2024 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
scripts: pre-submit: Print meson format diff on failure
Like in the case of clang-format failures in OpenBMC CI, show what was changed.
Change-Id: I5180ba948f7c9feffd6c89e8420af90dc269fcad Signed-o
scripts: pre-submit: Print meson format diff on failure
Like in the case of clang-format failures in OpenBMC CI, show what was changed.
Change-Id: I5180ba948f7c9feffd6c89e8420af90dc269fcad Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
|
| 07159f76 | 21-Nov-2024 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
scripts: pre-submit: Be informative on meson formatting failures
Previously the script just silently exited with a failure status. That's unhelpful to people reading the CI output, so write somethin
scripts: pre-submit: Be informative on meson formatting failures
Previously the script just silently exited with a failure status. That's unhelpful to people reading the CI output, so write something informative.
Change-Id: Ia1b618e004c457d97d1c0f690f74567991cac830 Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
|
| 5a034730 | 21-Nov-2024 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
scripts: pre-submit: Ensure changelog captures API updates
I think most people have fallen short of this ideal at some point, so add an automated check.
Change-Id: Ic7d2da4d97d49d7e5f43bc341b7e1338
scripts: pre-submit: Ensure changelog captures API updates
I think most people have fallen short of this ideal at some point, so add an automated check.
Change-Id: Ic7d2da4d97d49d7e5f43bc341b7e13381b8176e5 Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
|
| dbbe860a | 23-Sep-2024 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
scripts: pre-submit: Run GCC's static analyzer
More information can be found in the gcc manual[1] or via the Red Hat blog posts[2][3][4].
[1]: https://gcc.gnu.org/onlinedocs/gcc/Static-Analyzer-Opt
scripts: pre-submit: Run GCC's static analyzer
More information can be found in the gcc manual[1] or via the Red Hat blog posts[2][3][4].
[1]: https://gcc.gnu.org/onlinedocs/gcc/Static-Analyzer-Options.html [2]: https://developers.redhat.com/articles/2022/04/12/state-static-analysis-gcc-12-compiler [3]: https://developers.redhat.com/articles/2023/05/31/improvements-static-analysis-gcc-13-compiler [4]: https://developers.redhat.com/articles/2024/04/03/improvements-static-analysis-gcc-14-compiler
Change-Id: Iab174b209dd12a6b27ba43d4097850d0ad87b29a Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
|
| 435c9321 | 05-Sep-2024 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
scripts: Symlink pre-submit to run-ci
OpenBMC's CI scripts will run any script named run-ci in the repository[1]. Exploit this to run the pre-submit tests in CI so issues such as failing to add test
scripts: Symlink pre-submit to run-ci
OpenBMC's CI scripts will run any script named run-ci in the repository[1]. Exploit this to run the pre-submit tests in CI so issues such as failing to add test guards are caught.
[1]: https://gerrit.openbmc.org/plugins/gitiles/openbmc/openbmc-build-scripts/+/decca83981004f97e0ee8c1ffc0c3589bf9d0a09/scripts/unit-test.py#1429
Change-Id: I5af7df0adeb38d69e4f0bf142f4a091a6ac60de7 Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
|
| 28b649bc | 07-Sep-2024 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
scripts: apply-renames: Update default clang version to 18
clang 18.1.8 is currently installed in the OpenBMC CI container. Changing the default saves having to explicitly invoke `scripts/ apply-ren
scripts: apply-renames: Update default clang version to 18
clang 18.1.8 is currently installed in the OpenBMC CI container. Changing the default saves having to explicitly invoke `scripts/ apply-renames` with `CLANG_VERSION=18`.
Change-Id: I2f0ff5baf485a34089dc663cb5870efa36f3c3c6 Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
|
| 0129c53d | 07-Sep-2024 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
scripts: pre-submit: Run release buildtype tests under valgrind
This is the most important case due to release builds disabling assertions and potentially changing optimization levels and so-forth,
scripts: pre-submit: Run release buildtype tests under valgrind
This is the most important case due to release builds disabling assertions and potentially changing optimization levels and so-forth, where undefined behavior gets its opportunity to shine.
Change-Id: If195a50c7156fcda164fee14ed6071ecd79c019f Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
|
| e984a461 | 07-Sep-2024 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
meson: Format build files with `meson format`
Additionally, add the formatting command to `scripts/pre-submit` so it's run by OpenBMC's CI (via `scripts/run-ci`).
Change-Id: Ifb8fc06106b8cfa9155e98
meson: Format build files with `meson format`
Additionally, add the formatting command to `scripts/pre-submit` so it's run by OpenBMC's CI (via `scripts/run-ci`).
Change-Id: Ifb8fc06106b8cfa9155e986528b769a5ca450b4c Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
|
| cd975641 | 22-Jul-2024 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
scripts: Add abi-dump-updater
The intent is to run this from inside an instance of the OpenBMC CI docker container.
Change-Id: I02dd4e8b100d02f44ce540137decfb66f5481488 Signed-off-by: Andrew Jeffer
scripts: Add abi-dump-updater
The intent is to run this from inside an instance of the OpenBMC CI docker container.
Change-Id: I02dd4e8b100d02f44ce540137decfb66f5481488 Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
|
| 6bfc65c1 | 21-Jun-2024 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
scripts: Add apply-renames based on clang-rename
It turns out coccinelle is not so great at parsing C++. At the moment the transformations we're interested in are renames, so let's at least leverage
scripts: Add apply-renames based on clang-rename
It turns out coccinelle is not so great at parsing C++. At the moment the transformations we're interested in are renames, so let's at least leverage something that can parse C++ for them.
scripts/apply-renames tries to automate the invocation of clang-rename in a way that avoids most of the foot-guns.
Change-Id: I2f69a8301010f0f00f5fa0337b7921498ae125f9 Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
|
| 1b1b728b | 03-Jun-2024 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
scripts: Add pre-submit
pre-submit runs through the pre-submission commands outlined in docs/ checklists/changes.md. This allows easy checking via:
``` $ git rebase -x ./scripts/pre-submit origin/m
scripts: Add pre-submit
pre-submit runs through the pre-submission commands outlined in docs/ checklists/changes.md. This allows easy checking via:
``` $ git rebase -x ./scripts/pre-submit origin/main ```
Change-Id: Ib8b0f7725a31081cd70253032e107ed83aa22626 Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
|
| 762b34a9 | 23-May-2024 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
scripts: Add abi-dump-formatter
abi-dumper uses perl's Data::Dumper without configuring the formatter, which defaults to key-aligned indentation. That causes massive diff churn, so provide a wrapper
scripts: Add abi-dump-formatter
abi-dumper uses perl's Data::Dumper without configuring the formatter, which defaults to key-aligned indentation. That causes massive diff churn, so provide a wrapper script to fix the dump formatting.
Change-Id: Id6834d9f2a8be7222036579c86448930633a796c Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
|