Date: Mon, 3 May 1999 01:16:49 +0000 (GMT) From: Terry Lambert <tlambert@primenet.com> To: denis@acacia.cts.ucla.edu (Denis DeLaRoca) Cc: questions@FreeBSD.ORG, mozilla@FreeBSD.ORG Subject: Re: Communicator 4.5: "Xlib: Unexpected async reply" msg flood! Message-ID: <199905030116.SAA16700@usr05.primenet.com> In-Reply-To: <Pine.BSF.4.05.9904300225040.762-100000@acacia.cts.ucla.edu> from "Denis DeLaRoca" at Apr 30, 99 02:37:55 am
next in thread | previous in thread | raw e-mail | index | archive | help
> 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. > > At some point, a popup appears with the following message, > > Bookmarks have changed on disk. > Discard your unsaved changes and reload > > OK CANCEL > > Most of the time clicking on Ok or CANCEL allows one to continue > normally... but at other times, 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. Terry Lambert terry@lambert.org --- Any opinions in this posting are my own and not those of my present or previous employers. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199905030116.SAA16700>