Commit Graph
29206 Commits
Author SHA1 Message Date
Sebastian Huber 981eed2176 score: Add dummy Strong APA scheduler
Start with a copy of the Priority SMP scheduler implementation.

Update #2510.
2016-05-02 07:46:17 +02:00
Sebastian Huber 66374dfc0c posix: Avoid Giant lock in _POSIX_signals_Send()
Update #2555.
Update #2690.
2016-05-02 07:46:17 +02:00
Sebastian Huber 259d885168 posix: Remove superfluous thread dispatch disable
The _Thread_queue_Enqueue_critical() already deals with thread
dispatching.

Update #2555.
2016-05-02 07:46:17 +02:00
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