Thread: Linux/mips compile: [Fwd: Bug#139003: a little bit more is needed...]
-----Forwarded Message----- From: rmurray@debian.org To: 139003@bugs.debian.org Cc: control@bugs.debian.org Subject: Bug#139003: a little bit more is needed... Date: 27 Mar 2002 00:21:18 -0800 reopen 139003 thanks Looks like a small patch is needed as well to do the right thing on Linux. The patch enables the mips2 ISA for the ll/sc operations, and then restores it when done. The kernel/libc emulation code will take over on CPUs without ll/sc, and on CPUs with it, it'll use the operations provided by the CPU. Combined with the earlier fix (removing -mips2), postgresql builds again on mips and mipsel. The patch is against 7.2-7. diff -urN postgresql-7.2/src/backend/storage/lmgr/s_lock.c postgresql-7.2.fixed/src/backend/storage/lmgr/s_lock.c --- postgresql-7.2/src/backend/storage/lmgr/s_lock.c Mon Nov 5 18:46:28 2001 +++ postgresql-7.2.fixed/src/backend/storage/lmgr/s_lock.c Wed Mar 27 07:46:59 2002 @@ -173,9 +173,12 @@.global tas \n\tas: \n\ .frame $sp,0, $31 \n\ + .set push \n\ + .set mips2 \n\n ll $14, 0($4) \n\ or $15, $14, 1 \n\ sc $15, 0($4) \n\ + .set pop \n\ beq $15, 0, fail\n\ bne $14, 0, fail\n\ li $2, 0 \n\
Your patch has been added to the PostgreSQL unapplied patches list at: http://candle.pha.pa.us/cgi-bin/pgpatches I will try to apply it within the next 48 hours. --------------------------------------------------------------------------- Oliver Elphick wrote: Checking application/pgp-signature: FAILURE -- Start of PGP signed section. > -----Forwarded Message----- > > From: rmurray@debian.org > To: 139003@bugs.debian.org > Cc: control@bugs.debian.org > Subject: Bug#139003: a little bit more is needed... > Date: 27 Mar 2002 00:21:18 -0800 > > reopen 139003 > thanks > > Looks like a small patch is needed as well to do the right thing on Linux. > > The patch enables the mips2 ISA for the ll/sc operations, and then restores > it when done. The kernel/libc emulation code will take over on CPUs without > ll/sc, and on CPUs with it, it'll use the operations provided by the CPU. > > Combined with the earlier fix (removing -mips2), postgresql builds again on > mips and mipsel. The patch is against 7.2-7. > > diff -urN postgresql-7.2/src/backend/storage/lmgr/s_lock.c postgresql-7.2.fixed/src/backend/storage/lmgr/s_lock.c > --- postgresql-7.2/src/backend/storage/lmgr/s_lock.c Mon Nov 5 18:46:28 2001 > +++ postgresql-7.2.fixed/src/backend/storage/lmgr/s_lock.c Wed Mar 27 07:46:59 2002 > @@ -173,9 +173,12 @@ > .global tas \n\ > tas: \n\ > .frame $sp, 0, $31 \n\ > + .set push \n\ > + .set mips2 \n\n > ll $14, 0($4) \n\ > or $15, $14, 1 \n\ > sc $15, 0($4) \n\ > + .set pop \n\ > beq $15, 0, fail\n\ > bne $14, 0, fail\n\ > li $2, 0 \n\ > > -- End of PGP section, PGP failed! -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 853-3000+ If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania19026
Patch applied. Thanks. --------------------------------------------------------------------------- Oliver Elphick wrote: Checking application/pgp-signature: FAILURE -- Start of PGP signed section. > -----Forwarded Message----- > > From: rmurray@debian.org > To: 139003@bugs.debian.org > Cc: control@bugs.debian.org > Subject: Bug#139003: a little bit more is needed... > Date: 27 Mar 2002 00:21:18 -0800 > > reopen 139003 > thanks > > Looks like a small patch is needed as well to do the right thing on Linux. > > The patch enables the mips2 ISA for the ll/sc operations, and then restores > it when done. The kernel/libc emulation code will take over on CPUs without > ll/sc, and on CPUs with it, it'll use the operations provided by the CPU. > > Combined with the earlier fix (removing -mips2), postgresql builds again on > mips and mipsel. The patch is against 7.2-7. > > diff -urN postgresql-7.2/src/backend/storage/lmgr/s_lock.c postgresql-7.2.fixed/src/backend/storage/lmgr/s_lock.c > --- postgresql-7.2/src/backend/storage/lmgr/s_lock.c Mon Nov 5 18:46:28 2001 > +++ postgresql-7.2.fixed/src/backend/storage/lmgr/s_lock.c Wed Mar 27 07:46:59 2002 > @@ -173,9 +173,12 @@ > .global tas \n\ > tas: \n\ > .frame $sp, 0, $31 \n\ > + .set push \n\ > + .set mips2 \n\n > ll $14, 0($4) \n\ > or $15, $14, 1 \n\ > sc $15, 0($4) \n\ > + .set pop \n\ > beq $15, 0, fail\n\ > bne $14, 0, fail\n\ > li $2, 0 \n\ > > -- End of PGP section, PGP failed! -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 853-3000+ If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania19026