r2786 - in glibc-package/trunk/debian: . patches patches/sh4
Author: aurel32
Date: 2008-01-19 12:24:08 +0000 (Sat, 19 Jan 2008)
New Revision: 2786
Added:
glibc-package/trunk/debian/patches/sh4/cvs-nptl-private-futexes.diff
Modified:
glibc-package/trunk/debian/changelog
glibc-package/trunk/debian/patches/series
Log:
* patches/sh4/cvs-nptl-private-futexes.diff: new patch from CVS to fix
FTBFS on sh4.
Modified: glibc-package/trunk/debian/changelog
===================================================================
--- glibc-package/trunk/debian/changelog 2008-01-12 18:00:25 UTC (rev 2785)
+++ glibc-package/trunk/debian/changelog 2008-01-19 12:24:08 UTC (rev 2786)
@@ -1,3 +1,11 @@
+glibc (2.7-7) unstable; urgency=low
+
+ [ Arthur Loiret ]
+ * patches/sh4/cvs-nptl-private-futexes.diff: new patch from CVS to fix
+ FTBFS on sh4.
+
+ -- Aurelien Jarno <aurel32@debian.org> Sat, 19 Jan 2008 12:01:23 +0100
+
glibc (2.7-6) unstable; urgency=low
[ Aurelien Jarno ]
Modified: glibc-package/trunk/debian/patches/series
===================================================================
--- glibc-package/trunk/debian/patches/series 2008-01-12 18:00:25 UTC (rev 2785)
+++ glibc-package/trunk/debian/patches/series 2008-01-19 12:24:08 UTC (rev 2786)
@@ -110,6 +110,7 @@
powerpc/local-sysconf.diff
sh4/local-fpscr_values.diff -p0
+sh4/cvs-nptl-private-futexes.diff -p0
sparc/local-fork.diff -p0
sparc/local-sparcv9-target.diff -p0
Added: glibc-package/trunk/debian/patches/sh4/cvs-nptl-private-futexes.diff
===================================================================
--- glibc-package/trunk/debian/patches/sh4/cvs-nptl-private-futexes.diff (rev 0)
+++ glibc-package/trunk/debian/patches/sh4/cvs-nptl-private-futexes.diff 2008-01-19 12:24:08 UTC (rev 2786)
@@ -0,0 +1,152 @@
+2007-12-04 Kaz Kojima <kkojima@rr.iij4u.or.jp>
+
+ * sysdeps/unix/sysv/linux/sh/lowlevellock.S (__lll_timedlock_wait):
+ Store 2 before returning ETIMEDOUT.
+
+2007-11-03 Mike Frysinger <vapier@gentoo.org>
+
+ * sysdeps/unix/sysv/linux/sh/lowlevellock.S (LOAD_FUTEX_WAIT): Add
+ missing line continuations.
+ * sysdeps/unix/sysv/linux/sh/lowlevelrobustlock.S (LOAD_FUTEX_WAIT,
+ LOAD_FUTEX_WAKE): Likewise. Also add missing 3rd parameter
+
+
+--- nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.S 2007-08-03 15:44:15.000000000 +0000
++++ nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.S 2007-12-05 02:31:10.000000000 +0000
+@@ -76,7 +76,7 @@
+ add tmp2, tmp ; \
+ mov.l @tmp, tmp2 ; \
+ bra 98f ; \
+- mov #FUTEX_PRIVATE_FLAG, tmp
++ mov #FUTEX_PRIVATE_FLAG, tmp ; \
+ 99: .word PRIVATE_FUTEX - TLS_PRE_TCB_SIZE ; \
+ 98: extu.b tmp, tmp ; \
+ xor tmp, reg ; \
+@@ -88,7 +88,7 @@
+ add tmp2, tmp ; \
+ mov.l @tmp, tmp2 ; \
+ bra 98f ; \
+- mov #FUTEX_PRIVATE_FLAG, tmp
++ mov #FUTEX_PRIVATE_FLAG, tmp ; \
+ 99: .word PRIVATE_FUTEX - TLS_PRE_TCB_SIZE ; \
+ 98: extu.b tmp, tmp ; \
+ xor tmp, reg ; \
+@@ -96,13 +96,13 @@
+ mov #FUTEX_WAIT, tmp ; \
+ or tmp, reg
+ # endif
+-# define LOAD_FUTEX_WAKE(reg,tmp) \
++# define LOAD_FUTEX_WAKE(reg,tmp,tmp2) \
+ stc gbr, tmp ; \
+ mov.w 99f, tmp2 ; \
+ add tmp2, tmp ; \
+ mov.l @tmp, tmp2 ; \
+ bra 98f ; \
+- mov #FUTEX_PRIVATE_FLAG, tmp
++ mov #FUTEX_PRIVATE_FLAG, tmp ; \
+ 99: .word PRIVATE_FUTEX - TLS_PRE_TCB_SIZE ; \
+ 98: extu.b tmp, tmp ; \
+ xor tmp, reg ; \
+@@ -225,6 +225,12 @@
+ add #-8, r15
+ cfi_adjust_cfa_offset(8)
+
++ mov #2, r2
++ XCHG (r2, @r8, r3)
++
++ tst r3, r3
++ bt 6f
++
+ 1:
+ /* Get current time. */
+ mov r15, r4
+@@ -250,17 +256,11 @@
+ add #-1, r2
+ 4:
+ cmp/pz r2
+- bf 5f /* Time is already up. */
++ bf 2f /* Time is already up. */
+
+ mov.l r2, @r15 /* Store relative timeout. */
+ mov.l r3, @(4,r15)
+
+- mov #1, r3
+- mov #2, r4
+- CMPXCHG (r3, @r8, r4, r2)
+- tst r2, r2
+- bt 8f
+-
+ mov r8, r4
+ mov r11, r5
+ LOAD_FUTEX_WAIT (r5, r0, r1)
+@@ -272,39 +272,29 @@
+ SYSCALL_INST_PAD
+ mov r0, r5
+
+-8:
+- mov #0, r3
+- mov #2, r4
+- CMPXCHG (r3, @r8, r4, r2)
+- bf/s 7f
+- mov #0, r0
++ mov #2, r2
++ XCHG (r2, @r8, r3)
++
++ tst r3, r3
++ bt/s 6f
++ mov #-ETIMEDOUT, r1
++ cmp/eq r5, r1
++ bf 1b
++
++2: mov #ETIMEDOUT, r3
+
+ 6:
++ mov r3, r0
+ add #8, r15
+ mov.l @r15+, r8
+ mov.l @r15+, r9
+ mov.l @r15+, r10
+ rts
+ mov.l @r15+, r11
+-7:
+- /* Check whether the time expired. */
+- mov #-ETIMEDOUT, r1
+- cmp/eq r5, r1
+- bt 5f
+
+- /* Make sure the current holder knows we are going to sleep. */
+- XCHG (r2, @r8, r3)
+- tst r3, r3
+- bt/s 6b
+- mov #0, r0
+- bra 1b
+- nop
+ 3:
+ rts
+ mov #EINVAL, r0
+-5:
+- bra 6b
+- mov #ETIMEDOUT, r0
+ cfi_endproc
+
+ .L1k:
+--- nptl/sysdeps/unix/sysv/linux/sh/lowlevelrobustlock.S 2007-08-03 15:44:57.000000000 +0000
++++ nptl/sysdeps/unix/sysv/linux/sh/lowlevelrobustlock.S 2007-11-06 01:02:00.000000000 +0000
+@@ -42,7 +42,7 @@
+ add tmp2, tmp ; \
+ mov.l @tmp, tmp2 ; \
+ bra 98f ; \
+- mov #FUTEX_PRIVATE_FLAG, tmp
++ mov #FUTEX_PRIVATE_FLAG, tmp ; \
+ 99: .word PRIVATE_FUTEX - TLS_PRE_TCB_SIZE ; \
+ 98: extu.b tmp, tmp ; \
+ xor tmp, reg ; \
+@@ -54,7 +54,7 @@
+ add tmp2, tmp ; \
+ mov.l @tmp, tmp2 ; \
+ bra 98f ; \
+- mov #FUTEX_PRIVATE_FLAG, tmp
++ mov #FUTEX_PRIVATE_FLAG, tmp ; \
+ 99: .word PRIVATE_FUTEX - TLS_PRE_TCB_SIZE ; \
+ 98: extu.b tmp, tmp ; \
+ xor tmp, reg ; \
Reply to: