Can anyone help clarify details about the FreeBSD system call interface?
John Baldwin
jhb at freebsd.org
Thu Sep 4 15:56:08 UTC 2014
On Wednesday, September 03, 2014 05:30:01 PM Benjamin Kaduk wrote:
> On Thu, 28 Aug 2014, Steven Stewart-Gallus wrote:
> > > svn blame says that the whole implementation dates from r1541.
> > > Looks like
> > > it was never implemented. Some googling indicates that it was a
> > > plannedroutine to set the stack size, which was never implemented,
> > > anywhere.
> > >
> > > The locking comments were added in r79224, but the implementation is
> > > otherwise from r1541, i.e., it was never implemented.
> >
> > Alright, so sys/kern/syscalls.master can be patched somewhat like so
> > and I won't need to document them?
> >
> > -72 AUE_O_VADVISE STD { int ovadvise(int anom); } vadvise \
> > - ovadvise_args int
> > +72 AUE_NULL OBSOL ovadvise
> >
> > -70 AUE_SSTK STD { int sstk(int incr); }
> > +70 AUE_SSTK OBSOL sstk
>
> I don't think so; I think that would be a regression.
>
> We do currently provide implementations for these syscalls, that just
> happen to always return failure. I think that the OBSOL annotation
> corresponds to a complete lack of implementation. Perhaps it would be
> acceptable at a major release boundary, but this is not my area of
> expertise.
For these two calls, I doubt anything is actually using them. They've been
stubs since the Mach VM was imported into BSD in 1990. We don't ship a system
call for creat() anymore either. In this particular case, I think it would be
more of a feature if those symbols disappeared from libc and caused link
errors.
--
John Baldwin
More information about the freebsd-hackers
mailing list