tech-kern archive

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

Re: Missing compat_43 stuff for netbsd32?



    Date:        Tue, 11 Sep 2018 12:53:20 -0700
    From:        Brian Buhrow <buhrow%nfbcal.org@localhost>
    Message-ID:  <201809111953.w8BJrKuZ015601%lothlorien.nfbcal.org@localhost>

  | 	hello.  I think, but am not certain, that old NetBSD-0.8 binaries
  | might use some of those 4.3 syscalls.  I have a few binaries I'm still
  | using from  NetBSD-0.9A days which may use those syscalls as well.  I know
  | that I use COMPAT_43 in all of my kernel configs, and I have this vague
  | recollection that when I forgot to include that in one build, those
  | binaries broke.

That would be true of the syscalls that actually are emulated in COMPAT_43
but the ones Paul asked about, I suspect, were ones obsoleted even earlier
than that.   That is, I believe they were not 4.3BSD sys calls which have
changed since (since there would be no reason at all to do that for wait())
but even older sys calls that were already oxxx() in 4.3 (and probably
even earlier.)

There really has not been an application built since the mid 80's (on a BSD
system, and well before there were non-vax BSD ports) that ever used the
wait()  sys call.   SunOS would have only used in in whatever they called
the thing that ran on Sun 1's - pre BSD SunOS.  wait(2) was really wait(3)
and was implemented using wait3(2) (if you can sort that out).     You'd
need to have a binary from (almost) preceding job control (4.0BSD - or was
that in 3BSD) to have something actually using wait(2) as a syscall.   If I
remember correctly, there was a period when both wait() and wait3() were
sys calls, but it was a fairly short period.    Of course back at the time old
binaries that did use wait(2) were common - so owait() was needed to handle
them, but I cannot imagine anyone finding such a binary now (and certainly
not for anything that is not a vax).

I also suspect that the oquota() referred to might have been the one I 
initially implemented, which was never released anywhere - the version
in 4.2BSD was different, and had a different quota struct (and so needed
a different sys call - but the old binaries were, again, still around, at that
time.)   Again, if this is what that was, nothing but a vax ever issued the
(old) quota() sys call.   After that I don't recall any changes to quota(2)
until quota2() was invented (much more recently).

kre



Home | Main Index | Thread Index | Old Index