[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: two issues: ssh and 2.2.9 kernel



 
> 2.2.9 seems to have fixed the high load problem.  However, there
> definately *is* still a problem with gmp2 2.0.2-6.2 and ssh
> 1.2.26-1.2.  As Ivan reported, it hangs on boot, sucking all CPU.
> Very annoying.  I can neither ssh in nor out.

There was a bug in the shared libgmp. I am not sure it will fix your problem,
but it did fix kaffe from coredumping.

Anton

--- gmp-2.0.2/mpn/sparc32/v8/supersparc/udiv.S.davem	Wed May  8 00:10:53 1996
+++ gmp-2.0.2/mpn/sparc32/v8/supersparc/udiv.S	Wed Apr 28 08:00:21 1999
@@ -22,6 +22,9 @@
 ! MA 02111-1307, USA.
 
 
+! Added PIC support - May/96, Miguel de Icaza
+!
+
 ! INPUT PARAMETERS
 ! rem_ptr	i0
 ! n1		i1
@@ -31,10 +34,21 @@
 #include "sysdep.h"
 #undef ret	/* Kludge for glibc */
 
+#ifdef PIC
 	.text
+#else
+	.section .rodata,#alloc
+#endif
 	.align	8
-LC0:	.double	0r4294967296
-LC1:	.double	0r2147483648
+	.type two_to_32,@object
+	.size two_to_32,8
+two_to_32:
+	.double	0r4294967296
+
+	.type two_to_31,@object
+	.size two_to_31,8
+two_to_31:
+	.double	0r2147483648
 
 	.align	4
 	.global	C_SYMBOL_NAME(__udiv_qrnnd)
@@ -44,9 +58,16 @@
 	!#PROLOGUE# 1
 	st	%i1,[%fp-8]
 	ld	[%fp-8],%f10
-	sethi	%hi(LC0),%o7
+#ifdef PIC
+base:
+	call	1f
+	fitod	%f10,%f4
+1:	ldd	[%o7-(base-two_to_32)],%f8
+#else
+	sethi	%hi(two_to_32),%o7
 	fitod	%f10,%f4
-	ldd	[%o7+%lo(LC0)],%f8
+	ldd	[%o7+%lo(two_to_32)],%f8
+#endif
 	cmp	%i1,0
 	bge	L248
 	mov	%i0,%i5
@@ -69,8 +90,12 @@
 	faddd	%f4,%f8,%f4
 L250:
 	fdivd	%f2,%f4,%f2
-	sethi	%hi(LC1),%o7
-	ldd	[%o7+%lo(LC1)],%f4
+#ifdef PIC
+	ldd	[%o7-(base-two_to_31)],%f4
+#else
+	sethi	%hi(two_to_31),%o7
+	ldd	[%o7+%lo(two_to_31)],%f4
+#endif
 	fcmped	%f2,%f4
 	nop
 	fbge,a	L251
--- gmp-2.0.2/mpn/sparc32/udiv_fp.S.davem	Wed May  8 00:10:53 1996
+++ gmp-2.0.2/mpn/sparc32/udiv_fp.S	Wed Apr 28 07:58:12 1999
@@ -20,6 +20,8 @@
 ! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
 ! MA 02111-1307, USA.
 
+! Added PIC support - May/96, Miguel de Icaza
+!
 
 ! INPUT PARAMETERS
 ! rem_ptr	i0
@@ -30,10 +32,21 @@
 #include "sysdep.h"
 #undef ret	/* Kludge for glibc */
 
+#ifdef PIC
 	.text
+#else
+	.section .rodata,#alloc
+#endif
 	.align	8
-LC0:	.double	0r4294967296
-LC1:	.double	0r2147483648
+	.type two_to_32,@object
+	.size two_to_32,8
+two_to_32:
+	.double	0r4294967296
+
+	.type two_to_31,@object
+	.size two_to_31,8
+two_to_31:
+	.double	0r2147483648
 
 	.align	4
 	.global	C_SYMBOL_NAME(__udiv_qrnnd)
@@ -43,9 +56,16 @@
 	!#PROLOGUE# 1
 	st	%i1,[%fp-8]
 	ld	[%fp-8],%f10
-	sethi	%hi(LC0),%o7
+#ifdef PIC
+base:
+	call	1f
+	fitod	%f10,%f4
+1:	ldd	[%o7-(base-two_to_32)],%f8
+#else
+	sethi	%hi(two_to_32),%o7
 	fitod	%f10,%f4
-	ldd	[%o7+%lo(LC0)],%f8
+	ldd	[%o7+%lo(two_to_32)],%f8
+#endif
 	cmp	%i1,0
 	bge	L248
 	mov	%i0,%i5
@@ -68,8 +88,12 @@
 	faddd	%f4,%f8,%f4
 L250:
 	fdivd	%f2,%f4,%f2
-	sethi	%hi(LC1),%o7
-	ldd	[%o7+%lo(LC1)],%f4
+#ifdef PIC
+	ldd	[%o7-(base-two_to_31)],%f4
+#else
+	sethi	%hi(two_to_31),%o7
+	ldd	[%o7+%lo(two_to_31)],%f4
+#endif
 	fcmped	%f2,%f4
 	nop
 	fbge,a	L251
--- gmp-2.0.2/Makefile.in.davem	Wed Apr 28 07:47:39 1999
+++ gmp-2.0.2/Makefile.in	Wed Apr 28 07:48:13 1999
@@ -32,7 +32,7 @@
 LOCAL_CC = $(CC)
 CFLAGS = -g -O
 XCFLAGS = 
-PICFLAGS = -fPIC
+PICFLAGS = -fPIC -DPIC
 
 AR = ar
 AR_FLAGS = rc


Reply to: