You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@mynewt.apache.org by "William San Filippo (JIRA)" <ji...@apache.org> on 2018/01/05 02:12:00 UTC

[jira] [Closed] (MYNEWT-879) os_sched_sleep and os_sched_insert could insert into sleep or run list incorrectly

     [ https://issues.apache.org/jira/browse/MYNEWT-879?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

William San Filippo closed MYNEWT-879.
--------------------------------------

This was not a bug.

> os_sched_sleep and os_sched_insert could insert into sleep or run list incorrectly
> ----------------------------------------------------------------------------------
>
>                 Key: MYNEWT-879
>                 URL: https://issues.apache.org/jira/browse/MYNEWT-879
>             Project: Mynewt
>          Issue Type: Bug
>      Security Level: Public(Viewable by anyone) 
>          Components: OS
>    Affects Versions: v1_3_0_rel
>            Reporter: William San Filippo
>            Assignee: William San Filippo
>
> The queue.h macros TAILQ_INSERT_TAIL will not set the first element in the head of the list if the list is empty. This is by design. Unfortunately, the OS code does not check in two places when inserting into the sleep list (os_sched_sleep) or the run list (os_sched_insert) if the list is empty. The code has to specifically check if the list is empty, and if so, call TAILQ_INSERT_HEAD (rather than insert tail).



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)