Date: Sun, 13 Mar 2005 15:26:24 -0700 (MST) From: "M. Warner Losh" <imp@bsdimp.com> To: mikej@rogers.com Cc: freebsd-current@freebsd.org Subject: Re: COMPAT_43 ? Message-ID: <20050313.152624.59920781.imp@bsdimp.com> In-Reply-To: <2617.172.16.0.199.1110748478.squirrel@wettoast.dyndns.org> References: <2617.172.16.0.199.1110748478.squirrel@wettoast.dyndns.org>
next in thread | previous in thread | raw e-mail | index | archive | help
In message: <2617.172.16.0.199.1110748478.squirrel@wettoast.dyndns.org>
"Mike Jakubik" <mikej@rogers.com> writes:
: What does COMPAT_43 in the kernel really do? And is is really needed?
Depending on the version of FreeBSD it is needed for the following
things:
(1) the Linux emulation layer has 4.3bsd like functions that
this implements. (in fact, it appears this is still the
case).
(2) The svr4 emulation layer likewise.
(3) The old signal handling code is under this, and is
necessary to run FreeBSD 1, 2 and 3 binaries it seems.
(4) There's an old mmap and getpagesize system call that's
under it, which likely is there to run old BSD binaries
(don't know if this is BSDI ones, or old FreeBSD ones
too).
(5) Translation of old ioctl interfaces for network layer
interactions to new (this is why #1 depends on it)
(6) The old creat, mknod, lseek, stat, truncate, getdirentries
interface are covered by this as well (again, so old
binaries can work, and likely there's some emulation code
that depends on it).
(7) A boatload of old ioctls for the tty system are 43 compat
code (and are also under burn bridges). At one point in
time, xterm required these calls. Now, that's no longer
the case.
(8) Old interfaces to sysv shared memory, getting the hostname
(etc).
There's likely a few more I overlooked.
Warner
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050313.152624.59920781.imp>
