[LITMUS^RT] Problem on launching real time tasks
Björn Brandenburg
bbb at mpi-sws.org
Mon Mar 19 09:50:56 CET 2012
On Mar 19, 2012, at 12:41 AM, Youcef Amine Benabbas wrote:
> I am running litmus under qemu-system-x86_64.I tried to launch a task T
> that periodically prints some text. I basically added a printf to
> base_task.c in liblitmus/bin. Unfortunately I get the following error
> after launching the task:
>
> [ 759.915466] Setting up rt task parameters for process 865.
> init_litmus() ok.
> [ 759.918748] Setting up rt task parameters for process 865.
> sporadic_global(EXEC_COST, PERIOD) failed: Device or resource busy
> task_mode(LITMUS_RT_TASK) failed: Unknown error 4294967274
>
> I have set the GSN-EDF scheduler then launched the
> base_task: ./rt_launch 10 100 ./base_task
>
> I am not sure why this does not work since rtspin works fine.
>
> I am sorry if my problem is "stupid" but I am trying to do this for a
> couple of days without success.
The tool rt_launch exists to launch arbitrary, non-real-time binaries as real-time tasks under LITMUS^RT. Tasks that link directly against liblitmus (such as base_task) transition to real-time mode themselves and thus do not need to be launched with rt_launch.
The specific error is due to the fact that base_task attempted to set its period and execution cost while it was already a real-time task (since rt_launch transitions to real-time mode before forking and exec'ing the specified binary). Parameter changes at runtime are currently not supported in the stock LITMUS^RT version.
- Björn
More information about the litmus-dev
mailing list