clarification requested: apparent termination of xrx project due to deletion of lbx from xorg

Luke Kenneth Casson Leighton lkcl at
Tue Mar 17 12:25:20 PDT 2009

[sorry, accidentally didn't send this to list...]

On Tue, Mar 17, 2009 at 4:57 PM, Alan Coopersmith
<alan.coopersmith at> wrote:
> Luke Kenneth Casson Leighton wrote:
>>>> ... except... it won't, will it?  because, according to the above
>>>> message, xproxymngproto support has been destroyed, thanks
>>>> to the removal of lbx support.
>>> Destroyed?  No - all the sources are still downloadable and buildable,
>>> they're just no longer a core part of the window system, nor actively
>>> maintained.
>>  ahh.... xserver has had LBX _removed_ from
>> xserver/include/ - you have to go back to.... 2006(?)
>> to find a version of xserver that has it.
> But I've run XRX on recent Xorg server versions, so I don't think it's
> really as dependent on XRX as you think it is.

( i assume you mean LBX :) )

>   Have you actually tried
> it?

 yeah.  i've enabled debugging, i get "DestroyStream" and an exit.
Rx_Started is displayed... ohhh, i had the cgi-bin non-executable :)
that didn't help - ok, fixed that... still not working.

[New Thread 0x2adbfdf80950 (LWP 32071)]
Warning: Cannot find callback list in XtAddCallback
Windows: 41943056
Display num: 90
FreeFontPath: FPE "/usr/share/fonts/X11/misc" refcount is 2, should be
1; fixing.
DestroyCB, This: 0x1139840
write RX Plug-in:
<!-- $Xorg: xload,v 1.3 2000/08/17 19:54:59 cpqbld Exp $ -->
<PARAM Name=VERSION Value=1.0>
<PARAM Name=UI Value=X>
<PARAM Name=ACTION Value=>
<PARAM Name=WIDTH Value=400>
<PARAM Name=HEIGHT Value=300>
<PARAM Name=X-UI-LBX Value=NO>

so - LBX is disabled (worked that one out).  changed size from 100x100
to 400x300 just for fun.  modified the ACTION to match what's actually
_at_ the URL.

ps aux | grep xload shows that /usr/bin/xload is running (usually with
-display :85 or something like that)  but, despite it being active, it
soon goes belly-up, with that "DestroyStream" message.

ps auxww usually shows something like this:

 5463 pts/7    S      0:00 /bin/sh /usr/bin/firefox -g
 5466 pts/7    S      0:01 gdb /usr/lib/iceweasel/firefox-bin -x
 5471 pts/7    S      0:00 /usr/lib/libgconf2-4/gconfd-2 13
 5490 ?        S      0:00 /usr/bin/perl /usr/lib/cgi-bin/xload
 5504 pts/7    Sl+    0:01 /usr/lib/iceweasel/firefox-bin -a iceweasel
 5521 pts/7    Z+     0:00 [Xnest] <defunct>
 5524 ?        S      0:00 /usr/bin/perl /usr/lib/cgi-bin/xload
 5526 ?        S      0:00 sh -c (touch /tmp/lock.5524; _s=true;
/usr/bin/xload -update 1 -display localhost:94.0 -geometry 400x400
>/tmp/log.5524 2>&1 || _s=false; if $_s; then rm /tmp/log.5524; else
rm /tmp/lock.5524; fi; if [ -f /tmp/log2.5524 ]; then rm
/tmp/log2.5524; fi; rm -f /tmp/xauth.5524) >/dev/null 2>&1 </dev/null
 5528 ?        S      0:00 /usr/bin/xload -update 1 -display
localhost:94.0 -geometry 400x400

which indicates that it's xnest that's dying.

i _have_ seen xnest happily running, with the -parent 492919239
(whatever) number but that was before i #defined NO_STARTING_STATE

with or without NO_STARTING_STATE, xnest goes belly-up.

ah _ha_.  if i remove the "-parent" args, then it works (as an
external, separate, non-embedded application) i.e. like this:

               xnest_argv[0] = "Xnest";
       xnest_argv[1] =  "-ac";         /* no access control (sic!) */
       xnest_argv[2] = buffer1;        /* display number */
       xnest_argv[3] = NULL;


       sprintf(xnest_argv[2], ":%d", This->display_num);
       /* exec Xnest */

so there's something odd with the actual "embedding" bit, in the use
of the -Window arg.

ok..... after running an Xnest command (that failed), i looked at the
debug output (the Window id) and _manually_ ran a _second_ Xnest
command (with the same -parent window id)

   lkcl at gonzalez:/mnt/video/src/xorg/xrx/xnest-plugin$ Xnest -ac :95
-parent 41943041

   Fatal server error:
   Server is already active for display 95
       If this server is no longer running, remove /tmp/.X95-lock
       and start again.

ok, duh, that didn't work, because the Xnest server went splat.  try :96 -

  lkcl at gonzalez:/mnt/video/src/xorg/xrx/xnest-plugin$ Xnest -ac :96
-parent 41943041
  X Error of failed request:  BadAccess (attempt to access private
resource denied)
    Major opcode of failed request:  2 (X_ChangeWindowAttributes)
    Serial number of failed request:  81
    Current serial number in output stream:  83

okaaay.  rrrright.  what's _that_ all about??? :)

hmmm, what does strace tell me?

writev(6, [{"\2\1\4\0\1\0\200\2\0\10\0\0|\0\2\0\2\1\4\0\1\0\200\2\0"...,
40}, {"XFree86-Bigfont", 15}, {"\0", 1}], 3) = 56
read(6, "\0\nQ\0\1\0\200\2\0\0\2\1\0\0\0\0\4\307\2\0\0\0\0\0\20"..., 32) = 32
open("/usr/share/X11/XErrorDB", O_RDONLY) = 7

bigfont?? wtf is bigfont?

  lkcl at gonzalez:$ locate BigFont

nothing found.

ok - so.... what's that all about? :)


More information about the xorg mailing list