Skip to content

Coverage reporting hangs for C++ tests on X86 qemu #20729

@vanwinkeljan

Description

@vanwinkeljan

Describe the bug

When C++ related tests are executed with coverage reporting on X86 Qemu, Qemu will end up in endless loop when dumping coverage results to UART.

To Reproduce

Steps to reproduce the behavior:

  1. Remove platform_exclude: qemu_x86_coverage from tests/application_development/libcxx/testcase.yaml
  2. sanitycheck -N -p qemu_x86_coverage -s tests/application_development/libcxx/misc.app_dev.libcxx

Expected behavior

C++ tests can run with coverage enabled on Qemu X86 without hanging.

Impact

No coverage reports can be generated for C++ test cases

Environment (please complete the following information):

  • OS: Linux - Ubuntu 18.04.3
  • Toolchain: Zephyr SDK 10.03
  • Commit SHA: 86461ac

Additional context

Quick look with gdb reveals that the while loop in gcov_coverage_dump is an endless loop

void gcov_coverage_dump(void)

Metadata

Metadata

Assignees

Labels

Stalearea: Test FrameworkIssues related not to a particular test, but to the framework insteadbugThe issue is a bug, or the PR is fixing a bugpriority: lowLow impact/importance bug

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions