Skip to content

Commit

Permalink
linux-gen: sched: disable ordered queue reorder stash by default
Browse files Browse the repository at this point in the history
Disable basic scheduler implementation's ordered queue reorder stash by
default. Reorder stash usage can cause event drops inside the
implementation if the destination queue is full, which is against the ODP
spec and can cause difficult to debug application problems.

When enabling reorder stash, application should make sure queues are large
enough, so event drops will never occur.

Signed-off-by: Matias Elo <[email protected]>
Reviewed-by: Janne Peltonen <[email protected]>
  • Loading branch information
MatiasElo committed Mar 10, 2025
1 parent 5a92071 commit ec79fa3
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 2 deletions.
2 changes: 1 addition & 1 deletion config/odp-linux-generic.conf
Original file line number Diff line number Diff line change
Expand Up @@ -233,7 +233,7 @@ sched_basic: {
# performance if threads process events in bursts. If 'order_stash_size'
# > 0, events may be dropped by the implementation if the target queue
# is full. To prevent this set 'order_stash_size' to 0.
order_stash_size = 512
order_stash_size = 0

# Power saving options for schedule with wait
#
Expand Down
3 changes: 2 additions & 1 deletion platform/linux-generic/test/sched-basic.conf
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,11 @@
odp_implementation = "linux-generic"
config_file_version = "0.1.30"

# Test scheduler with an odd spread value and without dynamic load balance
# Test scheduler with an odd spread value, reorder stash, and without dynamic load balance.
sched_basic: {
prio_spread = 3
load_balance = 0
order_stash_size = 512
powersave: {
poll_time_nsec = 5000
sleep_time_nsec = 50000
Expand Down

0 comments on commit ec79fa3

Please sign in to comment.