summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2014-06-05score: _Per_CPU_State_wait_for_non_initial_state()Sebastian Huber
Replace _Per_CPU_State_wait_for_ready_to_start_multitasking() with _Per_CPU_State_wait_for_non_initial_state(). Implement this function.
2014-06-05score: Avoid NULL pointer accessSebastian Huber
Check that the executing thread is not NULL in _Scheduler_Tick(). It may be NULL in case the processor has an optional scheduler assigned and the system was not able to start the processor.
2014-06-05score: Delete SMP_FATAL_SHUTDOWN_EARLYSebastian Huber
Sort enum lexicographically.
2014-06-05remove not updated NEWS fileDaniel Hellstrom
2014-06-05LEON2: enable exception prinout by defaultDaniel Hellstrom
2014-06-05LEON3: enable exception prinout by defaultDaniel Hellstrom
2014-06-05GRETH: remove TCP/UDP HW checksum generationDaniel Hellstrom
The GRETH doesn't support IP fragments.
2014-06-04shell: Add rtems_shell_dup_current_env to get a default env.Chris Johns
Remove rtems_current_shell_env as this is dangerous because the env can be NULL if used outside of a valid shell with the POSIX key to an env set up. Clean up the usage of rtems_current_shell_env.
2014-06-04score: Rename _Scheduler_Update()Sebastian Huber
Rename _Scheduler_Update() to _Scheduler_Update_priority(). Add parameter for the new thread priority to avoid direct usage of Thread_Control::current_priority in the scheduler operation.
2014-06-04score: Replace _Scheduler_Allocate/Free()Sebastian Huber
Replace _Scheduler_Allocate() with _Scheduler_Node_initialize(). Remove the return status and thus the node initialization must be always successful. Rename _Scheduler_Free() to _Scheduler_Node_destroy().
2014-06-03sptests/spsem03: New testSebastian Huber
2014-06-03rhealstone: Produce proper begin/end messagesSebastian Huber
2014-06-03score/sparc: Add support for paravirtualizationChristian Mauderer
Guest systems in paravirtualization environments run usually in user mode. Thus it is not possible to directly access the PSR and TBR registers. Use functions instead of inline assembler to access these registers if RTEMS_PARAVIRT is defined.
2014-06-03libblock: Avoid recursive mutexSebastian Huber
2014-06-03smptests/smpthreadlife01: Fix for debug enabledChristian Mauderer
2014-06-03smptests/smpmrsp01: Fix scheduler idsChristian Mauderer
2014-06-03score: Use Resource Handler for MrsP semaphoresSebastian Huber
This enables proper resource dependency tracking and as a side-effect deadlock detection.
2014-06-03score: Add resource node to thread control blockSebastian Huber
2014-06-03score: Add and use _Thread_Owns_resources()Sebastian Huber
2014-06-03score: Add Resource HandlerSebastian Huber
A resource is something that has at most one owner at a time and may have multiple rivals in case an owner is present. The owner and rivals are impersonated via resource nodes. A resource is represented via the resource control structure. The resource controls and nodes are organized as trees. It is possible to detect deadlocks via such a resource tree. The _Resource_Iterate() function can be used to iterate through such a resource tree starting at a top node.
2014-06-02libblock: Add RTEMS_BDBUF_USE_PTHREADRalf Kirchner
Use the PTHREAD mutexes and condition variables if available. This helps on SMP configurations to avoid the home grown condition variables via disabled preemption.
2014-06-02rtems: Avoid copy and paste in confdefs.hRalf Kirchner
Add and use CONFIGURE_POSIX_MUTEXES. Add and use CONFIGURE_POSIX_CONDITION_VARIABLES.
2014-06-02arm: Add ARM_MULTILIB_HAS_BARRIER_INSTRUCTIONSSebastian Huber
2014-06-02libblock: Use pthread_once() for initializationRalf Kirchner
Enabling and disabling preemption as done for single core will not work for SMP. In the bdbuf initialization preemption handling can be avoided in general by using pthread_once().
2014-06-02score: _Scheduler_Set_affinity()Sebastian Huber
Do not change the scheduler with this function. Documentation. Coding style.
2014-06-02score: _Scheduler_Get_affinity()Sebastian Huber
Drop scheduler parameter. Coding style.
2014-06-02rtems: Coding styleSebastian Huber
2014-06-01mrm332: Tests now build and fewer warningsJoel Sherrill
2014-06-01m68k/shared/misc/memProbe.c: Add prototype to eliminate warningJoel Sherrill
2014-05-30cpusetimpl.h: Add _CPU_set_Set() and improve DoxygenJoel Sherrill
2014-05-30Minor conditionals to enable building Scheduler Simulator on GNU/LinuxJoel Sherrill
- rtems/score/assert.h: Scheduler Simulator uses glibc assert.h on GNU/Linux. This will likely need to be adjusted more for other host compilers and C libraries. Also disable _Assert_Not_reached() because some of these paths do actually return to the called on the Scheduler Simulator. - basedefs.h: Do not use noreturn attribute when on Scheduler Simulator. Paths which context switch can return to the command interpreter on the Scheduler Simulator.
2014-05-30bsps/gdbarmsim: Add the missing bspstarthooks.c.Chris Johns
2014-05-30Revert "Ignore emacs backfiles and TAGS."Chris Johns
This reverts commit dac56968e343cccfcae46e25805ede1a8d67550a. Use local git ignore for development tool files.
2014-05-28rtems/score/thread*.h: Really correct spelling errorJoel Sherrill
2014-05-28rtems/score/thread*.h: TERMINTING to TERMINATINGJoel Sherrill
2014-05-28shell: Make rtems_global_shell_env publicSebastian Huber
Provide rtems_global_shell_env as a public read-only variable for backward compatibility.
2014-05-28SPARC: syscall optimizations and PSR-write fixDaniel Hellstrom
The last optimization missed was incorrect in regards to PSR write instruction delay must be 3 instructions. New optimizations: * align to 32-byte cache line. * rearrange code into three "blocks" of 4 instructions that is executed by syscall 2 and 3. This is to optimize for 16/32 byte cache lines. * use delay-slot instruction in trap table to reduce by one instruction. * use the fact that "wr %PSR" implements XOR to reduce by one instruction.
2014-05-28LEON3: coding style clean bsp_irq_fixup()Daniel Hellstrom
2014-05-28LEON3: add support for IRQ16..31 for CPU!=0Daniel Hellstrom
2014-05-28bsps: Do not build tests that require a tick interrupt.Chris Johns
The following BSPs do not have tick support so the tests fail: arm1136jfs arm1136js arm7tdmi arm920 armcortexa9 (does not run any more) avrtest h8sim h8sxsim m32csim m32rsim moxiesim simsh1 simsh2 simsh4 v850e1sim v850e2sim v850e2v3sim v850esim v850essim v850sim This list was provided by Joel in the following post: http://www.rtems.org/pipermail/rtems-devel/2014-April/006526.html
2014-05-28rtems-test-check: Ignore tests which require real ISR based clock tickChris Johns
BSPs for simulators which do not include a clock tick interrupt source are incapable of running some tests successfully. This is a common characteristic of some BSPs and a fixed set of tests. There is no point in duplicating this list of tests in those BSPs test configuration. Read testsuites/testdata/require-tick-isr.tcfg for details.
2014-05-28Ignore emacs backfiles and TAGS.Chris Johns
2014-05-28bsp/altera-cyclone-v: CleanupRalf Kirchner
2014-05-28bsp/altera-cyclone-v: Reduce size of nocache heapRalf Kirchner
Network mbufs and clusters now are cached. Thus the nocache heap can get reduced to 1 MByte.
2014-05-28bsp/altera-cyclone-v: Cache mbufs and clustersRalf Kirchner
2014-05-28bsp/altera-cyclone-v: Enable L2 cache for network driverRalf Kirchner
2014-05-28bsp/altera-vyclone-v: Broadcast cache maintenancesRalf Kirchner
2014-05-28bsp/arm: Broadcast cache maintenancesRalf Kirchner
2014-05-28score: Multiprocessor Resource Sharing ProtocolSebastian Huber
Add basic support for the Multiprocessor Resource Sharing Protocol (MrsP). The Multiprocessor Resource Sharing Protocol (MrsP) is defined in A. Burns and A.J. Wellings, A Schedulability Compatible Multiprocessor Resource Sharing Protocol - MrsP, Proceedings of the 25th Euromicro Conference on Real-Time Systems (ECRTS 2013), July 2013. It is a generalization of the Priority Ceiling Protocol to SMP systems. Each MrsP semaphore uses a ceiling priority per scheduler instance. These ceiling priorities can be specified with rtems_semaphore_set_priority(). A task obtaining or owning a MrsP semaphore will execute with the ceiling priority for its scheduler instance as specified by the MrsP semaphore object. Tasks waiting to get ownership of a MrsP semaphore will not relinquish the processor voluntarily. In case the owner of a MrsP semaphore gets preempted it can ask all tasks waiting for this semaphore to help out and temporarily borrow the right to execute on one of their assigned processors. The help out feature is not implemented with this patch.
2014-05-27bsps/sparc: Change tabs to spaces.Daniel Cederman