> On Mon, Apr 21, 2014 at 8:20 AM, Mihai Popescu <mih...@gmail.com> wrote: > > Is there a paper explaining the purpose of Linux compatibility in OpenBSD? > > I'm not from UNIX time and I'm curious when and why this feature was added. > > It actually predates OpenBSD, being part of the original import when > OpenBSD split from NetBSD. Ergo, if you want to understand its > original purpose, you'll need to look there.
Chris Torek wrote the original fragments in his 4.4BSD port for sparc. He used this to operte in the SunOS 4.x ABI. When I merged the sparc codebase into NetBSD, I switched to the NetBSD ABI cleanly. I grabbed the opportunity to bring his compat code into the base, and at the same time others used it for other compat purposes, simple ones, quite BSD-like. The "argument transform" stackgap was invented by me then, but the portable abstractions for it were done by others. Then Linux compat showed up. > If you're wondering why > it's still around, well, it's still useful to at least one developer > who does maintenance and some improvements to it. However, it's not > audited as closely and shouldn't be enabled on systems with untrusted > users (and is thus off until enabled by root). To regain trust, someone has to man up and show it love.