Re: lock in qnx rtp.

From: "Tegge, Bernd" <tegge(at)repas-aeg(dot)de>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, "Leandro Medina" <lmedina(at)ingdesi(dot)com>
Cc: pgsql-ports(at)postgresql(dot)org
Subject: Re: lock in qnx rtp.
Date: 2001-05-28 09:37:58
Message-ID: 5.0.2.1.0.20010528110302.0220ae60@dragon.dr.repas.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-ports

At 16:30 23.05.01 -0400, Tom Lane wrote:
>"Leandro Medina" <lmedina(at)ingdesi(dot)com> writes:
> > I'm porting posgresql for QNX RTP. Compiling is ok, but
> > "/usr/local/pqsql/bin/initdb -D data" command say:
>
> > FATAL: s_lock(0x081e6029) at spin.c:162, stuck spinlock. Aborting.
>
>Hm. The existing QNX spinlock functions do work for some people.
>Is the slock_t datatype declared correctly for your platform in the
>port header file?
Just to throw in my $0.02 :

- from the source snippet it looks like it is using semaphores for
spinlocks. This is one of the quirks that my patch corrected. See
http://www.ca.postgresql.org/mhonarc/pgsql-ports/2001-05/msg00069.html
and
http://www.ca.postgresql.org/mhonarc/pgsql-ports/2001-05/msg00078.html
Without it 7.1 failed with a similar problem on QNX4.

- RTP is probably more different from QNX4 than Solaris 2 from SunOS 4,
so code that works on QNX4 may fail on RTP. It is much closer to
modern unices and supports shared libraries, elf executables, etc. .
AFAIK no SysV IPC interface, though. The RTP version could be much
more fully featured that the QNX4 version.

- QNX (both versions) is a RTOS. If you were to use RR or FIFO
scheduling, spinlocks probably won't work.

> regards, tom lane

In response to

Responses

Browse pgsql-ports by date

  From Date Subject
Next Message Eric Praetzel 2001-05-28 11:48:04 RH 7.0 problems with PG 7_1-1
Previous Message Robert E. Bruccoleri 2001-05-27 19:05:09 Irix binaries for PostgreSQL