Date: 14 Sep 1999 19:44:53 -0400 From: Greg Stark <gsstark@mit.edu> To: Terry Lambert <tlambert@primenet.com> Cc: mozilla@freebsd.org Subject: Re: Communicator 4.5: "Xlib: Unexpected async reply" msg flood! Message-ID: <87vh9df47e.fsf@mit.edu> References: 199905030116.saa1670-@usr05.primenet.com
next in thread | raw e-mail | index | archive | help
I don't think this explanation really makes sense. Netscape doesn't actually use the native threads, it uses some sort of user-space threads on all platforms. It is the right basic idea though, "Unexpected async reply" and the "sequence lost" both have to do with either a multi-threaded program calling Xlib functions from two threads or a signal handler calling Xlib functions. Do you have further evidence about this involving freebsd native threads? greg > > I've seen this problem occur with both the FreeBSD version of Communicator > > 4.5 in the packages collection as well as with Communicator 4.51 for Linux > > under FreeBSD 3.1. > > ... > > Communicator starts looping and outputting messages to stderr that read > > > > Xlib: Unexpected async reply (sequence 0x####) > > I believe the dialog box you refer to runs as JavaScript. > > There are a number of problems with the FreeBSD implementation of > Netscape. > > The number one problem is that it is assuming that threads serially > run to completion based on scheduling. > > Basically, this means that if you get an involuntary context switch, > the threads pick up where they left off, in the order that they > left off. > > The FreeBSD threads don't guarantee this (neither does POSIX), so > the serialization assumption is flawed. > > For what it's worth, Linux and Macintosh threading have the same > issues with the assumptions made by the NetScape JavaScript engine > programmers. > > The major problems most commonly surface in the builtins, like the > bookmark change script, the mail client, and the GIF decoder. The > workaround for GIF's is to serialize the GIF loading (easy; just change > your JavaScript) or to replace the GIF loader with a JNI to some > reentrant code (not very easy, and not very portable; it'll only > fix your personal browser). > > Since the problem exists on other platforms (e.g. Macintosh), it's > best to just let it do its thing and finish doing it, before you > move the mouse pointer. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-mozilla" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?87vh9df47e.fsf>