Commit Graph

29203 Commits

Author SHA1 Message Date
Sebastian Huber
d5cc9fd6f1 score: __RTEMS_DO_NOT_INLINE_CORE_MUTEX_SEIZE__
Delete __RTEMS_DO_NOT_INLINE_CORE_MUTEX_SEIZE__ as a preparation to
restructure the CORE mutex variants and reduce the branch complexity.
2016-05-02 07:46:16 +02:00
Sebastian Huber
500a8e9c62 score: Delete __RTEMS_STRICT_ORDER_MUTEX__
Remove support for strict order mutexes.

Close #2124.
2016-05-02 07:46:16 +02:00
Sebastian Huber
1ef8e4a8e9 score: Avoid Giant lock for set time of day
Update #2555.
Update #2630.
2016-05-02 07:46:16 +02:00
Sebastian Huber
3888771772 score: Streamline set time of day functions
Rename _TOD_Set() into _TOD_Set_with_timespec().  Rename
_TOD_Set_with_timestamp() into _TOD_Set().  This is now in line with
_TOD_Get() and _TOD_Get_as_timespec().  The timestamp is the canonical
format.
2016-05-02 07:46:16 +02:00
Sebastian Huber
77726405fa score: _Objects_Get_name_as_string()
Avoid Giant lock in _Objects_Get_name_as_string().

Update #2555.
2016-05-02 07:46:16 +02:00
Sebastian Huber
f4d541ccfe rtems: Avoid Giant lock in rtems_object_set_name()
Update #2555.
2016-05-02 07:46:15 +02:00
Sebastian Huber
f009ed086d rtems: Avoid Giant lock for semaphores
Update #2555.
2016-05-02 07:46:15 +02:00
Sebastian Huber
c8982e5f6a posix: Simplify message queues
The mq_open() function returns a descriptor to a POSIX message queue
object identified by a name.  This is similar to sem_open().  In
contrast to the POSIX semaphore the POSIX message queues use a separate
object for the descriptor.  This extra object is superfluous, since the
object identifier can be used directly for this purpose, just like for
the semaphores.

Update #2702.
Update #2555.
2016-05-02 07:46:15 +02:00
Sebastian Huber
6741d30a31 rtems: Avoid Giant lock for message queues
Update #2555.
2016-05-02 07:46:15 +02:00
Sebastian Huber
7e66865e17 score: Move message notification
Move message notification to end of critical section and delegate the
message queue release to the notification handler.  It may do more
complex notification actions out of the critical section.

Update #2555.
2016-05-02 07:46:15 +02:00
Sebastian Huber
88e09b983d score: _CORE_message_queue_Insert_message()
Move common code into _CORE_message_queue_Insert_message().
2016-05-02 07:46:14 +02:00
Sebastian Huber
1b7a6a3863 score: _CORE_message_queue_Set_message_priority()
Remove _CORE_message_queue_Set_message_priority() and set the priority
in _CORE_message_queue_Insert_message().
2016-05-02 07:46:14 +02:00
Sebastian Huber
99112f76b8 score: _CORE_message_queue_Submit()
Move lock acquire to caller of _CORE_message_queue_Submit() to allow
state checks during send operations under lock protection.
2016-05-02 07:46:14 +02:00
Sebastian Huber
b0eba5ed8a score: _CORE_message_queue_Seize()
Move lock acquire to caller of _CORE_message_queue_Seize() to allow
state checks during receive operations under lock protection.
2016-05-02 07:46:14 +02:00
Sebastian Huber
7580995b47 score: _CORE_message_queue_Close()
Move lock acquire to caller of _CORE_message_queue_Close() to allow
state checks during object close operations under lock protection.
Ensures deletion safety on uni-processor configuration.
2016-05-02 07:46:14 +02:00
Sebastian Huber
dd6c28eee0 posix: Delete POSIX_Message_queue_Control::named
Delete unused POSIX_Message_queue_Control::named.
2016-05-02 07:46:14 +02:00
Sebastian Huber
49c293f492 posix: POSIX_Message_queue_Control::process_shared
Delete unused POSIX_Message_queue_Control::process_shared.
2016-05-02 07:46:13 +02:00
Sebastian Huber
3e36a16774 posix: _POSIX_Message_queue_Create_support()
Make  _POSIX_Message_queue_Create_support() static since it is only used
by mq_open().
2016-05-02 07:46:13 +02:00
Sebastian Huber
0000791312 bsp/qoriq: Add and use qoriq_reset_qman_and_bman() 2016-05-02 07:46:13 +02:00
Sebastian Huber
ddc12de4a3 bsp/qoriq: Add DCFG to memory map 2016-05-02 07:46:13 +02:00
Martin Galvan
08aa94abb2 Add myself to the Write-After-Approval list. 2016-04-27 11:24:30 -03:00
Sebastian Huber
7f4ee2b4ae posix: Avoid Giant lock for condition variables
Update #2555.
2016-04-27 08:50:41 +02:00
Sebastian Huber
f4c59d07d5 telnetd: Fix warnings 2016-04-25 08:10:18 +02:00
Sebastian Huber
163d1e8c24 pppd: Fix warnings 2016-04-25 08:10:09 +02:00
Sebastian Huber
d8f4689dba bsp/qoriq: Add bsp_restart() 2016-04-22 14:30:07 +02:00
Sebastian Huber
2816c84a55 bsp/qoriq: Use IPI_INDEX throughout 2016-04-22 14:30:07 +02:00
Sebastian Huber
9b1f338de9 bsp/qoriq: Add qoriq_start_spin_table_addr[]
Make the U-Boot start spin table addresses globally available for a
soft-reset.
2016-04-22 14:30:06 +02:00
Sebastian Huber
2c68a47e08 bsp/qoriq: Add qoriq_tlb1_invalidate_all_by_ts()
Generalize qoriq_tlb1_ts_0_only() to qoriq_tlb1_invalidate_all_by_ts().
2016-04-22 14:30:06 +02:00
Sebastian Huber
582e427280 bsp/qoriq: Move L1 cache invalidate function 2016-04-22 14:30:06 +02:00
Sebastian Huber
0ac0632b5c bsp/qoriq: Do not reset time base
We may use this as an entropy source.
2016-04-22 14:30:06 +02:00
Sebastian Huber
178180aa1c bsps: Copy FDT only if source != destination 2016-04-22 14:30:06 +02:00
Sebastian Huber
d35e6dded3 powerpc: Add FSL_EIS_TENSR, etc. defines 2016-04-22 14:30:05 +02:00
Sebastian Huber
e800b0738b network: Fix warnings 2016-04-22 09:25:11 +02:00
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