---- glibc-2.7/nptl/sysdeps/unix/sysv/linux/sparc/lowlevellock.h.orig 2007-11-01 22:29:07.000000000 +0100
-+++ glibc-2.7/nptl/sysdeps/unix/sysv/linux/sparc/lowlevellock.h 2007-11-01 22:29:39.000000000 +0100
-@@ -120,7 +120,7 @@
- /* Returns non-zero if error happened, zero if success. */
- #ifdef __sparc32_atomic_do_lock
- /* Avoid FUTEX_WAKE_OP if supporting pre-v9 CPUs. */
--# define lll_futex_wake_unlock(futexp, nr_wake, nr_wake2, futexp2) 1
-+# define lll_futex_wake_unlock(futexp, nr_wake, nr_wake2, futexp2, private) 1
- #else
- # define lll_futex_wake_unlock(futexp, nr_wake, nr_wake2, futexp2, private) \
- ({ \
---- glibc-2.7/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sem_wait.c.orig 2007-11-01 23:11:22.000000000 +0100
-+++ glibc-2.7/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sem_wait.c 2007-11-01 23:11:43.000000000 +0100
-@@ -133,6 +133,7 @@
- __old_sem_wait (sem_t *sem)
- {
- struct sparc_old_sem *isem = (struct sparc_old_sem *) sem;
-+ int *futex = (int *) sem;
- int err;
- int val;
+2008-04-14 David S. Miller <davem@davemloft.net>
+
+ * sysdeps/unix/sysv/linux/sparc/sparc32/sem_wait.c
+ (__old_sem_wait): Fix argument to lll_futex_wait().
+
+===================================================================
+RCS file: /cvs/glibc/libc/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sem_wait.c,v
+retrieving revision 1.2
+retrieving revision 1.3
+diff -u -r1.2 -r1.3
+--- libc/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sem_wait.c 2007/08/15 20:47:42 1.2
++++ libc/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sem_wait.c 2008/04/15 15:00:30 1.3
+@@ -155,7 +155,7 @@
+ /* Enable asynchronous cancellation. Required by the standard. */
+ int oldtype = __pthread_enable_asynccancel ();
+- err = lll_futex_wait (futex, 0,
++ err = lll_futex_wait (&isem->value, 0,
+ isem->private ^ FUTEX_PRIVATE_FLAG);
+
+ /* Disable asynchronous cancellation. */