On Feb 19, 2018 6:55 PM, "Chris Johns" <chr...@rtems.org> wrote:

On 20/02/2018 00:13, Matthew J Fletcher wrote:
> All,
>
> Replying to my own post, with CPU_ENABLE_ROBUST_THREAD_DISPATCH set FALSE
i get
> a fatal exception, this on a Cortex-M7, rtems 5.0.0 from git.
>
> I think i will have to work around the new behavior somehow.
>

I would view this as implementing the correct behaviour. :)

The performance change does generate this runtime error and like you I have
tripped over it. What I learnt is this error exposes incorrect behaviour
that
use to run before now however this has changed with SMP. In all cases what
I was
doing was wrong and needed to be fixed.

Masking interrupts or using interrupt masking as a cheap lock on an SMP
target
provides you with no protection. All it does is stop the masked core from
receiving interrupts and any code without lock protection can execute
concurrently via another core.

You could argue that you are not using an SMP target so why should it matter
however there are ways to handle these cases that are better and end up with
more robust applications.

I hope this helps explain why you are seeing this error


Thanks Chris. I should have remembered that as we added smp, we tried to
encourage applications to "do the right thing" to be SMP correct.


Chris
_______________________________________________
users mailing list
users@rtems.org
http://lists.rtems.org/mailman/listinfo/
<http://lists.rtems.org/mailman/listinfo/users>use rs
_______________________________________________
users mailing list
users@rtems.org
http://lists.rtems.org/mailman/listinfo/users

Reply via email to