From 034d6209b6d27a8cf13784a62fd36814e98cadf6 Mon Sep 17 00:00:00 2001 From: leochanj105 Date: Tue, 19 Oct 2021 20:30:33 -0400 Subject: Modifying extra.h to support phasing --- extra.h | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'extra.h') diff --git a/extra.h b/extra.h index a16c671..1297038 100644 --- a/extra.h +++ b/extra.h @@ -78,13 +78,14 @@ char _rt_shm_name[_ID_SZ] = "/_libextra_barrier-"; #if LITMUS lt_t _rt_period; +lt_t _rt_phase; int _rt_crit; struct control_page *_rt_cp; #endif static void _rt_load_params_itrl(int argc, char **argv) { #ifdef PAIRED - if (argc != (8 + LITMUS*2) && argc != (9 + LITMUS*2)) { + if (argc != (9 + LITMUS*2) && argc != (10 + LITMUS*2)) { fprintf(stderr, "Usage: %s \n", argv[0]); #else if (argc != (6 + LITMUS*2)) { @@ -105,6 +106,7 @@ static void _rt_load_params_itrl(int argc, char **argv) { #if LITMUS fprintf(stderr, " in ms\n"); fprintf(stderr, " 0 for Level-A, 1 for Level-B, 2 for Level-C\n"); + fprintf(stderr, " in ms\n"); #endif /* LITMUS */ exit(1); } @@ -206,6 +208,7 @@ static void _rt_load_params_itrl(int argc, char **argv) { #if LITMUS _rt_period = ms2ns(strtoul(argv[end], NULL, 10)); _rt_crit = atoi(argv[end+1]); + _rt_phase = ms2ns(strtoul(argv[end+2], NULL, 10)); unsigned int wait = 1; if (be_migrate_to_domain(_rt_core) < 0) { perror("Unable to migrate to specified CPU"); @@ -217,7 +220,7 @@ static void _rt_load_params_itrl(int argc, char **argv) { rt_param.exec_cost = _rt_period; rt_param.period = _rt_period; rt_param.relative_deadline = 0; - rt_param.phase = 0; + rt_param.phase = _rt_phase; rt_param.priority = LITMUS_LOWEST_PRIORITY; rt_param.cls = _rt_crit; rt_param.budget_policy = NO_ENFORCEMENT; -- cgit v1.2.2