From owner-freebsd-emulation Mon Feb 16 11:01:18 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id LAA22488 for freebsd-emulation-outgoing; Mon, 16 Feb 1998 11:01:18 -0800 (PST) (envelope-from owner-freebsd-emulation@FreeBSD.ORG) Received: from watermarkgroup.com (lor.watermarkgroup.com [207.202.73.33]) by hub.freebsd.org (8.8.8/8.8.8) with SMTP id LAA22478 for ; Mon, 16 Feb 1998 11:01:13 -0800 (PST) (envelope-from luoqi@watermarkgroup.com) Received: by watermarkgroup.com (4.1/SMI-4.1) id AA20131; Mon, 16 Feb 98 14:00:30 EST Date: Mon, 16 Feb 98 14:00:30 EST From: luoqi@watermarkgroup.com (Luoqi Chen) Message-Id: <9802161900.AA20131@watermarkgroup.com> To: emulation@FreeBSD.ORG, scrappy@hub.org Subject: Re: wine 980215 Sender: owner-freebsd-emulation@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org I guess no one paid any attention to my previous post several days ago regarding this problem. The cause of the crash was that wine expected fs to be the same as ds initially, but this is not the case on FreeBSD. Fs is set to cs instead. There are two solutions. 1. Set fs to ds in the kernel, 2. Initialize fs to ds at the very beginning of wine, before any call to the scheduler module. -lq > This problem seems to be unresolved for the last several releases...I know > nothing at all about assembly, and wouldn't even know where to start, > so...does anyone know of a fix for this? :( > > # gdb /usr/local/bin/wine wine.core > GDB is free software and you are welcome to distribute copies of it > under certain conditions; type "show copying" to see the conditions. > There is absolutely no warranty for GDB; type "show warranty" for details. > GDB 4.16 (i386-unknown-freebsd), > Copyright 1996 Free Software Foundation, Inc... > Core was generated by `wine'. > Program terminated with signal 11, Segmentation fault. > Reading symbols from /usr/libexec/ld.so...done. > Reading symbols from /usr/X11R6/lib/libXpm.so.4.9...done. > Reading symbols from /usr/X11R6/lib/libSM.so.6.0...done. > Reading symbols from /usr/X11R6/lib/libICE.so.6.3...done. > Reading symbols from /usr/X11R6/lib/libXext.so.6.3...done. > Reading symbols from /usr/X11R6/lib/libX11.so.6.1...done. > Reading symbols from /usr/lib/libm.so.2.0...done. > Reading symbols from /usr/lib/libc.so.3.0...done. > #0 0x162835 in NtCurrentTeb () at ./sysdeps.c:139 > 139 __asm__( ".byte 0x64\n\tmovl (%1),%0" > (gdb) list > 134 GET_FS( fs ); > 135 if (!fs) return NULL; > 136 GET_DS( ds ); > 137 if (fs == ds) return NULL; /* FIXME: should be an assert */ > 138 /* Get the TEB self-pointer */ > 139 __asm__( ".byte 0x64\n\tmovl (%1),%0" > 140 : "=r" (teb) : "r" (&((TEB *)0)->self) ); > 141 return teb; > 142 #else > 143 if (!pCurrentThread) return NULL; > (gdb) > > > Marc G. Fournier > Systems Administrator @ hub.org > primary: scrappy@hub.org secondary: scrappy@{freebsd|postgresql}.org To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-emulation" in the body of the message