https://lists.linaro.org/pipermail/lng-odp/2015-September/015093.html

On 09.09.15 13:24, Ivan Khoronzhuk wrote:
The patch in question is transformed to new one:
[lng-odp] [Patch] linux-generic: odp_schedule: fix odp_schdule_wait_time
Please, review.

On 07.09.15 17:19, Savolainen, Petri (Nokia - FI/Espoo) wrote:
*From:*ext Ola Liljedahl [mailto:ola.liljed...@linaro.org]
*Sent:* Monday, September 07, 2015 4:51 PM
*To:* Savolainen, Petri (Nokia - FI/Espoo)
*Cc:* Bill Fischofer; LNG ODP Mailman List
*Subject:* Re: [lng-odp] [Patch] validation: scheduler: increase time check

On 7 September 2015 at 14:59, Savolainen, Petri (Nokia - FI/Espoo) 
<petri.savolai...@nokia.com <mailto:petri.savolai...@nokia.com>> wrote:

Scheduler timeout (wait time) enables application to wait on a schedule call, 
for an finite time. Otherwise application would need to wait infinitely 
(SCHED_WAIT) or poll full scheduler on full CPU speed (SCHED_NO_WAIT).  
Periodic return from scheduler can be implemented also using a timer, but it 
would be waste when a HW scheduler has this finite wait time option build in. 
Also the “a la carte” principle fits here: user can use the scheduler API 
without the timer API, if he does not really need timers, just a way to break 
scheduler to from waiting for ever.

Application may use this e.g. to poll some other (non-ODP) resource when it 
seems that ODP side (of the application) is lightly loaded (e.g. no single 
event in last  100ms).

Yes there are probably use cases for a timeout from odp_schedule. But the 
examples given below (e.g.  timeout receiving some packet) are not valid, such 
cases should be handled with timers. The timeout is an event itself that should 
be scheduled by the scheduler so that the proper synchronisation (e.g. 
accessing some state associated with the queue) can be achieved. If 
odp_schedule() timeouts and returns without an event, the application should 
*not* start doing packet processing. Scheduler timeouts are for other types of 
application background processing and maintenance.

Yes, the scheduler timeout should not be used for driving bulk of the ODP 
event/packet processing. It enables integration of non-ODP SW (which don’t 
produce events), or driving back ground processing (started only when app is 
idling).

-Petri



_______________________________________________
lng-odp mailing list
lng-odp@lists.linaro.org
https://lists.linaro.org/mailman/listinfo/lng-odp



--
Regards,
Ivan Khoronzhuk
_______________________________________________
lng-odp mailing list
lng-odp@lists.linaro.org
https://lists.linaro.org/mailman/listinfo/lng-odp

Reply via email to