sel4bench_counter_t not updated
chrisguikema opened this issue · 2 comments
Hello,
As of seL4_libs
commit bdcec827602c8efb041b45f0892e0e5d958526ed
, sel4bench_counter_t
was replaced with ccnt_t
. This has not been updated in camkes/timing.h
, so the generated code fails when the enable collection of timing data for connectors
menuconfig option is selected.
Here is a patch that fixed the issue for me.
--- a/libsel4camkes/include/camkes/timing.h
+++ b/libsel4camkes/include/camkes/timing.h
@@ -29,7 +29,7 @@
#define TIMING_DEFS(pref, pts...) \
static int libsel4camkes_timing_buffer_iteration = -1; \
- static sel4bench_counter_t libsel4camkes_timing_buffer[TIMING_ENTRIES]; \
+ static ccnt_t libsel4camkes_timing_buffer[TIMING_ENTRIES]; \
static char *libsel4camkes_timing_points[] = { \
pts \
}; \
@@ -49,7 +49,7 @@
} \
void pref##_timing_reset(void) { \
libsel4camkes_timing_buffer_iteration = -1; \
- memset(libsel4camkes_timing_buffer, 0, sizeof(sel4bench_counter_t) * TIMING_ENTRIES); \
+ memset(libsel4camkes_timing_buffer, 0, sizeof(ccnt_t) * TIMING_ENTRIES); \
}
Thanks for letting us know about this. I applied your patch internally and it should be pushed out once it passes through our regression.
We aren't currently using that feature for anything internally, which was why we hadn't noticed it broke. I'm curious what you are using it for and whether we need to set up a regression test for this feature to prevent it breaking in the future.
One of the engineers at DornerWorks developed performance monitoring tools building off the existing tools provided by the kernel. Part of that was tracking CAmkES thread utilization, and that menuconfig option was one that his document said to select. He had worked with 2.3 & 5.1, so it wasn't an issue for him.