diff options
author | Andrea Bastoni <bastoni@cs.unc.edu> | 2010-04-18 13:31:59 -0400 |
---|---|---|
committer | Andrea Bastoni <bastoni@cs.unc.edu> | 2010-09-20 22:50:30 -0400 |
commit | b51c94dafb0c0ef55b999bc892a06a296c4372fc (patch) | |
tree | 206496c93aaa0fed62e56506b690988d9701124f /include | |
parent | 84403b9d19b8ac349a23e25fb6587ee0d2bd9b1c (diff) |
[EDF-fm] Add required extensions to rt_task and rt_job
- rt_task: for each task, add fraction (num/denom) of execution cost
that should be handled by each processor (for EDF-fm max 2
processors).
- rt_job: add number of jobs already managed by the CPUs (for migrating
tasks this is needed to determine on which CPU the next job should
execute).
Diffstat (limited to 'include')
-rw-r--r-- | include/litmus/rt_param.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/include/litmus/rt_param.h b/include/litmus/rt_param.h index 9d17fd3863d9..1c63b006f50e 100644 --- a/include/litmus/rt_param.h +++ b/include/litmus/rt_param.h | |||
@@ -50,6 +50,14 @@ struct rt_task { | |||
50 | * so that one can use: cpus[nr_cpus] | 50 | * so that one can use: cpus[nr_cpus] |
51 | */ | 51 | */ |
52 | unsigned int nr_cpus; | 52 | unsigned int nr_cpus; |
53 | /* EDF-fm migrating tasks, fraction of this task exec_cost | ||
54 | * that the processors should handle. | ||
55 | * We keep the fraction divided in num/denom : a matrix of | ||
56 | * NR_CPUS_SEMI rows * 2 columns; first column is the numerator | ||
57 | * of the fraction, second column is the denominator | ||
58 | * (in EDF-fm this is a 2*2 matrix) | ||
59 | */ | ||
60 | lt_t fraction[2][NR_CPUS_SEMI]; | ||
53 | }; | 61 | }; |
54 | 62 | ||
55 | /* The definition of the data that is shared between the kernel and real-time | 63 | /* The definition of the data that is shared between the kernel and real-time |
@@ -100,6 +108,11 @@ struct rt_job { | |||
100 | * Increase this sequence number when a job is released. | 108 | * Increase this sequence number when a job is released. |
101 | */ | 109 | */ |
102 | unsigned int job_no; | 110 | unsigned int job_no; |
111 | |||
112 | /* EDF-fm: number of jobs handled by this cpu | ||
113 | * (to determine next cpu for a migrating task) | ||
114 | */ | ||
115 | unsigned int cpu_job_no[NR_CPUS_SEMI]; | ||
103 | }; | 116 | }; |
104 | 117 | ||
105 | struct pfair_param; | 118 | struct pfair_param; |