summaryrefslogtreecommitdiffstats
path: root/testsuites/tmtests (follow)
Commit message (Collapse)AuthorAgeFilesLines
* tm08: Do not use RTEMS_INTERRUPT_MASK for no reschedule caseJoel Sherrill2017-12-081-7/+10
| | | | Updates #3000.
* Remove coverhd.hSebastian Huber2017-11-2460-146/+113
| | | | | | | This header file contained timing overhead values which are hard to maintain. Update #3254.
* tests: Use simple console driverSebastian Huber2017-11-0635-35/+35
| | | | | Update #3170. Update #3199.
* tests: Remove TEST_INITSebastian Huber2017-10-2835-70/+0
| | | | | | | | The TEST_EXTERN is a used only by the system.h style tests and they use CONFIGURE_INIT appropriately. Update #3170. Update #3199.
* tmtests/tmfine01: Reduce test context sizeSebastian Huber2017-10-241-0/+4
| | | | | | Reduce test context size in non-SMP configurations. Close #3200.
* testsuite: Use printk for all test output where possible.Chris Johns2017-10-2335-0/+70
| | | | | | | | | | - Remove the printf support leaving the direct printk support configured with TESTS_USE_PRINTK and all other output goes via a buffered vsniprintf call to printk. - Control the test's single init for functions and global data with TEST_INIT and not CONFIGURE_INIT. They are now separate. Updates #3170.
* tmtests/tmfine01: Add test casesSebastian Huber2017-10-183-2119/+4188
| | | | | | | | Update #2674. Update #3112. Update #3113. Update #3114. Update #3115.
* tmtests/tmcontext01: Prevent GCC 7.1 optimizationsSebastian Huber2017-07-201-20/+21
| | | | | It is getting harder to prevent the compiler from optimizing away the recursive function calls.
* confdefs.h: Add SMP enabled field to configurationSebastian Huber2017-05-162-0/+4
| | | | | | | | | | | Do not use the processor count to determine if SMP is enabled. Instead use a dedicated configuration option. Enable SMP by default in SMP configurations. Add CONFIGURE_DISABLE_SMP_CONFIGURATION to all test which would fail otherwise. Update #3001.
* confdefs.h: CONFIGURE_DISABLE_SMP_CONFIGURATIONSebastian Huber2017-05-114-0/+8
| | | | | | | | | | | Enable the SMP configuration by default in case SMP is enabled. Add configuration option CONFIGURE_DISABLE_SMP_CONFIGURATION to disable it explicitly. Add CONFIGURE_DISABLE_SMP_CONFIGURATION to all test which would fail otherwise. Update #3001.
* testsuite: Add a common test configuration. Fix configure.ac and Makefile.am ↵Chris Johns2017-04-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | errors. - Add a top level test configuration file for test states that are common to all BSPs. This saves adding a test configuration (tcfg) file for every BSP. - Add the test states 'user-input' and 'benchmark'. This lets 'rtems-test' stop the test rather than waiting for a timeout or letting a benchmark run without the user asking for it to run. - Implement rtems-test-check in Python to make it faster. The shell script had grown to a point it was noticably slowing the build down. - Fix the configure.ac and Makefile.am files for a number of the test directories. The files are difficiult to keep in sync with the number of tests and mistakes can happen such as tests being left out of the build. The test fsrofs01 is an example. Also a there was a mix of SUBDIRS and _SUBDIRS being used and only _SUBDIRS should be used. - Fix the test fsrofs01 so it compiles. Closes #2963.
* Rename CONFIGURE_SMP_MAXIMUM_PROCESSORSSebastian Huber2017-02-142-2/+2
| | | | | | | Rename CONFIGURE_SMP_MAXIMUM_PROCESSORS to CONFIGURE_MAXIMUM_PROCESSORS since the SMP part is superfluous. Update #2894.
* Remove CONFIGURE_SMP_APPLICATIONSebastian Huber2017-02-022-4/+0
| | | | | | Enable the SMP support if CONFIGURE_SMP_MAXIMUM_PROCESSORS > 1. Update #2893.
* powerpc: Add _CPU_Get_current_per_CPU_control()Sebastian Huber2016-11-101-2100/+2100
| | | | | | | | Add _CPU_Get_current_per_CPU_control() on SMP configurations. Use SPRG0 for the current per-CPU control. This reduces the code size by three instructions and is slightly faster. Update #2805.
* score: Inline some SMP lock operations by defaultSebastian Huber2016-11-091-2100/+2100
| | | | | | | | | The SMP ticket lock release turned out to be suitable for inlining, e.g. a hand full of instructions, no branches. The changes in the screen files do not reflect the changes due to this commit. However, they are now up to date. Obtained on a T4240 running at 1.5GHz using GCC 7.0.0 20161108..
* score: Prevent assignment to _Thread_ExecutingSebastian Huber2016-11-072-15/+12
|
* score: Optimize self-contained mutexesSebastian Huber2016-11-041-2100/+2100
|
* rtems: Fix binary semaphore resource countSebastian Huber2016-11-031-2/+2
| | | | | | Binary semaphores (not simple binary semaphores) maintain the resource count since 8797c76addf22a2f0ffc3717ff977695e35b9b0b. Do this also for initially locked binary semaphores.
* tmtests/tmfine01: Update screen fileSebastian Huber2016-11-032-1800/+2194
| | | | Add plot script.
* score: Introduce Thread_Scheduler_control::homeSebastian Huber2016-11-022-6/+6
| | | | | | | | Replace Thread_Scheduler_control::control and Thread_Scheduler_control::own_control with new Thread_Scheduler_control::home. Update #2556.
* tmfine01: Add self-contained mutex test caseSebastian Huber2016-10-101-1/+46
| | | | | This demonstrates the effect of false cache line sharing in case of Classic mutexes.
* score: Introduce Thread_queue_Lock_contextSebastian Huber2016-09-081-1/+1
| | | | | | Introduce Thread_queue_Lock_context to contain the context necessary for thread queue lock and thread wait lock acquire/release operations to reduce the Thread_Control size.
* score: Add _Thread_queue_Context_set_MP_callout()Sebastian Huber2016-05-301-1/+1
| | | | | | Add _Thread_queue_Context_set_MP_callout() to simplify _Thread_queue_Context_initialize(). This makes it possible to more easily add additional fields to Thread_queue_Context.
* score: Move thread queue MP callout to contextSebastian Huber2016-05-251-5/+6
| | | | | | | | Drop the multiprocessing (MP) dependent callout parameter from the thread queue extract, dequeue, flush and unblock methods. Merge this parameter with the lock context into new structure Thread_queue_Context. This helps to gets rid of the conditionally compiled method call helpers.
* Replace *_Get_interrupt_disable() with *_Get()Sebastian Huber2016-05-201-9/+6
| | | | | Uniformly use *_Get() to get an object by identifier with a lock context.
* rtems: _Semaphore_Get_interrupt_disable()Sebastian Huber2016-05-201-3/+0
| | | | | | Use _Objects_Get_local() for _Semaphore_Get_interrupt_disable() to get rid of the location parameter. Move remote object handling to semaphore MPCI support.
* score: Rename _ISR_Flash() into _ISR_Local_flash()Sebastian Huber2016-05-201-1/+1
| | | | | | This is a preparation to remove the Giant lock. Update #2555.
* score: Rename _ISR_Disable() and _ISR_Enable()Sebastian Huber2016-05-201-2/+2
| | | | | | | | | Rename _ISR_Disable() into _ISR_Local_disable(). Rename _ISR_Enable() into _ISR_Local_enable(). Remove _Debug_Is_owner_of_giant(). This is a preparation to remove the Giant lock. Update #2555.
* score: Rename _ISR_Disable_without_giant()Sebastian Huber2016-05-202-8/+8
| | | | | | | | | Rename _ISR_Disable_without_giant() into _ISR_Local_disable(). Rename _ISR_Enable_without_giant() into _ISR_Local_enable(). This is a preparation to remove the Giant lock. Update #2555.
* testsuites: Avoid Giant lockSebastian Huber2016-05-202-85/+17
| | | | | | | | | Replace _Thread_Disable_dispatch() with _Thread_Dispatch_disable(). Replace _Thread_Enable_dispatch() with _Thread_Dispatch_enable(). This is a preparation to remove the Giant lock. Update #2555.
* testsuites: Replace _Thread_Get()Sebastian Huber2016-05-201-11/+14
| | | | | | | Replace _Thread_Get() with _Thread_Get_interrupt_disable() to avoid the Giant lock. Update #2555.
* score: Avoid Giant lock for _Thread_Start()Sebastian Huber2016-05-201-3/+3
| | | | Update #2555.
* score: Use thread state lock for current stateSebastian Huber2016-05-121-5/+13
| | | | | | | In addition protect scheduler of thread by thread state lock. Enables use of scheduler per-instance locks. Update #2555.
* rtems: Avoid Giant lock for semaphoresSebastian Huber2016-05-021-3/+11
| | | | Update #2555.
* Obsolete rtems_clock_get() directive.Joel Sherrill2016-04-142-6/+5
| | | | | | | This service was marked as deprecated long prior to the 4.11 release series and is now being removed. closes #2676.
* score: Replace watchdog handler implementationSebastian Huber2016-03-041-45/+45
| | | | | | | | | Use a red-black tree instead of delta chains. Close #2344. Update #2554. Update #2555. Close #2606.
* tmtests/tmtimer01: New testSebastian Huber2016-03-027-0/+408
| | | | | | | Test run performed on T4240 running at 1667MHz in uni-processor configuration. Update #2554.
* api: Remove deprecated NotepadsAun-Ali Zaidi2015-12-247-94/+1
| | | | | | | | | | | | | | | | | | | | | | | Notepads where a feature of RTEMS' tasks that simply functioned in the same way as POSIX keys or threaded local storage (TLS). They were introduced well before per task variables, which are also deprecated, and were barely used in favor of their POSIX alternatives. In addition to their scarce usage, Notepads took up unnecessary memory. For each task: - 16 32-bit integers were allocated. - A total of 64 bytes per task per thread. This is especially critical in low memory and safety-critical applications. They are also defined as uint32_t, and therefore are not guaranteed to hold a pointer. Lastly, they are not portable solutions for SMP and uniprocessor systems, like POSIX keys and TLS. updates #2493.
* basdefs.h: Add and use RTEMS_UNUSEDSebastian Huber2015-10-261-1/+1
|
* Delete CONFIGURE_USE_IMFS_AS_BASE_FILESYSTEMSebastian Huber2015-10-151-2/+0
| | | | This define accidentally re-appeared.
* rtems: Add rtems_interrupt_local_disable|enable()Sebastian Huber2015-06-221-2/+7
| | | | | | | | Add rtems_interrupt_local_disable|enable() as suggested by Pavel Pisa to emphasize that interrupts are only disabled on the current processor. Do not define the rtems_interrupt_disable|enable|flash() macros and functions on SMP configurations since they don't ensure system wide mutual exclusion.
* tmtests/tm27: Use scheduler lockSebastian Huber2015-06-191-10/+5
|
* tmtests/tm26: Fix context switch to FP taskSebastian Huber2015-05-291-3/+0
| | | | | | | It is wrong to restore the floating point context here. The _Context_Switch() ends up in _Thread_Handler() which will call _Thread_Restore_fp(). In _Thread_Do_dispatch() the FP restore is after the context switch.
* Revert "tmtests/tm26: Avoid NULL pointer access"Sebastian Huber2015-05-291-0/+3
| | | | | | | There is no NULL pointer access. Please note that _Thread_Get_executing() != executing variable in Low_task(). This reverts commit 5611839a7e2e371dd1f327c336c785095f634e55.
* tmtests/tm26: Avoid NULL pointer accessSebastian Huber2015-05-291-3/+0
|
* rtems: Atomically suspend/resume tasksSebastian Huber2015-04-081-1/+1
|
* tests misc: Disable deprecated method usage warning when intentionalJoel Sherrill2015-03-171-25/+37
| | | | | These tests intentionally use the deprecated method. Eventually this code in the sections can be deleted.
* testsupport: Add worker setup handlerSebastian Huber2015-03-171-1/+1
| | | | Add rtems_test_parallel_get_task_id().
* tmtests/tmfine01: New testSebastian Huber2015-03-166-0/+2612
|
* cpukit: deprecate notepadsGedare Bloom2015-03-101-0/+2
| | | | | | | | | | | | | | | Deprecate Classic API Notepads. Mark task_set/get_note() with the deprecated attribute, and also mark the notepads field. Replace disable with enable option for notepads in confdefs.h, and make notepads disabled by default. The previous option CONFIGURE_DISABLE_CLASSIC_API_NOTEPADS is now unused and will emit a compile-time warning. A new option CONFIGURE_ENABLE_CLASSIC_API_NOTEPADS is available to turn on notepads, but it also will emit a compile-time warning to indicate that notepads are deprecated. Closes #2265