blob: a9f186cc89a0cfbe74d33ca40508b9cd85e7310b (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
#
# Show how having a non-preemptive task can create a
# priority inversion and changing the mode to preemptive
# resolves it.
#
rtems_init 4
task_create -p smp1 5
task_create smp2 5
task_create smp3 5
task_create smp4 5
dispatch
# GOAL: 0x0a010001 - 0x0a010004 are heir and executing
# GOAL: on CPUs 0 - 3 respectively
cpus
task_create smp5 3
dispatch
# GOAL: 0x0a010001, 0x0a010005, 0x0a010003, and 0x0a010004 are heir
# GOAL: and executing on CPUs 0 - 3
cpus
task_mode -P
# GOAL: 0x0a010001, 0x0a010005, 0x0a010003, and 0x0a010004 are heir
# GOAL: and executing on CPUs 0 - 3
cpus
|