diff options
author | Bjoern B. Brandenburg <bbb@cs.unc.edu> | 2010-02-03 19:40:01 -0500 |
---|---|---|
committer | Andrea Bastoni <bastoni@cs.unc.edu> | 2010-05-29 17:26:09 -0400 |
commit | fb95c290fe461de794c984bc4130741f04f9142d (patch) | |
tree | e548d3eca0e4148ee764343db6a1d9e5f9e98d05 /litmus/Kconfig | |
parent | b973c95c86e6710c913c01a67013605f68a3c2c3 (diff) |
Re-implement non-preemptive section support.
Re-introduce NP sections in the configuration and in litmus.h. Remove the old
np_flag from rt_param.
If CONFIG_NP_SECTION is disabled, then all non-preemptive section checks are
constant expressions which should get removed by the dead code elimination
during optimization.
Instead of re-implementing sys_exit_np(), we simply repurposed sched_yield()
for calling into the scheduler to trigger delayed preemptions.
Diffstat (limited to 'litmus/Kconfig')
-rw-r--r-- | litmus/Kconfig | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/litmus/Kconfig b/litmus/Kconfig index 5556ae5cba45..874794f64af1 100644 --- a/litmus/Kconfig +++ b/litmus/Kconfig | |||
@@ -2,6 +2,17 @@ menu "LITMUS^RT" | |||
2 | 2 | ||
3 | menu "Real-Time Synchronization" | 3 | menu "Real-Time Synchronization" |
4 | 4 | ||
5 | config NP_SECTION | ||
6 | bool "Non-preemptive section support" | ||
7 | default n | ||
8 | help | ||
9 | Allow tasks to become non-preemptable. | ||
10 | Note that plugins still need to explicitly support non-preemptivity. | ||
11 | Currently, only GSN-EDF and PSN-EDF have such support. | ||
12 | |||
13 | This is required to support the FMLP. | ||
14 | If disabled, all tasks will be considered preemptable at all times. | ||
15 | |||
5 | config SRP | 16 | config SRP |
6 | bool "Stack Resource Policy (SRP)" | 17 | bool "Stack Resource Policy (SRP)" |
7 | default n | 18 | default n |
@@ -13,7 +24,7 @@ config SRP | |||
13 | 24 | ||
14 | config FMLP | 25 | config FMLP |
15 | bool "FMLP support" | 26 | bool "FMLP support" |
16 | # depends on NP_SECTION | 27 | depends on NP_SECTION |
17 | default n | 28 | default n |
18 | help | 29 | help |
19 | Include support for deterministic multiprocessor real-time | 30 | Include support for deterministic multiprocessor real-time |