[Bug 1964] New: _Chain_Is_first/last overshoot

bugzilla-daemon at rtems.org bugzilla-daemon at rtems.org
Sat Nov 12 22:47:23 UTC 2011


https://www.rtems.org/bugzilla/show_bug.cgi?id=1964

           Summary: _Chain_Is_first/last overshoot
           Product: RTEMS
           Version: HEAD
          Platform: All
        OS/Version: RTEMS
            Status: NEW
          Severity: normal
          Priority: P3
         Component: cpukit
        AssignedTo: joel.sherrill at oarcorp.com
        ReportedBy: gedare at rtems.org


A user reported a possible problem with the implementation of the
_Chain_Is_first/last functions:
-------- Original Message --------
Subject: [Milkymist-devel] [PATCH, tentative] RTEMS: _Chain_Is_first/last
overshoot
Date: Wed, 9 Nov 2011 16:53:53 -0300
From: Werner Almesberger <werner at almesberger.net>
Reply-To: Milkymist One, Milkymist SoC and Flickernoise developers' list
<devel at lists.milkymist.org>
To: Milkymist One, Milkymist SoC and Flickernoise developers' list
<devel at lists.milkymist.org>

Doubly-linked lists ("chains") in RTEMS have a "control" block that
looks like the next/prev link pair in an element. The list elements
link both ways to this control block.

_Chain_Is_first and _Chain_Is_last only probed if the link to the
next element - which would be the control block - is non-NULL.
Telling by the function description and given that there are already
functions called _Chain_Is_head and _Chain_Is_tail (which could be
simplified), this is probably not the intended behaviour.

This also affects the aliases rtems_chain_is_first and
rtems_chain_is_last.

These functions are not used a lot and I haven't seen any immediate
effect on M1 after changing them, so I can't say whether this patch
may unearth other problems.

- Werner

-- 
Configure bugmail: https://www.rtems.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching all bug changes.



More information about the bugs mailing list