[rtems commit] tests: atomic support for RTEMS. Uniprocessor tests for atomic ops.
gedare at rtems.org
Wed Feb 13 16:24:26 UTC 2013
On Wed, Feb 13, 2013 at 11:22 AM, yangwei weiyang <wei.a.yang at gmail.com> wrote:
> I will add some ops-stubs to other architectures which are not
> supported atomic functions now. It will pass the compiler problem but
> atomic function will not be implemented really. Then it will not be a
> conditional API.
Can you implement the atomic ops using ISR_Disable and ISR_Enable?
Then you can provide a common cpuatomic.h that includes these
implementations. Yes they will be "heavy", but they will at least be
> 2013/2/13 Ralf Corsepius <ralf.corsepius at rtems.org>:
>> On 02/08/2013 01:41 AM, Gedare Bloom wrote:
>>> On Thu, Feb 7, 2013 at 5:15 PM, Gedare Bloom <gedare at rtems.org> wrote:
>>>> Module: rtems
>>>> Branch: master
>>>> Commit: fb9fa1537a9765eae90124e5db5770ae7a527d5e
>>>> Author: WeiY <wei.a.yang at gmail.com>
>>>> Date: Fri Jan 25 23:59:49 2013 +0800
>>>> tests: atomic support for RTEMS. Uniprocessor tests for atomic ops.
>>> The tests do not compile for sis at least. Maybe broken for other
>>> targets that do not have the atomics defined?
>> RTEMS doesn't compile for all targets which do not have a file named
>> i.e. all targets but the powerpc and the i386.
>>> In file included from
>>> ../../../../../sis/lib/include/rtems/score/atomic.h:21:35: fatal
>>> error: rtems/score/cpuatomic.h: No such file or directory
>>> compilation terminated.
>>> $> find cpukit/score -name cpuatomic.h
>>> We should have some kind of stubs so that non-supported architectures
>>> will compile the atomic tests.
>> Well, I agree to some extend, but ...
>> ... I feel this is playing with symptoms.
>> The actual issue behind all this, is the atomic-API currently being
>> implemented as a conditional API - This is not good.
>> I an ideal world, one would not have any conditional API, but would have a
>> target-independent API.
>> That said, unless this issue can be resolved, IMO, all the atomic headers
>> should only be installed/pre-installed, if all ops and headers are
>> implemented for a specific target - ATM, this does not apply.
>> rtems-devel mailing list
>> rtems-devel at rtems.org
> Wei Yang
> Best Regards
> wei.a.yang at gmail.com
> rtems-devel mailing list
> rtems-devel at rtems.org
More information about the devel