From c9955cf861c6ab7db12d4aa9753fadf4bf9069f0 Mon Sep 17 00:00:00 2001 From: Daniel Leung Date: Tue, 26 Jul 2022 13:17:55 -0700 Subject: [PATCH] testsuite: coverage: pin gcov sections for demand paging This adds the bits to pin the GCOV sections to the pinned sections so they can be accessed during boot when demand paging is enabled. Or else accessing them would result in page faults. Signed-off-by: Daniel Leung --- subsys/testsuite/coverage/CMakeLists.txt | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/subsys/testsuite/coverage/CMakeLists.txt b/subsys/testsuite/coverage/CMakeLists.txt index 7617d9ac20c..60910d9f00e 100644 --- a/subsys/testsuite/coverage/CMakeLists.txt +++ b/subsys/testsuite/coverage/CMakeLists.txt @@ -2,5 +2,10 @@ zephyr_sources_ifdef(CONFIG_COVERAGE_GCOV coverage.c) +if(CONFIG_DEMAND_PAGING AND CONFIG_COVERAGE) +zephyr_linker_sources_ifdef(CONFIG_COVERAGE_GCOV PINNED_RAM_SECTIONS coverage_ram.ld) +zephyr_linker_sources_ifdef(CONFIG_COVERAGE_GCOV PINNED_RODATA coverage_rodata.ld) +else() zephyr_linker_sources_ifdef(CONFIG_COVERAGE_GCOV RAM_SECTIONS coverage_ram.ld) zephyr_linker_sources_ifdef(CONFIG_COVERAGE_GCOV RODATA coverage_rodata.ld) +endif()