From: Pavel Pisa
When GCC option -march is not specifies i386-rtems toolchain
defaults to i386 architecture instruction set. It does not
provide atomic instructions which results in really inefficient
atomic_fetch_or even on UP build.
SMP build is broken with i386 set because libatomic and GCC
g
From: Pavel Pisa
The elimination of global interrupt lock is necessity condition
but far from being sufficient for RTEMS x86 SMP support.
Provided changes allows to build i386 BSP with configure
option --enable-smp. The build BSP runs in UP and SMP
configurations on QEMU when only one/boot CPU i
From: Pavel Pisa
---
c/src/lib/libbsp/i386/pc386/clock/ckinit.c | 19 ++---
c/src/lib/libbsp/i386/pc386/console/inch.c | 10 +++--
c/src/lib/libbsp/i386/pc386/console/keyboard.c | 55 --
c/src/lib/libbsp/i386/pc386/console/vt.c | 13 +++---
c/src/lib/lib
From: Pavel Pisa
The single write to memory or ioport output are mostly
atomic operations already. The proper memory synchronization barrier
should be used around them to guarantee ordering (sync or eieio
on PowerPC for example) but because I have not found settable
portable primitive only compil
On 12/10/16 10:26, p...@cmp.felk.cvut.cz wrote:
SMP build is broken with i386 set because libatomic and GCC
generate infinite loop for __atomic_fetch_add_4 used
in rtems_interrupt_lock_acquire
__atomic_fetch_add_4:
push %ebp
mov%esp,%ebp
movl $0x5,0x10(%ebp)
pop%e
Update #2408.
Update #2790.
---
cpukit/sapi/src/exinit.c | 7 ++-
cpukit/score/include/rtems/linkersets.h | 50 +-
testsuites/sptests/splinkersets01/init.c | 73 +++-
3 files changed, 80 insertions(+), 50 deletions(-)
diff --git a/
Update #2790.
---
cpukit/score/include/rtems/score/basedefs.h | 12 +++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/cpukit/score/include/rtems/score/basedefs.h
b/cpukit/score/include/rtems/score/basedefs.h
index c378635..ea4d831 100644
--- a/cpukit/score/include/rtems/s
On 12/10/16 11:13, Sebastian Huber wrote:
Update #2790.
---
cpukit/score/include/rtems/score/basedefs.h | 12 +++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/cpukit/score/include/rtems/score/basedefs.h
b/cpukit/score/include/rtems/score/basedefs.h
index c378635..ea4
Hello Sebastian,
On Wednesday 12 of October 2016 10:35:55 Sebastian Huber wrote:
> On 12/10/16 10:26, p...@cmp.felk.cvut.cz wrote:
> > SMP build is broken with i386 set because libatomic and GCC
> > generate infinite loop for __atomic_fetch_add_4 used
> > in rtems_interrupt_lock_acquire
> >
> > __
This looks like a compiler or libatomic configuration bug. I currently
have no time to investigate this further.
On 12/10/16 15:36, Pavel Pisa wrote:
Hello Sebastian,
On Wednesday 12 of October 2016 10:35:55 Sebastian Huber wrote:
On 12/10/16 10:26, p...@cmp.felk.cvut.cz wrote:
SMP build is
Hello Gedare,
On Wednesday 12 of October 2016 18:10:19 Gedare Bloom wrote:
> On Wed, Oct 12, 2016 at 4:26 AM, wrote:
> > From: Pavel Pisa
> >
> > The single write to memory or ioport output are mostly
> > atomic operations already. The proper memory synchronization barrier
> > should be used ar
On 13/10/2016 03:22, Pavel Pisa wrote:
But RTEMS i8269 support has been broken to disable
vector for level triggered interrupts in generic
IRQ processing code.
I am not sure where the blame should be placed. We need to disable at
the PIC when using libbsd with shared PCI interrupts because an
Hello Chris,
On Wednesday 12 of October 2016 23:05:30 Chris Johns wrote:
> On 13/10/2016 03:22, Pavel Pisa wrote:
> > But RTEMS i8269 support has been broken to disable
> > vector for level triggered interrupts in generic
> > IRQ processing code.
>
> I am not sure where the blame should be placed.
On 12/10/2016 20:13, Sebastian Huber wrote:
Module:rtems
Branch:master
Commit:be573185e6d6ddafdd3612c7c2db04aa0f65a330
Changeset:
http://git.rtems.org/rtems/commit/?id=be573185e6d6ddafdd3612c7c2db04aa0f65a330
Author:Sebastian Huber
Date: Fri Sep 23 06:45:07 2016 +0200
sco
On 13/10/2016 14:08, Chris Johns wrote:
On 12/10/2016 20:13, Sebastian Huber wrote:
Module:rtems
Branch:master
Commit:be573185e6d6ddafdd3612c7c2db04aa0f65a330
Changeset:
http://git.rtems.org/rtems/commit/?id=be573185e6d6ddafdd3612c7c2db04aa0f65a330
Author:Sebastian Huber
Dat
On 13/10/16 05:08, Chris Johns wrote:
On 12/10/2016 20:13, Sebastian Huber wrote:
Module:rtems
Branch:master
Commit:be573185e6d6ddafdd3612c7c2db04aa0f65a330
Changeset:
http://git.rtems.org/rtems/commit/?id=be573185e6d6ddafdd3612c7c2db04aa0f65a330
Author:Sebastian Huber
Date:
16 matches
Mail list logo