Removed atomic statements from CtpRoutingEngineP.nc. Thanks for the bug report.

- om_p

On Mon, Jun 7, 2010 at 3:50 PM, Miklos Maroti <[email protected]> wrote:
> Hi!
>
> That is certainly the case in CtpRoutingEngineP.nc. I have not checked
> other files.
>
> Miklos
>
> On Tue, Jun 8, 2010 at 12:44 AM, Xiaohui Liu <[email protected]> wrote:
>> Can we reach the conclusion that all the atomic statements in CTP may not be
>> necessary since all global variables are accessed in sync context?
>>
>> On Sat, Jun 5, 2010 at 6:20 PM, Philip Levis <[email protected]> wrote:
>>>
>>> On Jun 5, 2010, at 2:24 PM, Miklos Maroti wrote:
>>>
>>> > Hi Xiaohui,
>>> >
>>> > The tinyos programming book is right. I have checked that
>>> > CtpRoutingEngineP and it has no async command or event, so everything
>>> > is updated in synchronous context. I also do not see that a pointer
>>> > would be passed out of this module to these variables, so really all
>>> > updates are synchronous and the atomic statements should be removed.
>>> >
>>> > The ncc compiler is doing an excellent job: if you remove the atomic
>>> > statements and it does not complain, then you do not need the atomic
>>> > statements. There are only two cases where you need atomic even in
>>> > sync context: 1) if your variable is updated through a pointer in an
>>> > atomic context (which is rare, but can happen), 2) you are writing a
>>> > hardware driver doing some time sensitive stuff and you do not want
>>> > your code to be interrupted in the middle.
>>>
>>> My only thought is that the atomic statement might have been needed for
>>> Neutron (for safe reboots), and somehow the annotation made its way into the
>>> main branch? Om?
>>>
>>> Phil
>>> _______________________________________________
>>> Tinyos-help mailing list
>>> [email protected]
>>> https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
>>
>>
>>
>> --
>> -Xiaohui Liu
>>
>
_______________________________________________
Tinyos-help mailing list
[email protected]
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Reply via email to