[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
communicating between RTTasks and kernelspace (fifo_handler function)
HI all,
I have the following problem:
I have a device driver using mq's for incoming / outgoing data (under
interrupt)
Afaik mq functions (rt1.1 style from semaphores/rt_ipc.c) can only be
called from rttasks and not from kernelspace (and fifo handlers run in
kernelspace correct?!) Hence I need to create a a rttask (thread) which
reads data for me from this mq.
In the meanwhile I want / need the fifo handler to wait untill this task
is done.
So this gives me a few questions:
-Is it correct that I can only call mq functions from
semaphores/rt_ipc.c
from rttasks and not from kernelspace?
-What happens when I create a task which actually finishes i.o.w it
returns is this safe, and equal to just deleting it?
-How can I lett my kernelspace fifo handler wait? should i just use
sleep_uninterruptable in a loop and check some kinda done flag?
or is there a better way?
Regards,
Hans