Bill Fischofer(Bill-Fischofer-Linaro) replied on github web page: platform/linux-generic/odp_schedule_basic.c @@ -720,9 +727,32 @@ static inline int poll_pktin(uint32_t qi) if (num_pktin == 0) sched_cb_pktio_stop_finalize(pktio_index); + + return num; } - return num; + if (atomic) {
Comment: That makes sense. > Petri Savolainen(psavol) wrote: > Line is was not changed but moved. Anyway, added name in v2. >> Petri Savolainen(psavol) wrote: >> ODP_DBG() added in v2 >>> Petri Savolainen(psavol) wrote: >>> I wanted to be conservative and not change synchronization of parallel >>> queues yet. I'll do another patch on top, so that it's easy to undo >>> parallel optimization later if necessary. >>>> Bill Fischofer(Bill-Fischofer-Linaro) wrote: >>>> Worth an `ODP_DBG()` here? At minimum I'd think we'd want to capture some >>>> sort of statistic for these drops. >>>> >>>> Same comment for the rest of the similar drops in this commit. >>>>> Bill Fischofer(Bill-Fischofer-Linaro) wrote: >>>>> If we relax this to cover atomic and parallel queues then this would >>>>> simply be: >>>>> ``` >>>>> int use_stash = !queue_is_ordered(qi); >>>>> ``` >>>>>> Bill Fischofer(Bill-Fischofer-Linaro) wrote: >>>>>> Is it really necessary to restrict this optimization to atomic queues? >>>>>> Ordered obviously cannot be stashed, but parallel queues make no >>>>>> ordering guarantees so accelerating them like this would also seem >>>>>> reasonable. In that case the `atomic` variable to this function would be >>>>>> better named something like `use_stash` . >>>>>>> Bill Fischofer(Bill-Fischofer-Linaro) wrote: >>>>>>> Might be nice to say which interface wasn't started here for debug >>>>>>> purposes since many could be in play. https://github.com/Linaro/odp/pull/504#discussion_r171839812 updated_at 2018-03-02 12:55:36