On 30 Sep, Prakash kanthi wrote:

> Hi There,
> 
> What process/task/thread context that, function
> registered with rtf_create_rt_handler is executed?
> 
> Let's say, i have two threads (t1, t2) in my module
> and a function (f1) is registered using
> rtf_create_rt_handler on a FIFO from init_module. When
> the data is put into the FIFO, function f1 will be
> called. During that time, if thread t1 is under
> execution, what sequence of steps that happen in terms
> of thread switches?

The handler is called by the thread that is putting data
into the fifo as part of that operation; so unless the
handler does something that wakes up t2 and t2 is higher
priority than t1, t1 is in control of the CPU at all times.

If the handler wakes up t2: If t2 is lower priority, then t2
will run the next time t1 pauses.  If t2 is higher priority,
t2 will take over at that point and rtf_put() will not
return to t1 until t2 pauses.

Dennis



_______________________________________________
Rtl mailing list
[EMAIL PROTECTED]
http://www2.fsmlabs.com/mailman/listinfo.cgi/rtl

Reply via email to