[etherlab-users] schedule_timeout() code issue

Andre Puschmann andre.puschmann at imms.de
Mon Mar 30 09:57:44 CEST 2009


Hi list,

I already posted this message on the developers list some days ago. 
Looks like
there is not much traffic on that one, so I am trying to ask the 
question here, too.
Sorry for cross posting.

"I got a question regarding the schedule_timeout(1) functionality used in 
master.c in ec_master_idle_thread() and ec_master_operation_thread().
The code calls schedule_timeout(1) which I interpret as "wait for a 
message but not longer then 10ms (assuming HZ==100) or 1ms (assuming 
HZ==1000)".
I am new to EtherCAT and I am not sure about the desired functionality. 
Is it "wait for a very small amount of time" (which explains the 1) or 
is it wait for 10ms or 1ms?
I think in either way, defining the timeout with respect to HZ should be 
the better idea.
On the other hand, if HZ is set to 1000, one jiffie is relatively short. 
I am afraid if it's worth the extra costs of scheduling (i.e. context 
switches). In this case, calling a delay function without scheduling 
might be the better solution.
What do you think? Maybe I am completely wrong .."


Best regards,

Andre




More information about the Etherlab-users mailing list