Hello Pavel,

On 06/09/16 21:48, Pavel Pisa wrote:
Hello Sebastian,

On Tuesday 06 of September 2016 20:33:08 Sebastian Huber wrote:
The interrupt locks are simple interrupt disable/enable or spin locks. So,
they always work.
Allmost, on UP they are simple local IRQ disable.
But on SMP they are spinlock combined with IRQ disable.
But spinlock requires that corresponding memory location is initialized.
It is initialized to 0,0 as ticked lock or combination with some
debug/non-zero information depending on RTEMS_DEBUG, RTEMS_PROFILING etc.
The locks ends in BSS for zero case and I expect that it is source of
my problems.

if you want to use something before the BSS initialization, then you can move it to the BSP_START_DATA_SECTION section or explicitly initialize it, e.g. in your case via rtems_interrupt_lock_initialize().

The rest of the patch series looks good.

The smpfatal08 test is quite a hack since it re-defines some global SMP support functions locally. In order to support this, the ARM BSPs must place the _CPU_SMP_Start_processor() function as the only global function into the bspsmp.c file.

--
Sebastian Huber, embedded brains GmbH

Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone   : +49 89 189 47 41-16
Fax     : +49 89 189 47 41-09
E-Mail  : sebastian.hu...@embedded-brains.de
PGP     : Public key available on request.

Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.

_______________________________________________
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel

Reply via email to