Commit Graph
29170 Commits
Author SHA1 Message Date
Sebastian Huber 1641088178 network: Ensure matching syscall prototypes
Ensure that kernel and user space system call protoypes are identical.
2016-04-22 09:25:11 +02:00
Sebastian Huber c6cb9bad75 network: Delete unused in4_cksum() 2016-04-22 09:25:10 +02:00
Sebastian Huber a2aa9207af nfsclient: Fix warnings 2016-04-22 09:25:10 +02:00
Sebastian Huber c287dc0f46 bsp/qoriq: Flush and invalidate all L2 caches 2016-04-22 09:25:10 +02:00
Sebastian Huber 6a46d9974f bsp/qoriq: Optionally initialize register HID0
Enable the L2MMU multiple-hit detection on the e6500 core.
2016-04-22 09:25:10 +02:00
Sebastian Huber 9c3bae11b3 rtems: Avoid Giant lock for dual ported memory
There is no need for an ISR lock since the Dual_ported_memory_Control is
immutable after initialization.  ISR disable is enough for deletion
safety on uni-processor configurations.

Update #2555.
2016-04-22 09:25:10 +02:00
Sebastian Huber 84a5398853 score: Avoid Giant lock for CORE rwlock
Update #2555.
2016-04-22 09:25:09 +02:00
Sebastian Huber f27383a518 score: Avoid Giant lock for barriers
Use _Thread_queue_Flush_critical() to atomically release the barrier.

Update #2555.
2016-04-22 09:25:09 +02:00
Sebastian Huber 5c9fa6fb75 score: Add _Thread_queue_Flush_default_filter() 2016-04-22 09:25:09 +02:00
Sebastian Huber ba5ef37b37 score: Use _Thread_queue_Flush_critical() for cond 2016-04-22 09:25:09 +02:00
Sebastian Huber 0b590858ac score: Use _Thread_queue_Flush_critical for futex 2016-04-22 09:25:09 +02:00
Sebastian Huber b46622684a score: Add _Thread_queue_Is_empty() 2016-04-22 09:25:08 +02:00
Sebastian Huber 2dd5e6fb32 posix: Use _Objects_Get_local() for semaphores
This simplifies the code since the object location is no longer used.
Remove superfluous header includes.
2016-04-22 09:25:08 +02:00
Sebastian Huber 4025a60fcb score: Avoid Giant lock for CORE mtx/sem
Avoid Giant lock for CORE mutex and semaphore flush and delete
operations.

Update #2555.
2016-04-22 09:25:08 +02:00
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