Date: Sat, 28 Feb 1998 21:29:32 -0800 (PST) From: Studded <Studded@dal.net> To: freebsd-questions@FreeBSD.ORG Subject: Re: Wine is one shot then reboot (fwd) Message-ID: <Pine.BSF.3.96.980228212455.944A-100000@dt050ndd.san.rr.com>
next in thread | raw e-mail | index | archive | help
I've reached the end of the road with the wine people, their response is that this is a FreeBSD problem. So, anyone willing to review the following and work with me on suggestions/patches etc. to fix it just let me know. :) I'm working with Wine 980215. Our story so far: Here is the one and only patch I included, without this patch wine dumps core as soon as I enter the command. --- scheduler/sysdeps.c.ORIG Mon Feb 16 11:18:12 1998 +++ scheduler/sysdeps.c Mon Feb 16 11:19:13 1998 @@ -128,13 +128,15 @@ { #ifdef __i386__ TEB *teb; - WORD ds, fs; + WORD ds, fs, cs; /* Check if we have a current thread */ GET_FS( fs ); if (!fs) return NULL; GET_DS( ds ); if (fs == ds) return NULL; /* FIXME: should be an assert */ + GET_CS( cs ); + if (fs == cs) return NULL; /* FIXME: should be an assert */ /* Get the TEB self-pointer */ __asm__( ".byte 0x64\n\tmovl (%1),%0" : "=r" (teb) : "r" (&((TEB *)0)->self) ); Here's the story. After a reboot I can start wine just fine, and it runs mirc no problem (for a while anyway, eventually I end up with a situation where I can't receive any info, but I am sending out; but that's been with me for a long time). After mirc ends, whether I exit it normally or it crashes I can't start wine again with any app, I just get an instant "Segmentation fault (core dumped)." So, the first set here is what happens when I try running wine in gdb twice in a row right after a reboot. For what it's worth, when I ran it in gdb the first time here, mirc never appeared. I'm not sure if it's supposed to or not while running in gdb. (gdb) run -winver win31 mirc.exe Starting program: /usr/local/bin/wine -winver win31 mirc.exe Could not stat /mnt/cdrom, ignoring drive D: Program received signal SIGBUS, Bus error. 0xf1 in ?? () (gdb) where #0 0xf1 in ?? () #1 0x8d000000 in ?? () Error accessing memory address 0x8d048d: Invalid argument. (gdb) info registers eax 0x3534 13620 ecx 0xb 11 edx 0x0 0 ebx 0x0 0 esp 0xbc64 0xbc64 ebp 0xbc84 0xbc84 esi 0x0 0 edi 0x1e 30 eip 0xf1 0xf1 eflags 0x10246 66118 cs 0x9e7 2535 ss 0x8d7 2263 ds 0x9ef 2543 es 0x0 0 (gdb) print /x fs No symbol "fs" in current context. Now when I tried to start it again, I got the same errors as before. (gdb) run -winver win31 mirc.exe Starting program: /usr/local/bin/wine -winver win31 mirc.exe Program received signal SIGSEGV, Segmentation fault. 0x16286d in NtCurrentTeb () at ./sysdeps.c:141 141 __asm__( ".byte 0x64\n\tmovl (%1),%0" (gdb) info registers eax 0x1f 31 ecx 0x18 24 edx 0xa17 2583 ebx 0x20350000 540344320 esp 0xefbfd478 0xefbfd478 ebp 0xefbfd478 0xefbfd478 esi 0x10 16 edi 0x20350070 540344432 eip 0x16286d 0x16286d eflags 0x10212 66066 cs 0x1f 31 ss 0x27 39 ds 0x27 39 es 0x27 39 (gdb) print /x fs $1 = 0xa17 I hope the above explains things adequately, if not feel free to write me back. I'm very appreciative of your help with this, I have a couple windows apps that I'd really like to run in freebsd. Thanks, Doug 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?Pine.BSF.3.96.980228212455.944A-100000>