Protected and Unprotected operations on Chain_control

2015-08-12 Thread Saurabh Gadia
Hi, For operations related to manipulation of Chain_Node we have two modes for that: protected and unprotected. In protected access to chain we guard the operation by disabling the interrupts while in unprotected we don't guard it. Is it that we don't disable interrupts in unprotected mode

Re: Protected and Unprotected operations on Chain_control

2015-08-12 Thread Gedare Bloom
thread dispatch occurs due to an interrupt. if interrupts are disabled, then no dispatch. On Wed, Aug 12, 2015 at 2:23 PM, Saurabh Gadia ga...@usc.edu wrote: Hi, #define _ISR_Disable( _level ) \ do { \ _CPU_ISR_Disable( _level ); \ _Assert( _Debug_Is_owner_of_giant() ); \

Re: Protected and Unprotected operations on Chain_control

2015-08-12 Thread Gedare Bloom
On Wed, Aug 12, 2015 at 11:48 AM, Saurabh Gadia ga...@usc.edu wrote: Hi, For operations related to manipulation of Chain_Node we have two modes for that: protected and unprotected. In protected access to chain we guard the operation by disabling the interrupts while in unprotected we don't

Re: Protected and Unprotected operations on Chain_control

2015-08-12 Thread Saurabh Gadia
Hi, #define _ISR_Disable( _level ) \ do { \ _CPU_ISR_Disable( _level ); \ _Assert( _Debug_Is_owner_of_giant() ); \ RTEMS_COMPILER_MEMORY_BARRIER(); \ } while (0) the above macro has description: @brief Disables interrupts on this processor. * * This macro disables all