Uniprocessor implementation of Nested Mutex problem.

Gedare Bloom gedare at rtems.org
Thu Aug 6 14:41:10 UTC 2015


Surrender is executed with isr disabled around it, so no.

On Wed, Aug 5, 2015 at 8:33 PM, Saurabh Gadia <gadia at usc.edu> wrote:
> For surrender we don't disable thread dispatching for uniprocessor. So is
> that the thread can be interleaved?
>
> Thanks,
>
> Saurabh Gadia
>
> On Wed, Aug 5, 2015 at 9:01 AM, Gedare Bloom <gedare at rtems.org> wrote:
>>
>> These functions are called with interrupts disabled. However,
>> _CORE_mutex_Seize_interrupt_blocking() enables interrupts, so an isr
>> can preempt the thread, but but it will not be interleaved with
>> another thread because thread dispatching is disabled around the isr
>> enabled section. I don't believe surrender has any such situations.
>>
>> Gedare
>>
>>
>> On Tue, Aug 4, 2015 at 9:39 PM, Saurabh Gadia <gadia at usc.edu> wrote:
>> > Hi,
>> >
>> > So on uniprocessor can we assume that a thread calling
>> > _CORE_mutex_Seize_body or _CORE_mutex_Surrender never gets preempted or
>> > interleaved as if it holds a global lock. Whcih means that we can create
>> > a
>> > JPF model for same using global lock.
>> >
>> > Thanks,
>> >
>> > Saurabh Gadia
>
>



More information about the devel mailing list