aboutsummaryrefslogtreecommitdiff
path: root/platform/linux-generic
diff options
context:
space:
mode:
authorMatias Elo <matias.elo@nokia.com>2017-05-11 14:48:38 +0300
committerMaxim Uvarov <maxim.uvarov@linaro.org>2017-05-11 20:45:43 +0300
commitc1e962548f5082554bb52137765a258b3a29283c (patch)
treea35144ebd71cc531e413dc4443b106694e72123e /platform/linux-generic
parentbd583923b29e5dddc4d1b9c6d0e0a513edb69496 (diff)
linux-gen: sched: fix one at a time low priority event scheduling
If CONFIG_BURST_SIZE was set to one low priority events were never scheduled. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
Diffstat (limited to 'platform/linux-generic')
-rw-r--r--platform/linux-generic/odp_schedule.c3
-rw-r--r--platform/linux-generic/odp_schedule_iquery.c2
2 files changed, 3 insertions, 2 deletions
diff --git a/platform/linux-generic/odp_schedule.c b/platform/linux-generic/odp_schedule.c
index f366e7ed9..f680ac47e 100644
--- a/platform/linux-generic/odp_schedule.c
+++ b/platform/linux-generic/odp_schedule.c
@@ -799,7 +799,8 @@ static inline int do_schedule_grp(odp_queue_t *out_queue, odp_event_t out_ev[],
/* Low priorities have smaller batch size to limit
* head of line blocking latency. */
- if (odp_unlikely(prio > ODP_SCHED_PRIO_DEFAULT))
+ if (odp_unlikely(MAX_DEQ > 1 &&
+ prio > ODP_SCHED_PRIO_DEFAULT))
max_deq = MAX_DEQ / 2;
ordered = sched_cb_queue_is_ordered(qi);
diff --git a/platform/linux-generic/odp_schedule_iquery.c b/platform/linux-generic/odp_schedule_iquery.c
index b69245788..b8a400117 100644
--- a/platform/linux-generic/odp_schedule_iquery.c
+++ b/platform/linux-generic/odp_schedule_iquery.c
@@ -1457,7 +1457,7 @@ static inline int consume_queue(int prio, unsigned int queue_index)
/* Low priorities have smaller batch size to limit
* head of line blocking latency.
*/
- if (odp_unlikely(prio > ODP_SCHED_PRIO_DEFAULT))
+ if (odp_unlikely(MAX_DEQ > 1 && prio > ODP_SCHED_PRIO_DEFAULT))
max = MAX_DEQ / 2;
/* For ordered queues we want consecutive events to