In OFP we have this use case: N-1 cores are doing packet processing in
direct pktin mode; core 0 is doing odp_schedule() to process timers
(ARP entries expiration) and maybe other events.

To take from this:
-          If scheduler + timers are used, may not be use on all cores
-          If scheduler + timers are used, odp_schedule() may not be
called at the rate of the packets


So, is not a good idea to condition timer processing to the number of
odp_schedule() calls.


On 7 June 2017 at 10:30, Savolainen, Petri (Nokia - FI/Espoo)
<[email protected]> wrote:
>
>>
>> diff --git a/include/odp/api/spec/init.h b/include/odp/api/spec/init.h
>> index 154cdf8f..44950893 100644
>> --- a/include/odp/api/spec/init.h
>> +++ b/include/odp/api/spec/init.h
>> @@ -153,6 +153,11 @@ typedef struct odp_init_t {
>>       odp_log_func_t log_fn;
>>       /** Replacement for the default abort fn */
>>       odp_abort_func_t abort_fn;
>> +     /** Whether the application will ever call odp_schedule() or
>> not.
>> +
>> +         Default: true
>> +     */
>> +     odp_bool_t use_scheduler;
>>  } odp_init_t;
>
>
> This is an API change. It should be in a separate patch and subject should be 
> "api: init: ...".
>
> Anyway, Bill sent already a proposal that is closer what I described earlier. 
> Init struct should have odp_feature_t bit field for feature / unused_feature 
> selection.
>
> -Petri

Reply via email to