Sebastian Huber
e2623038f0
score: Fix typo
...
Update #3059 .
2017-07-12 10:44:57 +02:00
Sichen Zhao
f6115d7cd2
bsp/beagle: Add FDT support for Beaglebone Black
2017-07-12 08:38:20 +02:00
Sebastian Huber
af207fa9f6
Add interrupt vector set/get affinity
...
Close #3071 .
2017-07-12 08:00:13 +02:00
Sebastian Huber
ccc87c8b9e
Add interrupt server move
...
Update #3071 .
2017-07-12 07:46:55 +02:00
Sebastian Huber
d1841406b3
Add interrupt server set affinity
...
Update #3071 .
2017-07-12 07:46:52 +02:00
Sebastian Huber
a961e1980c
Add interrupt server suspend/resume
...
This mechanism can be used to safely move the interrupt server from one
scheduler instance to another for example.
Update #3071 .
2017-07-12 07:46:49 +02:00
Sebastian Huber
e7ee719f79
Create one interrupt server per processor
...
This allows load balancing of interrupt processing in SMP
configurations.
Update #3071 .
2017-07-12 07:46:40 +02:00
Sebastian Huber
ecabd38496
rtems: Add rtems_scheduler_ident_by_processor_set
...
Update #3070 .
2017-07-11 14:16:59 +02:00
Sebastian Huber
548d65a52b
rtems: Add rtems_scheduler_ident_by_processor()
...
Update #3069 .
2017-07-11 14:16:58 +02:00
Sebastian Huber
c29eb085f2
bsps/sparc: Fix ambapp_int_set_affinity()
...
Update #3059 .
2017-07-11 14:15:47 +02:00
Sebastian Huber
3b14e7aa6e
rtems: Fix warning
...
Update #3059 .
2017-07-11 13:51:10 +02:00
Sebastian Huber
21389c0613
score: Make EDF the default SMP scheduler
...
The EDF SMP scheduler supports simple thread processor affinities
(see #3059 ) with a small run-time overhead. The current default SMP
scheduler lacks support for thread processor affinities at all. The EDF
SMP scheduler offers a good feature set for most applications. So, use
it by default. Run-time libraries like libgomp, MTAPI, work stealing
schedulers, language interpreters (e.g. Erlang virtual machine),
maintainence of per-processor data (e.g. Universal Memory Allocator
(UMA)), etc. use a one-to-one thread processor affinity for example.
Update #3063 .
2017-07-10 07:49:40 +02:00
Sebastian Huber
4a1bdd3045
score: Fix set scheduler
...
Ensure that the thread processor affinity fits the new scheduler
instance.
Update #3059 .
2017-07-10 07:49:40 +02:00
Sebastian Huber
34487537ce
score: Add simple affinity support to EDF SMP
...
Update #3059 .
2017-07-10 07:49:36 +02:00
Sebastian Huber
d19dc071a2
score: Pass scheduler nodes to processor allocator
...
This allows scheduler implementations to easily access
scheduler-specific data.
Update #3059 .
2017-07-07 09:40:06 +02:00
Sebastian Huber
e745ec59d8
smptests/smpstrongapa01: Simplify
...
Update #3059 .
2017-07-07 07:56:25 +02:00
Sebastian Huber
197a614209
score: Add scheduler node to set affinity op
...
Update #3059 .
2017-07-07 07:56:24 +02:00
Sebastian Huber
16347a6b39
score: Fix default set affinity
...
The set of online processors must be a subset of the thread processor
affinity for the schedulers without arbitrary processor affinity support
to avoid problems in case of processor addition and removal.
Update #3059 .
2017-07-07 07:56:24 +02:00
Sebastian Huber
76d119857f
score: Introduce _SMP_Get_online_processors()
...
Update #3059 .
2017-07-07 07:55:03 +02:00
Sebastian Huber
0232b28df1
score: Use processor mask for set affinity
...
Update #3059 .
2017-07-07 07:36:31 +02:00
Sebastian Huber
1ec9c86fb6
rtems: Fix rtems_scheduler_remove_processor()
...
Account for the thread processor affinity and make sure that it is
possible to allocate a processor to each thread dedicated to a scheduler
instance.
Update #3059 .
2017-07-07 07:28:35 +02:00
Sebastian Huber
6b1d8c7865
score: Add processor set to scheduler context
...
Replace the simple processor count with the processor set owned by the
scheduler instance.
Update #3059 .
2017-07-07 07:28:35 +02:00
Sebastian Huber
78515554fd
score: Move processor affinity to Thread_Control
...
Update #3059 .
2017-07-07 07:28:29 +02:00
Sebastian Huber
6223097a8d
score: Add some processor mask functions
...
Update #3059 .
2017-07-06 15:32:48 +02:00
Sebastian Huber
7a5e4d9477
score: Add processor mask to/from cpu_set_t
...
Update #3059 .
2017-07-06 15:29:27 +02:00
Sebastian Huber
3dfe55ee15
score: Use <sys/bitset.h> for Processor_mask
...
Implement the Processor_mask via <sys/bitset.h>. Provide
_Processor_mask_To_uint32_t() to enable its use in device specific
routines, e.g. interrupt affinity register in an interrupt controller.
Update #3059 .
2017-07-06 15:29:16 +02:00
Sebastian Huber
71943dd4d2
xz: Suppress attribute warnings
...
Update #2909 .
2017-07-05 08:15:34 +02:00
Sebastian Huber
fab446f03f
score: Fix format
2017-07-05 08:10:11 +02:00
Sebastian Huber
4cd52cc456
score: Avoid clash with <strings.h> provided fls()
2017-07-05 08:08:24 +02:00
Sebastian Huber
3e7827434d
arm: Fix ARMv7-M interrupt processing
...
Right after a "msr basepri_max, %[basepri]" instruction an interrupt
service may still take place (observed at least on Cortex-M7). However,
pendable service calls that are activated during this interrupt service
may be delayed until interrupts are enable again. The
_ARMV7M_Pendable_service_call() did not check that a thread dispatch is
allowed. Move this test from _ARMV7M_Interrupt_service_leave() to
_ARMV7M_Pendable_service_call().
Update #3060 .
2017-07-04 15:15:37 +02:00
Sebastian Huber
550616e528
score: Add assert to _Thread_Dispatch()
...
Update #3060 .
2017-07-04 15:15:10 +02:00
Sebastian Huber
9b07f5efe3
newlib01: Use fopen() instead of freopen()
...
With global stdio streams, a freopen() would close the global stream
object.
Update #3012 .
2017-06-30 14:57:25 +02:00
Sebastian Huber
7adf4941a8
smptests/smpschededf01: New test
...
Update #3056 .
2017-06-29 15:21:30 +02:00
Sebastian Huber
7f7a3e8f70
tests: Move busy loop to test support
...
Update #3056 .
2017-06-29 14:36:58 +02:00
Sebastian Huber
74f9db8887
score: Add RTEMS_NO_INLINE
...
Update #3056 .
2017-06-29 12:08:27 +02:00
Sebastian Huber
f3d9f2288e
score: Add SMP EDF scheduler
...
Update #3056 .
2017-06-29 11:28:32 +02:00
Sebastian Huber
15dbc710b6
score: Add red-black tree node to Scheduler_Node
...
In SMP configurations, add a red-black tree node to Scheduler_Node to
enable an EDF scheduler implementation.
Update #3056 .
2017-06-29 11:15:50 +02:00
Sebastian Huber
1dbce41bb8
smptests: Split smpscheduler03
...
Split smpscheduler03 to run the tests with only one processor.
Update #3056 .
2017-06-29 11:15:38 +02:00
Sebastian Huber
5bfeab951c
Add rtems_interrupt_server_handler_iterate()
2017-06-26 08:23:33 +02:00
Joel Sherrill
b8b4b7d429
psxstat/test.c: Avoid potential string overflow
2017-06-21 12:50:31 -05:00
Joel Sherrill
9d945b5fff
psximfs02/init.c: Avoid potential string overflow
2017-06-21 12:50:31 -05:00
Joel Sherrill
d6cb813d33
dl03/dl-cache.c: Fix duplicate const warning
2017-06-21 12:50:31 -05:00
Joel Sherrill
d8b548160f
sys/utsname.h: Increase buffer to avoid overflow
2017-06-21 12:50:31 -05:00
Joel Sherrill
ec230fc77f
i386/shared/comm/i386-stub-glue.c: Fix duplicate const warning
2017-06-21 12:50:30 -05:00
Joel Sherrill
91774269db
lpc176x/misc/restart.c: Fix duplicate const warning
2017-06-21 12:50:30 -05:00
Joel Sherrill
d93181a059
malloctest/init.c: Disable check maximum size warning to allow error test case
2017-06-21 12:50:30 -05:00
Joel Sherrill
9761b98dcc
capture/rtems-trace-buffer-vars.c: Fix duplicate const warning
2017-06-21 12:50:30 -05:00
Joel Sherrill
5700d8ba52
top/task1.c: Fix sprintf() buffer overflow
2017-06-21 12:50:30 -05:00
Joel Sherrill
a5d31fe642
rbheap01/init.c: Fix PAGE_SIZE redefined warning
2017-06-21 12:50:29 -05:00
Sebastian Huber
d30c2cc288
powerpc: Fix PPC_CONTEXT_VOLATILE_SIZE
...
Account for legacy AltiVec context.
2017-06-20 13:04:54 +02:00