Commit Graph
29156 Commits
Author SHA1 Message Date
Sebastian Huber b5a21bf139 posix: Avoid Giant lock in sem_getvalue()
Update #2555.
2016-04-22 09:25:08 +02:00
Sebastian Huber cca2d8abc4 score: Rename _CORE_RWLock_Obtain()
Rename _CORE_RWLock_Obtain_for_reading() into
_CORE_RWLock_Seize_for_reading().  Rename
_CORE_RWLock_Obtain_for_writing() into _CORE_RWLock_Seize_for_writing().
Rename _CORE_RWLock_Release() into _CORE_RWLock_Surrender().  This
avoids confusion with the ISR lock acquire and release.
2016-04-21 07:29:40 +02:00
Sebastian Huber 3d0c400558 score: Rename _CORE_barrier_Wait()
Rename _CORE_barrier_Wait() into _CORE_barrier_Seize().  Rename
_CORE_barrier_Release() into _CORE_barrier_Surrender().  This avoids
confusion with the ISR lock acquire and release.
2016-04-21 07:29:40 +02:00
Sebastian Huber 242a05a586 score: Rename _MRSP_Obtain()
Rename _MRSP_Obtain() into _MRSP_Seize().  Rename _MRSP_Release() into
_MRSP_Surrender().  This avoids confusion with the ISR lock acquire and
release.
2016-04-21 07:29:40 +02:00
Sebastian Huber 88575577fa score: Optimize _Objects_Get_local()
Make the id the first parameter since usual callers get the object
identifier as the first parameter themself.
2016-04-21 07:29:40 +02:00
Sebastian Huber d7a12be9c3 score: Optimize _Objects_Get_no_protection()
Make the id the first parameter since usual callers get the object
identifier as the first parameter themself.
2016-04-21 07:29:40 +02:00
Sebastian Huber 36cd27c1e3 score: Simplify _Objects_Get_next()
Remove unused location parameter.
2016-04-21 07:29:40 +02:00
Sebastian Huber f05eeb2091 score: Simplify _Objects_Initialize_information()
Remove unused supports_global parameter.  Convert
_Objects_Initialize_information() to a macro to avoid use of
RTEMS_MULTIPROCESSING define for each caller.
2016-04-21 07:29:39 +02:00
Sebastian Huber adbedd10cf score: Introduce _Thread_queue_Flush_critical()
Replace _Thread_queue_Flush() with _Thread_queue_Flush_critical() and
add a filter function for customization of the thread queue flush
operation.

Update #2555.
2016-04-21 07:29:39 +02:00
Sebastian Huber 48b04fc388 posix: Avoid Giant lock for mutexes
Delete _POSIX_Mutex_Get().  Use _POSIX_Mutex_Get_interrupt_disable()
instead.

Update #2555.
2016-04-21 07:29:39 +02:00
Sebastian Huber bbe654af8f score: Add and use _CORE_mutex_Acquire_critical()
Add and use _CORE_mutex_Release().
2016-04-21 07:29:39 +02:00
Sebastian Huber b8bdced14d posix: Simplify _POSIX_Mutex_Get_interrupt_disable
Remove superfluous location parameter.
2016-04-21 07:29:39 +02:00
Sebastian Huber beba41b504 posix: _POSIX_Condition_variables_Wait_support()
Simplify _POSIX_Condition_variables_Wait_support(), since there is no
need to validate the mutex twice.
2016-04-21 07:29:38 +02:00
Sebastian Huber 8765c574b1 score: Remove id parameter _CORE_mutex_Seize()
Parameter was unused.
2016-04-21 07:29:38 +02:00
Sebastian Huber ca18cb593f score: Close semaphore object before flush
This prevents use of the object after the flush on uni-processor
configurations.
2016-04-21 07:29:38 +02:00
Sebastian Huber 90f1265e5d score: Fix _CORE_semaphore_Flush()
Use proper CORE_semaphore_Status for _CORE_semaphore_Flush() and
_CORE_semaphore_Destroy() operations.

Close #2696.
2016-04-21 07:29:38 +02:00
Sebastian Huber 928d455d53 score: Close barrier object before flush
This prevents use of the object after the flush on uni-processor
configurations.
2016-04-21 07:29:38 +02:00
Sebastian Huber e781ddb2b2 score: Simplify _CORE_barrier_Flush() 2016-04-21 07:29:37 +02:00
Sebastian Huber 5cc6bf4ce3 score: Simplify _CORE_message_queue_Close()
Drop status parameter since each caller used
CORE_MESSAGE_QUEUE_STATUS_WAS_DELETED.

Remove superfluous _CORE_message_queue_Flush().
2016-04-21 07:29:37 +02:00
Sebastian Huber b33983f8c9 score: Simplify _CORE_message_queue_Do_close()
Remove superfluous _CORE_message_queue_Flush() since we completely
re-initialize the structure in _CORE_message_queue_Initialize().
2016-04-21 07:29:37 +02:00
Sebastian Huber bbd6d27af8 score: Delete unused CORE_RWLock_Attributes 2016-04-21 07:29:37 +02:00
Sebastian Huber bdf6cc2a73 sptests/spsysinit01: Fix warning 2016-04-21 07:29:37 +02:00
Joel Sherrill 4cf41fd511 block[08|09|10]/init.c: Include <stdlib.h> to fix warning on exit() 2016-04-20 11:00:57 -05:00
Sebastian Huber 709f38a972 score: Use chain iterator for user extensions
Add a lock and use a chain iterator for safe iteration during concurrent
user extension addition and removal.

Ensure that dynamically added thread delete and fatal extensions are
called in reverse order.

Update #2555.
Update #2692.
2016-04-18 08:20:16 +02:00
Sebastian Huber 0a97ba5bc1 score: _User_extensions_Handler_initialization()
Simplify  _User_extensions_Handler_initialization().
2016-04-18 08:20:15 +02:00
Sebastian Huber 362722795a sapi: Avoid Giant lock for extensions
Extension create and delete is protected by the object allocator lock.

Update #2555.
2016-04-18 08:20:12 +02:00
Sebastian Huber 8f6c295b94 score: Add Chain_Iterator
Add a chain iterator for safe iteration of chains with concurrent node
extraction.
2016-04-18 08:17:46 +02:00
Pavel Pisa b752f9454f i386/pc386: reimplemented check for unused EDID entry in fb_vesa.c to suppress GCC 6 warning.
closes #2634
2016-04-16 15:01:47 +02:00
Joel Sherrill e65c45c4b6 Obsolete rtems_clock_get() directive.
This service was marked as deprecated long prior to the 4.11 release
series and is now being removed.

closes #2676.
2016-04-14 16:36:53 -05:00
Joel Sherrill 714efce48a conddefaultattributes.c: Add default clock to structure. 2016-04-14 16:28:10 -05:00
Joel Sherrill 04da96c763 posix/src/condattr*etpshared.c: Clean up and improve comments 2016-04-14 16:28:10 -05:00
Joel Sherrill 8228548d12 Add pthread_getconcurrency() and pthread_setconcurrency()
This is the very simple implementation specified by the Open Group
for implementations with 1:1 kernel thread to user thread mappings.

http://pubs.opengroup.org/onlinepubs/9699919799/functions/pthread_getconcurrency.html

updates #2680.
2016-04-14 16:28:10 -05:00
Sebastian Huber 6efa349850 posix: Run key destructors during thread restart
POSIX key destructors must be called during thread restart.  Just like
the POSIX cleanup handlers.  This ensures that the TLS object
destructors are called during thread restart for example.  It is
important for the global construction, which uses a thread restart to
run the Init task in a clean environment.

Close #2689.
2016-04-14 08:56:53 +02:00
Sebastian Huber a12724f934 bsp/qoriq: Fix MMU initialization for e6500
In case a hypervisor mode is present, then we must set MAS8 for some TLB
operations, otherwise the run-time behaviour is unpredictable.
2016-04-14 07:59:55 +02:00
Peng Fan 33a1a4dbdf cpukit: pppd: fix compile warning
rcsid is defined, but not used. So discard it.

Signed-off-by: Peng Fan <van.freenix@gmail.com>
2016-04-13 12:09:25 -04:00
Sebastian Huber f1a5630ad2 powerpc: Add FSL_EIS_MAS8 2016-04-13 09:30:28 +02:00
Sebastian Huber 3c293cc795 posix: Rename killinfo()
Apparently killinfo() is not defined by POSIX, glibc or FreeBSD.  Rename
killinfo() to _POSIX_signals_Send() to cleary mark it as an internal
function.
2016-04-12 07:58:35 +02:00
Sebastian Huber f2ffd646fa shell: Fix warning visible with latest Newlib
Works also with previous Newlib versions.
2016-04-12 07:36:19 +02:00
Sebastian Huber c39da818c7 rtems: Delete Region_Control::page_size 2016-04-12 07:36:19 +02:00
Sebastian Huber 60a2387552 rtems: Delete Region_Control::length 2016-04-12 07:36:19 +02:00
Sebastian Huber acf7cf3bdb rtems: Delete Region_Control::starting_address 2016-04-12 07:36:19 +02:00
Sebastian Huber b4b062f4df rtems: Delete Region_Control::number_of_used_blocks
Use Heap_Statistics::used_blocks instead.
2016-04-12 07:36:19 +02:00
Sebastian Huber 1142f5593a rtems: Add and use _Region_Get_and_lock()
Get region and lock allocator in _Region_Get_and_lock() in case the
region exists and unlock it in _Region_Unlock().
2016-04-12 07:36:19 +02:00
Sebastian Huber 572cb62429 score: Simplify _Objects_Get_no_protection()
This functions supports only local objects.  Thus, drop the location
parameter which was unused by all callers.

Remove superfluous includes from Classic Region implementation.
2016-04-12 07:36:18 +02:00
Sebastian Huber 0158a60cdc rtems: Ensure lock ownership for _Region_Get() 2016-04-12 07:36:18 +02:00
Sebastian Huber d26b053d02 rtems: Remove dead code
The heap protection enabled by RTEMS_DEBUG offers the same functionality
and more.
2016-04-12 07:36:18 +02:00
Sebastian Huber 9555341f0f posix: Use a dedicated lock for scheduler changes
Update #2555.
2016-04-12 07:36:14 +02:00
Sebastian Huber 44ed3843dc posix: Use proper lock for sigaction()
Update #2555.
2016-04-08 08:25:28 +02:00
Sebastian Huber 01226ec56b score: Compatibility with latest Newlib 2016-04-08 08:22:18 +02:00
Sebastian Huber d8ec270b33 libblock: Drop superfluous <stdlib.h> include
Drop superfluous <stdlib.h> include from <rtems/diskdevs.h> since this
leads to conflicts with the latest Newlib in case this header file is
used in the FreeBSD kernel space, e.g. for USB mass storage support.
2016-04-07 10:29:09 +02:00