Skip to content
Snippets Groups Projects
Unverified Commit 8afe2594 authored by Nora Abi Akar's avatar Nora Abi Akar Committed by GitHub
Browse files

Fix stack overflow bug in the task system (#1583)


* Turn each task queue in the task system into a finite set of queues of increasing priority. The number of queues is a compile-time constant, currently two.
* When a task of priority higher than that of the highest priority queue is scheduled, execute it synchronously.
* When scheduling tasks in a task group, use a priority one higher than that of the calling task; when waiting on the task group, work only on tasks with this priority or higher. This is sufficient to avoid the deep recursion issue seen in issue #1570.

Fixes #1570.
Co-authored-by: default avatarSam Yates <yates@cscs.ch>
parent 250cce4f
No related branches found
No related tags found
No related merge requests found
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment