# [SOLVED] Grafische Java-Anwendungen laufen nicht mehr

## Vortex375

Hallo Leute,

seit irgend einem Update laufen bei mir keine grafischen Java-Anwendungen mehr. Sie brechen alle mit exakt diesem Backtrace ab.

Unter Verwendung von sun-jdk-1.6:

```

Locking assertion failure.  Backtrace:

#0 /usr/lib/libxcb-xlib.so.0 [0x2aaad4a62a9c]

#1 /usr/lib/libxcb-xlib.so.0(xcb_xlib_unlock+0x24) [0x2aaad4a62ba4]

#2 /usr/lib/libX11.so.6(_XReply+0x112) [0x2aaad42989c2]

#3 /opt/sun-jdk-1.6.0.03/jre/lib/amd64/xawt/libmawt.so [0x2aaad3ff6826]

#4 /opt/sun-jdk-1.6.0.03/jre/lib/amd64/xawt/libmawt.so [0x2aaad3fd92ab]

#5 /opt/sun-jdk-1.6.0.03/jre/lib/amd64/xawt/libmawt.so [0x2aaad3fd957d]

#6 /opt/sun-jdk-1.6.0.03/jre/lib/amd64/xawt/libmawt.so(Java_sun_awt_X11GraphicsEnvironment_initDisplay+0x12) [0x2aaad3fd97f2]

#7 [0x2aaaab9be6b8]

java: xcb_xlib.c:82: xcb_xlib_unlock: Assertion `c->xlib.lock' failed.

Aborted
```

Unter Verwendung von blackdown-jdk-1.4.2:

```

Locking assertion failure.  Backtrace:

#0 /usr/lib/libxcb-xlib.so.0 [0x2aaaac1f8a9c]

#1 /usr/lib/libxcb-xlib.so.0(xcb_xlib_unlock+0x24) [0x2aaaac1f8ba4]

#2 /usr/lib/libX11.so.6(_XReply+0x112) [0x2aaaabe3d9c2]

#3 /opt/blackdown-jdk-1.4.2.03/jre/lib/amd64/libawt.so(XineramaQueryScreens+0xd7) [0x2aaaaadc1167]

#4 /opt/blackdown-jdk-1.4.2.03/jre/lib/amd64/libawt.so(xineramaInit+0x4b) [0x2aaaaad8888b]

#5 /opt/blackdown-jdk-1.4.2.03/jre/lib/amd64/libawt.so(awt_init_Display+0xfd) [0x2aaaaad889fd]

#6 /opt/blackdown-jdk-1.4.2.03/jre/lib/amd64/libawt.so(Java_sun_awt_X11GraphicsEnvironment_initDisplay+0x9) [0x2aaaaad88b99]

#7 [0x2acb00077f80]

java: xcb_xlib.c:82: xcb_xlib_unlock: Assertion `c->xlib.lock' failed.

```

Wie ihr seht, scheinen sowohl Blackdown- wie auch Sun-Java das gleiche Problem zu haben. Ich habe leider keine Ahnung, woran das liegen könnte, bzw. was ich jetzt tun soll.

Hat vielleicht jemand einen Tipp für mich?

EDIT: Offenbar hatte sich irgendwie eine seltsame Version von libxcb eingeschlichen. Ein emerge --oneshot libxcb hat automatisch ein downgrade auf x11-libs/libxcb-1.0 (von x11-libs/libxcb-9999) gemacht.

Leider hat sich das Problem dadurch noch nicht von selbst behoben. Der Backtrace sieht seltsamerweise jetzt aber deutlich kürzer aus:

```

java: xcb_xlib.c:50: xcb_xlib_unlock: Assertion `c->xlib.lock' failed.

Aborted

```

Das ist alles, was er jetzt noch ausspuckt. Wird da irgend jemand schlau draus?Last edited by Vortex375 on Wed Jan 23, 2008 9:08 pm; edited 1 time in total

----------

## firefly

das liegt daran, das java noch keinen oder nur schwachen support für xcb hat. Und wenn dann noch Xinerama aktiv ist da läuft gar nichts mehr.

siehe 

http://lists.freedesktop.org/archives/xcb/2007-June/002845.html

http://planet.gentoo.org/developers/betelgeuse/2006/11/26/do_not_turn_on_the_xcb_use_flag_if_you_p_5

----------

## Vortex375

Erstmal danke für deine Antwort.

Ich kann mich nicht daran erinnern Xinerama aktiviert zu haben, und was xcb ist, weiß ich überhaupt nicht.

In meiner xorg.conf taucht das Wort "Xinerama" erst gar nicht auf. Falls es etwas helfen sollte, wie kann ich Xinerama abschalten?

----------

## Fabiolla

Hallo,

hatte das gleich Problem, bei mir hat folgender Tipp aus dem Wiki geholfen:

http://de.gentoo-wiki.com/Java_und_Firefox#Bug.3F_in_Sun-Java

```

locate libmawt.so|grep "/opt/sun-j.*/lib/i386/.*libmawt.so"|xargs sed -i 's/XINERAMA/FAKEEXTN/g'

```

----------

## firefly

 *Vortex375 wrote:*   

> Erstmal danke für deine Antwort.
> 
> Ich kann mich nicht daran erinnern Xinerama aktiviert zu haben, und was xcb ist, weiß ich überhaupt nicht.
> 
> In meiner xorg.conf taucht das Wort "Xinerama" erst gar nicht auf. Falls es etwas helfen sollte, wie kann ich Xinerama abschalten?

 

xcb ist c-binding für das X-protokoll wie xlib. Nur einemweniger resourcen hunger (laut seite von xcb http://xcb.freedesktop.org/)

Schau mal in der log datei von Xorg ob da was mit XINERAMA auftaucht. Eventuell muss es nichtmal aktiv sein aber auf dem system vorhanden sein damit dieser bug getriggert wird. Aber da kenn ich mich nicht aus.

----------

## Vortex375

Hallo,

erstmal danke an alle für eure Hilfe. Durch Zufall hat mir nun ein Tipp aus dem compiz-fusion HowTo weitergeholfen:

 *gentoo-wiki.com wrote:*   

> 
> 
> In order to avoid problems in java and various problem that are arisen by xcb you should build xcb and libxcb with -DNDEBUG flag.
> 
> [...]
> ...

 

Siehe hier: http://gentoo-wiki.com/Compiz_fusion#XCB_workaround

Funktioniert prächtig!  :Very Happy: 

----------

