Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 3 Sep 1999 00:39:32 -0400 (EDT)
From:      Luoqi Chen <luoqi@watermarkgroup.com>
To:        luoqi@watermarkgroup.com, nox@jelal.kn-bremen.de, weigand@informatik.uni-erlangen.de, wine-devel@winehq.com
Cc:        freebsd-emulation@FreeBSD.ORG
Subject:   Re:  wine signal handlers lose %fs on FreeBSD
Message-ID:  <199909030439.AAA02576@lor.watermarkgroup.com>

next in thread | raw e-mail | index | archive | help
> 
> > I took a brief look at the exception code, it probably would not work
> > under 4.0-current because the kernel uses %fs and signal handlers are
> > called with a default %fs value (the same as the default %ds). You might
> > need to restore %fs from the value in sigcontext at beginning of your
> > signal handlers (yes, fs in sigcontext is set for 4.0-current. Regarding
> > this, we could change the kernel, both -current and -stable, so that fs/gs
> > are always saved in sigcontext when the signal is delivered, and restored
> > during the signal trampoline, hence a consistent interface to application
> > authors). Alternatively, we could change the kernel to call signal handlers
> > with the original fs.
> 
> Well, Wine can work with both ways, as long as there is way to find
> out what method the OS uses!  What should we use as a check?
> 
Use #if __FreeBSD__ >= 4 , define FS_sig in this case.

-lq


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-emulation" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199909030439.AAA02576>