Port-amd64 archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: compat_bsdos




On Wed, 22 Jul 2020 at 18:44, Steve Blinkhorn <steve%prd.co.uk@localhost> wrote:

Does anyone know when compat_bsdos was abandoned?  It seems to me that
it would make more sense, if I have to run an emulator, to run the
lates version of NetBSD that had compat_bsdos.  It only ever supported
statically-linked software anyway, but I have one major system that
used to run perfectly with the compatibility layer, but throws up error
after error relating to include files and ioctl calls when I try to
run the compilation script on NetBSD.  It had compiled out of the box
on BSD/OS.

> On 2020-07-26 17:00, David Brownlee wrote:
>
> It may be made harder because I don't think NetBSD ever had an
> explicit COMPAT_BSDOS, it was just inferred by various other compat
> options.
>
> A bunch of the compat layers were retired to the Attic a little while
> ago - pretty much because they had no one willing to step up and make
> sure they still worked on an ongoing basis after other areas in the
> system were refactored. If you might be interested in this, then I'm
> sure there would be others willing to help with any questions :-p

I would not say that any BSD compat code is abandoned. As David mentioned, there was no special BSDi compat layer. Binaries from BSD/386 1.0 and BSD/OS 2.0 worked on NetBSD because the executables used the same system calls as 4.3 and 4.4 BSD as covered in COMPAT_43, COMPAT_NOMID, COMPAT_09, and EXEC_AOUT.


> Regarding older versions of NetBSD - I would probably start by trying
> NetBSD-7 i386 to see if your BSD/OS binaries worked, and then going
> backwards or forwards from there :)

Version 7 on i386 is a good starting point.

I found that BSD/OS 2.0 binaries stopped running starting from NetBSD 8.0 onwards the last time I tested earlier this year. Before that running the 2.0 userland in a chroot generally worked and was able to load the shared libraries that were introduced with 2.0. I have not tested later versions of BSD/OS.

What BSDi release were the binaries targeting Steven?

If the binaries worked with BSD/386 1.0, you could try upgrading to current on amd64. There was a fix in March as part of PR/55025 and PR/55047 that I submitted, so BSD compat in general is still supported.

If you try to test further you will want to be sure that your amd64 kernel config includes "conf/compat_netbsd09.config" and COMPAT_NOMID while null memory protection is disabled with sysctl -w "vm.user_va0_disable=0".


Best,

Dan Plassche


Home | Main Index | Thread Index | Old Index