Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 7 Aug 2000 15:50:02 -0700 (PDT)
From:      Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
To:        freebsd-bugs@FreeBSD.org
Subject:   Re: kern/11287: rfork(RFMEM...) doesn't share LDTs set byi386_set_ldt, breaking wine
Message-ID:  <200008072250.PAA15907@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/11287; it has been noted by GNATS.

From: Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
To: freebsd-gnats-submit@freebsd.org, freebsd-ports@freebsd.org
Cc: =?ISO-8859-1?Q?J=FCrgen_Lock?= <nox@jelal.kn-bremen.de>,
	Luoqi Chen <luoqi@chen.ml.org>
Subject: Re: kern/11287: rfork(RFMEM...) doesn't share LDTs set byi386_set_ldt,
 breaking wine
Date: Tue, 8 Aug 2000 00:47:22 +0200 (CEST)

 Unfortunately, I have not heard back from Jürgen or Luoqi, so I'm
 going to analyse this piece by piece.
 
 Please remove ports/emulators/wine/files/patch-3.3-sys-ldtshare and
 install the patch at the end of this message. (patch...ldtshare has
 been part of at least two FreeBSD releases now: 4.0, and 4.1, and it
 was not necessary for most Wine applications I tried, so I don't see
 a point in keeping it.)
 
 Gerald
 
 Index: README.patch
 ===================================================================
 RCS file: /sw/FreeBSD/CVSUP/ports/emulators/wine/files/README.patch,v
 retrieving revision 1.3
 diff -u -r1.3 README.patch
 --- README.patch	2000/02/08 09:26:18	1.3
 +++ README.patch	2000/08/07 22:40:58
 @@ -3,11 +3,6 @@
  They unfortunately didn't make it into the base distribution in time
  for the 3.3 release code freeze...
  
 -patch-3.3-sys-ldtshare:
 -make kernel threads (rfork(), which wine uses) share one LDT instead of
 -each having its own.  this fixes the same problem that wine also had on
 -linux kernels before 2.2.
 -
  patch-3.3-sys-sigtrap:
  stop wine's SIGTRAP handler from being called in the sigreturn syscall,
  causing problems for wine's internal debugger.  (it would still
 @@ -29,7 +24,6 @@
  
  Apply as follows:
  
 -	(cd /usr/src/sys && patch ) <patch-3.3-sys-ldtshare
  	(cd /usr/src/sys && patch ) <patch-3.3-sys-sigtrap
  
  And if you don't already have it:
 @@ -39,27 +33,6 @@
  then build a new kernel. (don't forget to include the options USER_LDT,
  SYSVSHM, SYSVSEM, and SYSVMSG, wine needs these.)
  
 -A note about local patches and ctm, cvsup and friends...
 -(if you don't know what those are good for see for example
 -http://www.freebsd.org/handbook/stable.html)
 -ctm cannot deal with local patches (unless you use it to mirror
 -the cvs tree of course, instead of the sources directly), with
 -cvsup i'm not sure but in any case the workaround is simple:  use
 -patch -R to un-apply any local patches before the update (feeding
 -it the patches again as above on stdin), then when the update is
 -finished apply them again.  Should they fail on the updated sources
 -(and you cannot fix it yourself), look for new versions of the
 -patches at the place where you got them, or in this case you
 -can also look in my current wine port tree at
 -http://www.jelal.kn-bremen.de/freebsd/ports/emulators/wine/files/
 -
  -current users:
 -A LDT patch for -current is at http://people.FreeBSD.org/~luoqi/
 -(well in a recent posting on the -current list,
 -http://www.freebsd.org/cgi/mid.cgi?db=&id=199911150745.CAA27884@lor.watermarkgroup.com
 -he said that version is outdated, seems you have to mail him to
 -get a current one), the sigtrap patch looks like it could also
 -apply to -current but i haven't tried.  And the fs/gs patch of course
 -already is in -current.
 -Late note: the LDT sharing fix just seems to have been committed now...
 -(to -current that is.)
 +The sigtrap patch looks like it could also apply to -current but i haven't
 +tried.  And the fs/gs patch of course already is in -current.
 
 


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




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