Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix ipc timeout caused due to incorrect task scheduling #709

Merged
merged 1 commit into from
Dec 17, 2018

Commits on Dec 13, 2018

  1. scheduler: allow RUNNING tasks to be re-scheduled in the future.

    Because of a race condition between when the DONE interrupt
    is sent to the host and when the previous ipc task's
    state is updated to COMPLETED, new ipc's from the host
    could end up not being scheduled. This leads to ipc
    time outs on the host.
    
    In order to prevent this, this patch introduces a new task state
    called PENDING which is assigned to the task when it is picked
    as the next task to be run. The state is then updated to running
    when the task function is executed. This way when a ipc task
    comes in, a RUNNING task could get scheduled again and assigned
    the PENDING state to ensure that it doesnt get missed.
    
    Signed-off-by: Ranjani Sridharan <[email protected]>
    ranj063 committed Dec 13, 2018
    Configuration menu
    Copy the full SHA
    f765638 View commit details
    Browse the repository at this point in the history