summaryrefslogtreecommitdiffstats
path: root/testsuites (follow)
Commit message (Collapse)AuthorAgeFilesLines
* smptests/smpatomic08: Add initialization test caseSebastian Huber2013-09-032-0/+43
|
* score: Use unsigned long for atomic integersSebastian Huber2013-09-038-62/+62
| | | | | | | Use unsigned long instead of uint_fast32_t since C11 provides only a ATOMIC_LONG_LOCK_FREE macro constant. This makes it also possible to use properly typed integer literals like 123UL. It is now clear which compatible type should be used for the atomic integer.
* smptests/smpatomic08: Avoid copy and pasteSebastian Huber2013-09-012-163/+86
|
* smptests/smpatomic08: Simplify or/and test caseSebastian Huber2013-09-011-38/+52
| | | | Renamed and use common integer variables.
* smptests/smpatomic08: Fix compare and exchangeSebastian Huber2013-09-011-9/+17
|
* add atomic sub, and, or, compare_exchange test cases into smpatomic08WeiY2013-09-012-1/+175
|
* smp: Add and use _Assert_Owner_of_giant()Sebastian Huber2013-08-303-27/+101
| | | | | | | | | | | | | | Add and use _ISR_Disable_without_giant() and _ISR_Enable_without_giant() if RTEMS_SMP is defined. On single processor systems the ISR disable/enable was the big hammer which ensured system-wide mutual exclusion. On SMP configurations this no longer works since other processors do not care about disabled interrupts on this processor and continue to execute freely. On SMP in addition to ISR disable/enable an SMP lock must be used. Currently we have only the Giant lock so we can check easily that ISR disable/enable is used only in the right context.
* sapi: SMP support for chainsSebastian Huber2013-08-302-10/+22
| | | | | | | | Add ISR lock to chain control for proper SMP protection. Replace rtems_chain_extract() with rtems_chain_explicit_extract() and rtems_chain_insert() with rtems_chain_explicit_insert() on SMP configurations. Use rtems_chain_explicit_extract() and rtems_chain_explicit_insert() to provide SMP support.
* smptests/smpatomic08: Fix race conditionsSebastian Huber2013-08-292-55/+54
|
* smptests/smpatomic08: New testSebastian Huber2013-08-286-0/+382
|
* smptests: Move ATOMIC conditional to top-levelSebastian Huber2013-08-288-28/+2
|
* posix: Add and use _POSIX_signals_Acquire()Sebastian Huber2013-08-271-1/+2
| | | | | | Add and use _POSIX_signals_Release(). The post-switch handler is not protected by disabled thread dispatching. Use proper SMP lock for signal management.
* sptests/spthreadq01: Add SMP supportSebastian Huber2013-08-271-2/+6
|
* sptests/spnsext01: Add SMP supportSebastian Huber2013-08-271-2/+3
|
* score: Add and use CHAIN_INITIALIZER_ONE_NODE().Sebastian Huber2013-08-271-0/+26
| | | | | | Add and use CHAIN_NODE_INITIALIZER_ONE_NODE_CHAIN(), RTEMS_CHAIN_INITIALIZER_ONE_NODE() and RTEMS_CHAIN_NODE_INITIALIZER_ONE_NODE_CHAIN().
* sptests/spintrcritical20: PR2140: New testSebastian Huber2013-08-236-0/+204
|
* psxtests/psxfatal0[12]: Update due to API changesSebastian Huber2013-08-232-4/+8
|
* libtests/flashdisk01: Update screen fileSebastian Huber2013-08-231-8/+10
|
* posix: Update to the pthread_once changes.Chris Johns2013-08-232-12/+32
| | | | | | Implement the reeview changes. Add a POSIX Fatal error domain. Fix confdefs.h to correctly handle the internal POSIX mutexes.
* smp: Disable restart of threads other than selfSebastian Huber2013-08-201-0/+23
|
* smp: Add Deterministic Priority SMP SchedulerSebastian Huber2013-08-201-12/+12
|
* smp: Optimize Simple SMP schedulerSebastian Huber2013-08-201-12/+12
| | | | | | | | | | Add Thread_Control::is_in_the_air field if configured for SMP. This helps to simplify the extract operation and avoids superfluous inter-processor interrupts. Move the processor allocation step into the enqueue operation. Add and use _Scheduler_simple_smp_Get_highest_ready(). Add and use _Scheduler_SMP_Get_lowest_scheduled().
* correct memory model in smpatomic test caseWeiY2013-08-196-13/+13
|
* Fix a bug in spfreechain01 test case.Zhongwei Yao2013-08-111-2/+2
|
* smptests/smpswitchextension01: Fix start sequenceSebastian Huber2013-08-091-0/+2
| | | | Start the toggler after the context is initialized.
* score: Per-CPU thread dispatch disable levelSebastian Huber2013-08-094-23/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use a per-CPU thread dispatch disable level. So instead of one global thread dispatch disable level we have now one instance per processor. This is a major performance improvement for SMP. On non-SMP configurations this may simplifiy the interrupt entry/exit code. The giant lock is still present, but it is now decoupled from the thread dispatching in _Thread_Dispatch(), _Thread_Handler(), _Thread_Restart_self() and the interrupt entry/exit. Access to the giant lock is now available via _Giant_Acquire() and _Giant_Release(). The giant lock is still implicitly acquired via _Thread_Dispatch_decrement_disable_level(). The giant lock is only acquired for high-level operations in interrupt handlers (e.g. release of a semaphore, sending of an event). As a side-effect this change fixes the lost thread dispatch necessary indication bug in _Thread_Dispatch(). A per-CPU thread dispatch disable level greatly simplifies the SMP support for the interrupt entry/exit code since no spin locks have to be acquired in this area. It is only necessary to get the current processor index and use this to calculate the address of the own per-CPU control. This reduces the interrupt latency considerably. All elements for the interrupt entry/exit code are now part of the Per_CPU_Control structure: thread dispatch disable level, ISR nest level and thread dispatch necessary. Nothing else is required (except CPU port specific stuff like on SPARC).
* sptests/spintrcritical19: TyposSebastian Huber2013-08-081-2/+2
|
* sptests/spintrcritical19: PR2136: New testSebastian Huber2013-08-086-0/+173
|
* smptests/smpmigration01: Fix start sequenceSebastian Huber2013-08-081-0/+2
| | | | Start the runner after the context is initialized.
* PR766: Delete __RTEMS_VIOLATE_KERNEL_VISIBILITY__Sebastian Huber2013-08-0815-22/+0
|
* Check times with a no change truncate via open.Chris Johns2013-08-081-1/+31
| | | | | The open path should update the times even if the truncate does not change the size.
* psxtests/psx14: Include missing header fileSebastian Huber2013-08-061-0/+1
|
* sptests/spintrcritical17: Increase tick intervalSebastian Huber2013-08-061-1/+1
| | | | | This helps to complete the test in case the compiler optimization is disabled.
* Unlimited objects support for POSIX keysZhongwei Yao2013-08-0632-5/+1337
| | | | | | | This patch enables unlimited model in POSIX key manger and have a decent runtime on POSIX key searching, adding and deleting operations. Memory overhead is lower than current implementation when the size of key and key value becomes big.
* smptests/smp07: Use suspend instead of deleteSebastian Huber2013-08-061-1/+2
|
* sptests/sp37: Add ISR level test for new threadsSebastian Huber2013-08-051-0/+83
|
* sptests/sp37: Add ISR set/get level testsSebastian Huber2013-08-051-0/+31
|
* smptests/smpswitchextension01: New testSebastian Huber2013-08-056-0/+298
|
* smptests/smpmigration01: New testSebastian Huber2013-08-056-0/+262
|
* sptests/spfreechain01: Fix Makefile.amCynthia Rempel2013-08-041-0/+2
|
* clean up spatomic testcaseWeiY2013-08-0144-2532/+1
|
* score: Rename tod.h to todimpl.hSebastian Huber2013-08-015-5/+5
|
* score: ISR lock API changesSebastian Huber2013-08-011-2/+10
|
* score: Add and use _Thread_Update_cpu_time_used()Sebastian Huber2013-08-011-4/+5
| | | | Fix _times().
* tmtests/tm27: Fixes for RTEMS_DEBUGSebastian Huber2013-08-011-0/+22
|
* score: Add and use ISR locksSebastian Huber2013-07-311-0/+18
| | | | | | | | | | | | ISR locks are low-level locks to protect critical sections accessed by threads and interrupt service routines. On single processor configurations the ISR locks degrade to simple ISR disable/enable sequences. No additional storage or objects are required. This synchronization primitive is supported on SMP configurations. Here SMP locks are used.
* sptests/sp37: Improved interrupt lock testsSebastian Huber2013-07-311-3/+21
|
* tmtests/tm26: Fixes for RTEMS_DEBUGSebastian Huber2013-07-311-36/+100
|
* smptests/smppsxsignal01: New testSebastian Huber2013-07-306-0/+227
|
* smptests/smpsignal01: New testSebastian Huber2013-07-306-0/+226
|