-
Couldn't load subscription status.
- Fork 8.1k
testsuite: optional limiting of coverage dumps #94029
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looks reasonable.
btw, been looking into using semihosting instead of console dumps, see #94079
4709443 to
30341e9
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR adds configuration options to limit coverage dump generation by allowing users to filter which files are included in .gcda files during coverage testing. This addresses issues where coverage dumps become excessively large due to unwanted library data (like MbedTLS) causing disk space issues and test failures.
- Added a new configuration option
COVERAGE_DUMP_PATH_EXCLUSIVEfor path-based filtering - Restructured Kconfig to group coverage-related options under a conditional block
- Removed redundant
depends on COVERAGE_GCOVclauses
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
bb1b246 to
b631ef7
Compare
|
Updated the implementation to instead specify a single exclude pattern. It ended up being much harder than I originally realised to construct a pattern that captured only the files I wanted. |
|
need rebase |
Add an option that excludes generation of a given path of `.gcda` files when running coverage testing. This can be useful when running testing coverage on downstream repos, which would otherwise result in large `.gcda` files for paths we don't care about filling up the disk. One example of using this is to exclude coverage outputs from mbedtls files with the following: `CONFIG_COVERAGE_DUMP_PATH_EXCLUDE="*modules/crypto/mbedtls*"` Signed-off-by: Jordan Yates <[email protected]>
b631ef7 to
609de69
Compare
|
|
This change appears to be causing issues in our code coverage builds since I think we need to add some |
|
Please take a look at #97148 as possible solution |



Add an option that excludes generation of a given path of
.gcdafiles when running coverage testing. This can be useful when running testing coverage on downstream repos, which would otherwise result in large.gcdafiles for paths we don't care about filling up the disk.The issue triggering this PR was huge portions of coverage dumps for my downstream repo being just MbedTLS data, which was ignored at the next processing step due to
--coverage-basedir. The dumped data ended up being so large that something between QEMU andhandler.logwas having trouble actually saving it all, leading to test failures due to "GCOV_COVERAGE_DUMP_END" not being found in the file.