*BSD News Article 82023


Return to BSD News archive

Path: euryale.cc.adfa.oz.au!newshost.carno.net.au!harbinger.cc.monash.edu.au!news.mel.connect.com.au!munnari.OZ.AU!news.ecn.uoknor.edu!solace!news.stealth.net!news.ibm.net.il!arclight.uoregon.edu!super.zippo.com!zdc!szdc!szdc-e!news
From: "John S. Dyson" <dyson@freebsd.org>
Newsgroups: comp.emulators.ms-windows.wine,comp.unix.bsd.freebsd.misc
Subject: Re: Wine960928 crashed FreeBSD 2.1.5
Date: Fri, 01 Nov 1996 10:30:44 -0500
Organization: John S. Dyson's home machine
Lines: 28
Message-ID: <327A17A4.167EB0E7@freebsd.org>
References: <32762988.167EB0E7@watermarkgroup.com> <558ouv$2a1@prds-grn.demon.co.uk> <3279341C.7E62@watermarkgroup.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Mailer: Mozilla 3.01b1 (X11; I; FreeBSD 2.2-CURRENT i386)
Xref: euryale.cc.adfa.oz.au comp.emulators.ms-windows.wine:5853 comp.unix.bsd.freebsd.misc:30381

Luoqi Chen wrote:
>
> After some research, I think I now understand what has gone wrong.
> During a fork(),
> user ldt table is NOT copied, instead the child will inherit the pointer
> to the
> same table. When one process tries to use a selector the other has
> altered, a fault
> is then signaled (segment not present fault?). I don't know how it ends
> up at
> a setrunqueue panic though.
> 
> The fix would be duplicate the ldt table during fork(). In addition to
> this fix,
> I am working on related changes including, deallocation of ldt table
> after exit and
> set it to default when exec(). I will post the patch after I have done
> testing.
> (BTW, could anyone tell me how to contribute the patch to the
> development team?)
> 
You can send messages to bugs@freebsd.org, or hackers@freebsd.org for
discussion.  Feel free to subscribe to the FreeBSD mailing lists
using majordomo@freebsd.org
in the body, say "subscribe hackers" or somesuch.  The mailing lists
are where most of the FreeBSD action is.

John