## NAME

           rt_task_init - create a real-time task

## WARNING

           This is RTL v1.x compatibility function. Please do not use
           it for new programs.

## SYNOPSIS

           #define MODULE
           #include <linux/module.h>
           #include <linux/kernel.h>
           #include <linux/version.h>
           #include <linux/errno.h>
           #include <linux/rtf.h>

           int rt_task_init(RT_TASK * task, void (*fn)(int data), int
           data, int stack_size, int priority);

## DESCRIPTION

           rt_task_init  creates  a real-time task.  task is a struc
           ture the space for which must be provided by the  applica
           tion.   task  must  be  present during the lifetime of the
           real-time task; thus it cannot be an  automatic  variable.
           fn  is  the  entry point of the new task.  The parent task
           can send  a  one-integer  value  data  to  the  new  task.
           stack_size  is the size of the stack to be used by the new
           task, and priority is the priority to be given  the  task.
           The  highest  priority  is  1, while the lowest is RT_LOW
           EST_PRIORITY.

           The newly created real-time task is initially dormant.  It
           is  normally  made  active by a call to rt_task_make_peri
           odic.

## RETURN VALUE

           On success, 0 is returned.  On failure, a  negative  value
           is returned as described below.

## ERRORS

           -EINVAL
                  task is already in use by another task.

           -ENOMEM
                  space  could  not  be  allocated  for the real-time
                  task.

## SEE ALSO

           rt_task_delete(3), rt_task_make_periodic(3),  rt_task_sus
           pend(3), rt_task_wait(3)