Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 27 Dec 1998 00:06:09 +1030 (CST)
From:      Mark Newton <newton@atdot.dotat.org>
To:        dillon@apollo.backplane.com (Matthew Dillon)
Cc:        cvs-all@FreeBSD.ORG, freebsd-hackers@FreeBSD.ORG
Subject:   Re: LDT entries - Proposed change
Message-ID:  <199812261336.AAA05205@atdot.dotat.org>
In-Reply-To: <199812260504.VAA29295@apollo.backplane.com> from "Matthew Dillon" at Dec 25, 98 09:04:04 pm

next in thread | previous in thread | raw e-mail | index | archive | help
Matthew Dillon wrote:

 > :I have a patch for sys/i386/include/segments.h and sys/i386/i386/machdep.c
 > :which changes LUDATA_SEL from 4 to 5 (why 5?  Why not?) and provides for
 > :system call entries via LDT entry 4 (termed LSOL26CALLS_SEL at present).
 > 
 >     Unless you think you'll have the solaris emulation done by the 3.0.1 
 >     release,

I don't think it'll ever be "done" any more than the Linux emulator
is ever "done".

It's currently in a state where it runs a decent selection of 
Solaris software with libraries from a Solaris 2.5.1 CD-ROM
and a somewhat smaller selection of software if libraries are
taken from a Solaris 2.6 CD-ROM (we've only just got executables
to run with 2.6 libraries at all due to the LDT issue described
above, and Sun has made enough libc/ld.so.1 changes between 2.5.1
and 2.6 to tickle the edges of the emulation's accuracy, so a
bit more work will be required to provide 2.6 libraries with
an environment where they can provide the same functionality as
2.5.1 libraries).

I think most of those issues are actually answered by changes in
the NetBSD codebase that I haven't tracked so I don't expect them
to represent a major problem.

I've had RealPlayer for Solaris 2.5.1 working (without audio) and
most of the OpenWindows stuff from /usr/openwin on a Solaris/x86 CD.
I've also done a small amount of fiddling with a SCO OpenServer
CD-ROM with reasonable success.  There's still a lot of work to do,
but the core is there and limping along.

I expect that bde will complain about some stylistic issues, but
I'm keeping them in mind too :-)  It's still an LKM, it compiles
with too many warnings, and there are too many bits enclosed by
#ifdef BOGUS or #ifdef NOTYET that I haven't had time to give attention
to yet.

http://www.freebsd.org/~newton/freebsd-svr4/index.html

 >     I would recommend waiting until the source tree split
 >     before commiting this change.  I can't think of any specific problems 
 >     that might occur but I don't think a month is long enough to test
 >     something like this and while the direct LDT references are constrained
 >     to a few files in i386, those files are pretty convoluted and it's 
 >     a pretty scary change to make.

I don't have a major problem with any of that.  Whether it's committed
or not I'll still be working on it, so this means it'll just be better
when it is finally committed.

When the time comes I'll also need to change a couple of prototypes
(to un-staticize a couple of symbols in uipc_syscalls.c) and add a 
field to the end of struct socket in order to support emulation of
icky SysV STREAMS over BSD sockets.  I've been going over those with
Mike Smith and discussed them briefly with Garrett earlier this
year;  See http://www.freebsd.org/~newton/freebsd-svr4/svr4patch
for more diffs against 3.0-RELEASE.

    - mark

--------------------------------------------------------------------
I tried an internal modem,                    newton@atdot.dotat.org
     but it hurt when I walked.                          Mark Newton
----- Voice: +61-4-1958-3414 ------------- Fax: +61-8-83034403 -----

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



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