When I upgraded to OpenBSD4.3, however, my IceWM freezes the X server:
to be precise, the WM comes up working just fine (showing the taskbar,
mouse moves, etc), and then, I hit Ctrl-Esc and select the top option
I have put in the menu: that is, I select "Xterm" with the cursor keys
and hit ENTER. Immediately, my Xorg jumps up to 100%, and even though
the mouse moves, I get no response from keys or anything. I have to
login over SSH from my laptop, and kill -9 the Xorg, and restart it.
I also attached to the Xorg with gdb, and this is a stack trace of
where it seems to be stuck:
(gdb) where
#0 0x000000004ddbbdb8 in ifree (ptr=0x4a474300) at /usr/src/lib/libc/
stdlib/malloc.c:1836
#1 0x000000004ddbbf8f in free (ptr=0x4a474300) at /usr/src/lib/libc/
stdlib/malloc.c:1907
#2 0x0000000000555d9e in Xfree ()
#3 0x000000000044b318 in PlayReleasedEvents ()
#4 0x000000000044b51c in ComputeFreezes ()
#5 0x000000000044bae2 in DeactivateKeyboardGrab ()
#6 0x0000000000450988 in ProcUngrabKeyboard ()
#7 0x00000000004f5109 in XaceCatchDispatchProc ()
#8 0x000000000043f670 in Dispatch ()
#9 0x000000000042dfb5 in main ()
Currently, I am forced to live inside FVWM (which works fine under
4.3, just as everything else I've tried so far: firefox, lots of
ports, even my own graphics apps (http://users.softlab.ntua.gr/
~ttsiod/).
I also updated to the last IceWM (cvs update -A in the usr/ports/x11/
icewm) and rebuild. It still freezes.
Any ideas on what to try next? I am eager to help debug this in any
way possible...
Thanassis.
P.S. I have already posted this to the port maintainer, but got no
reply so far. Sending this in hopes I am missing something trivial...
> This looks like:
> http://sourceforge.net/tracker/index.php?func=detail&aid=1834961&group_id=31&atid=100031
> which is fixed here:
> https://bugs.freedesktop.org/show_bug.cgi?id=13511#c1
> I'll test it and if it fixes it, I'll try to push it in our xenocara.
I willl test the patch myself when I get back home and report my
results here for future reference...
Thanassis.
Index: xkbsrv.h
===================================================================
RCS file: /cvs/xenocara/xserver/include/xkbsrv.h,v
retrieving revision 1.1.1.2
diff -u -r1.1.1.2 xkbsrv.h
--- xkbsrv.h 13 Dec 2007 21:06:25 -0000 1.1.1.2
+++ xkbsrv.h 6 May 2008 12:13:08 -0000
@@ -258,7 +258,8 @@
device->public.processInputProc = proc; \
oldprocs->processInputProc = \
oldprocs->realInputProc = device->public.realInputProc; \
- device->public.realInputProc = proc; \
+ if (proc != device->public.enqueueInputProc) \
+ device->public.realInputProc = proc; \
oldprocs->unwrapProc = device->unwrapProc; \
device->unwrapProc = unwrapproc;