Package: openjdk-6-jre
Version: 6b16-4
Severity: grave
Justification: renders package unusable
When using cacao (icedtea-6-jre-cacao 6b16-4) to run ant I am getting the
following
intermittent assertion failure:
java: lock.c:801: lock_inflate: Assertion `((lockword) & ~(((1 << 8) - 1) <<
1)) == t->thinlock' failed.
Note that this is intermittent -- it fails only about half the time.
The hardware is a Cavium Octeon with 12 MIPS64R2 CPUs. The vendor supplies
a port of Debian Etch that has the following patch to glibc that may be apropos:
glibc-linuxthreads was modified to preform the proper "sync"
instructions during locks and atomic operations.
--- glibc-2.3.2/linuxthreads/sysdeps/mips/pspinlock.c.orig 2005-08-26
00:23:06.810398982 +0000
+++ glibc-2.3.2/linuxthreads/sysdeps/mips/pspinlock.c 2005-08-26
00:27:21.722905277 +0000
@@ -31,6 +31,9 @@
asm volatile
("\t\t\t# spin_lock\n"
+ ".set mips64\n\t"
+ "sync\n\t"
+ ".set mips0\n\t"
"1:\n\t"
".set push\n\t"
#if _MIPS_SIM == _MIPS_SIM_ABI32
@@ -66,7 +67,11 @@
{
asm volatile
("\t\t\t# spin_unlock\n\t"
- "sw $0,%0"
+ ".set mips64\n\t"
+ "sync\n\t"
+ "sw $0,%0\n\t"
+ "sync\n\t"
+ ".set mips0\n\t"
: "=m" (*lock)
:
: "memory");
@@ -82,6 +85,7 @@
all processes which can access the memory location `lock' points
to can use the spinlock. */
*lock = 0;
+ asm volatile (".set mips64; sync; .set mips0" ::: "memory");
return 0;
}
weak_alias (__pthread_spin_init, pthread_spin_init)
--- glibc-2.3.2/linuxthreads/sysdeps/mips/pt-machine.h.orig 2005-08-26
00:23:13.844647093 +0000
+++ glibc-2.3.2/linuxthreads/sysdeps/mips/pt-machine.h 2005-08-26
00:29:28.545267766 +0000
@@ -27,6 +27,12 @@
#include <sgidefs.h>
#include <sys/tas.h>
+#ifdef __OCTEON__
+#define MEMORY_BARRIER() __asm__ __volatile__ (".set mips64; sync; .set
mips0" : : : "memory")
+#define READ_MEMORY_BARRIER() __asm__ __volatile__ ("" : : : "memory")
+#define WRITE_MEMORY_BARRIER() __asm__ __volatile__ (".set mips64; sync; .set
mips0" : : : "memory")
+#endif
+
#ifndef PT_EI
# define PT_EI extern inline __attribute__ ((always_inline))
#endif
@@ -60,6 +66,9 @@
__asm__ __volatile__
("/* Inline compare & swap */\n"
+ ".set mips64\n\t"
+ "sync\n\t"
+ ".set mips0\n\t"
"1:\n\t"
".set push\n\t"
#if _MIPS_SIM == _MIPS_SIM_ABI32
-- System Information:
Debian Release: squeeze/sid
APT prefers testing
APT policy: (500, 'testing')
Architecture: mips (mips64)
Kernel: Linux 2.6.27.7-Cavium-Octeon (SMP w/12 CPU cores)
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
Shell: /bin/sh linked to /bin/bash
Versions of packages openjdk-6-jre depends on:
ii dpkg 1.15.3.1 Debian package management system
ii libaccess-bridge-java 1.26.2-1 Java Access Bridge for GNOME
ii libasound2 1.0.20-2 shared library for ALSA applicatio
ii libc6 2.9-12 GNU C Library: Shared libraries
ii libgif4 4.1.6-6 library for GIF images (library)
ii libjpeg62 6b-14 The Independent JPEG Group's JPEG
ii libpng12-0 1.2.37-1 PNG library - runtime
ii libpulse0 0.9.15-2 PulseAudio client libraries
ii libx11-6 2:1.2.1-1 X11 client-side library
ii libxext6 2:1.0.4-1 X11 miscellaneous extension librar
ii libxi6 2:1.1.4-1 X11 Input extension library
ii libxrender1 1:0.9.4-2 X Rendering Extension client libra
ii libxtst6 2:1.0.3-1 X11 Testing -- Resource extension
ii openjdk-6-jre-headless 6b16-4 OpenJDK Java runtime, using Hotspo
ii zlib1g 1:1.2.3.3.dfsg-13 compression library - runtime
Versions of packages openjdk-6-jre recommends:
ii pulseaudio 0.9.15-2 PulseAudio sound server
ii ttf-baekmuk 2.2-2 Baekmuk series TrueType fonts
ii ttf-indic-fonts 1:0.5.4 Metapackage for free Indian langua
ii ttf-kochi-gothic 20030809-5 Kochi Subst Gothic Japanese TrueTy
ii ttf-sazanami-mincho 20040629-7 Sazanami Mincho Japanese TrueType
ii ttf-wqy-zenhei 0.8.38-1 "WenQuanYi Zen Hei" A Hei-Ti Style
Versions of packages openjdk-6-jre suggests:
pn icedtea6-plugin <none> (no description available)
-- no debconf information
--
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]