Interview: Ask Theo de Raadt What You Will 290
Theo de Raadt was a founding member of NetBSD, and is the founder and leader of the OpenSSH and OpenBSD projects. He is currently working on OpenBSD 5.5 which would be the projects 35th release on CDROM. Even though he'd rather be hiking in the mountains or climbing rocks in his free time, Theo has agreed to answer any question you may have. As usual, ask as many as you'd like, but please, one question per post.
NSA (Score:3, Interesting)
Has the NSA scandal changed the status of the OpenBSD project?
Re: (Score:3, Insightful)
Or rather
What effect has the revelations from Snowden on the presence of active monitoring of communication in the US had on creating user demand for more secure systems?
Re: (Score:2)
Has the NSA scandal changed the status of the OpenBSD project?
posting to undo bad mod, but also interested what effects Snowden leaks specifically the revelations of backdoored hardware and bugged hardware have had on OpenBSD, Is there anything that can be done in software for untrusted hardware?
NSA Involvement (Score:5, Interesting)
Re: (Score:2)
This has been answered before, on slashdot too.
Would you ever retire? (Score:3)
Re: (Score:3)
This has already been answered here: http://marc.info/?l=openbsd-mi... [marc.info]
Value of certification (Score:2)
Sparc64 and Oracle (Score:5, Interesting)
I recently needed a free software operating system that could replace Solaris on a couple of Sun UltraSparc machines. After testing out the relatively small number of alternatives I found that OpenBSD had by far much better hardware support than the others. I know that a lot of this is the result from the effort your group spent a couple of years ago to get docoumentation from what used to be Sun. How would you describe collaboration with Oracle now when they run the remains of Sun, in particular around supporting modern Sparc64 based systems?
Re: (Score:2)
(Also using OBSD on Sparc64 servers)
updated OpenBSD rack picture? (Score:3)
the rack picture on the lower right corner of the www.openbsd.org was taken in 2009. since architectures retired and some added since then, could we have a new circa 2014 picture?
Smoother Chroot and Sftponly integ into OpenSSH? (Score:4, Interesting)
Re:Smoother Chroot and Sftponly integ into OpenSSH (Score:5, Informative)
First off, add a group that you call f.e. "sftponly". New users that are to be allowed only sftp access should have "sftponly" as their login group, and have
Secondly, the sshd_config magic that makes the whole charade work:
Subsystem sftp
Match Group sftponly
ForceCommand internal-sftp
ChrootDirectory %h
Re: (Score:3)
Raspberry Pi-class hardware - BeagleBone Black? (Score:5, Interesting)
I would like to run OpenBSD on the Raspberry Pi.
I understand, sympathize, and accept your decision to avoid that platform, but what would you recommend as a stable substitute?
The BeagleBone Black seems like the endorsed alternative, although there were stability warnings until recently. The current status reads: "There are generally still a fair number of things to do on each of these boards, however OpenBSD is generally considered to be usuable on them. The platform is now self hosting, however there is no SMP support."
Would you point OpenBSD users interested in this hardware class at the BeagleBone Black? Any other advice? SLC media preference?
TI has announced that it is discontinuing the OMAP line. Will Beagle move to another ARM licensee, and does that matter much for OpenBSD?
Re: (Score:2)
Those are x86 parts. I'd prefer a low-power ARM, as long as I get W^X, rodata, and I otherwise do not have to compromise on security.
Perhaps the recent source release from Broadcom [raspberrypi.org] is sufficient to make OpenBSD support easier, but I fear that the developers' perspective is now set.
Trying too hard (Score:2, Insightful)
Slashdot interviews for Richard Stallman, Eric Raymond, and now Theo, all in the last week?
What happened? Did someone at Dice push Slashdot management to try and "reclaim technical roots"? Is someone a little worried about http://soylentnews.org/ [soylentnews.org]? Or maybe this is part of a last-ditch effort to increase revenue^W^W reclaim reader loyalty?
Slashdot Media was acquired to provide content and services that are important to technology professionals in their everyday work lives and to leverage that reach into the global technology community benefiting user engagement on the Dice.com site. The expected benefits have started to be realized at Dice.com. However, advertising revenue has declined over the past year and there is no improvement expected in the future financial performance of Slashdot Media's underlying advertising business. Therefore, $7.2 million of intangible assets and $6.3 million of goodwill related to Slashdot Media were reduced to zero.
source [diceholdingsinc.com].
Perhaps not, but really, you guys are still trying way too hard now. I'd have thought you realized by now that successfully running a site like this is a marat
Re: (Score:3)
When I looked at Soylent News this morning, there were 5 or so stories with less than 5 comments, and the quality of some of the last few submissions has actually been worse than what we typically see here. I'd like SN to succeed and viable competition should force Slashdot to improve, but it's going to take some real effort.
Re: (Score:3)
Yeah, soylentnews seems to be fizzling.
It's a shame really, but I suspect it won't be the last "bring back old slashdot" effort. Eventually someone will get it right / get enough momentum to keep going. It might happen if slashdot ever actually switches everyone to beta.
Yes try too hard!! (Score:4, Funny)
I applaud efforts to make slashdot more technically relevant and useful and interesting, keep trying too hard!
Re: (Score:2)
Slashdot interviews for Richard Stallman, Eric Raymond, and now Theo, all in the last week?
I only hope we get the answers to all of them. If you watch carefully, every now and then there seems to be a Q&A session here with no answers ever posted!
Finances and technologies (Score:4, Interesting)
OK, tongue-in-cheek question: did you cash in all those bitcoins before Mt Gox imploded?
More seriously: what are your thoughts on the future of ZFS, BHyve, non big-lock SMP, SMP-enabled pf (see NetBSD npf) on OpenBSD?
Related question: what is the future of OpenSSH-based VPN functions?
Even more seriously: in light of the recent Snowden revelations on NSA spying, can you tell us more about the audits realized after a few (past) developers were accused of creating backdoors in OpenBSD for the FBI?
Finally, and this is not a question: all my thanks for a great OS. I use it daily and truly appreciate all the hard work.
Re: (Score:2)
What part of "As usual, ask as many as you'd like, but please, one question per post." don't you understand?
Re: (Score:2)
What's your average day like? (Score:5, Interesting)
Re: (Score:2)
No one on their deathbed ever said "Gee, I wish I had spent more time at the office."
Yeah, but he's not dead yet. In fact, he thinks he'll go for a walk....
signed code (Score:4, Interesting)
What are your thoughts on code signing, and do how do you see the development of such proceeding in the free unix world. In Powershell for example, i can set a system-wide policy to only run scripts if they are signed with a trusted certificate.
This means I can, for example, delegate script development to an underling, review the script and then sign and push into production, knowing that the script will not run if it has been modified in the field without authorization - enabling proper change management process to be enforced.
Other platforms require all code to be signed before it will run.
Do you foresee anything like this (obviously with the master signing authority being the local site admin) for OpenBSD?
Thanks for all your work... (Score:2)
I know it can sometimes be more of a burden, but thanks for all the work you have done Theo. I use OpenSSH everyday, and I find it to be one of the most reliable, most secure (even with all the NSA revelations) pieces of software in daily use around the world.
That being said, the more I investigate how to increase security, I am increasingly struck by how borked SSL is as a whole. (CA messes, vulnerable to MITM, DPI, etc).
My question is this: do you think at some point we should start re-evaluating our fund
Re: (Score:2)
Re: (Score:2)
https://www.ietf.org/rfc/rfc42... [ietf.org]
Cryptographically they are just as secure as each other (why you need the libraries from OpenSSL for OpenSSH), but it's the implementation that suffers.
Re: (Score:2)
Cross Pollination (Score:2)
I appreciate the fundamental work that OpenBSD does in security and other areas, especially things like the recent work in getting X to run without privileges.
AFAIK OpenBSD was the first to accomplish this, and I'm wondering how much of that research and know-how, maybe not code, can be used by other *NIXes? I know there are license conficts between the BSD's and Linux, but how much of the experience gained from that effort can be used to improve other *NIXes even if code cannot be reused? Is the OpenBSD
Any apps porting activities on? (Score:2)
Re: (Score:2)
I was asking the second question. I know anything can (w/ the required time, effort & manpower) be ported anywhere. My question was - is OBSD already, or can it be made capable of running Linux (or FBSD) binaries OOTB (w/ appropriate support packages installed)? Yeah, VMs are a fallback option, but then an argument would be made that if one has to run FBSD or Linux VMs, why not run those OSs on the bare metal?
So does OBSD have the same variety of software available as do the others? I'm not talkin
What other platforms? (Score:4, Interesting)
Re: (Score:2)
there is dead in the sense of "no longer sold", but if many people still use a platform and can have a modern current OS running, is it really dead?
Re: (Score:2)
Re: (Score:2)
Those platforms still help finding new undiscovered bugs. That's one of the points in continuing support for those.
What other OS (Score:2)
If you couldn't use OpenBSD anymore what other OS would you prefer to work with?
strcpy (Score:2)
.
I know you are a proponent of strlcpy. Why do you think some projects resist using it so much?
OpenBSD and Wi-Fi (Score:3)
I understand that Wi-Fi portions of OpenBSD aren't exactly prioritized, but are these issues even on the roadmap?
Re: (Score:2)
What does OpenBSD/OpenSSL/etc. need? (Score:3, Interesting)
In your opinion, what does OpenBSD/OpenSSL/etc. need from the community?
Now that you received a large donation to keep the lights on, what is next on the list of things that would help move things forward?
Re: (Score:2)
Did you mean OpenSSH? I'm pretty sure OpenSSL isn't from the OpenBSD team.
Any plans of getting a proper auditing daemon? (Score:2)
Was documentation a priority? (Score:3)
As a software developer I know that documentation often falls to the wayside (features take priority, schedule already tight etc). As a project manager it's difficult to get good documentation (staff does poor job, stakeholders don't want to pay for it etc). OpenBSD has really good documentation (in my opinion) and it was really useful when initially getting to know OpenBSD, PF etc. Most of the pay for middleware I use has documentation that is absolute shit (incomplete, wrong, not up to date etc). To me the state of documentation in OpenBSD is more impressive than "Only two remote holes in the default install, in a heck of a long time!". Of course, "You'll love our man pages!" doesn't have quite the same ring to it.
Re: (Score:2)
Documentation is more important than code. He insists on documentation first.
I once watch him rip a developer a new one (and ripped out code) because the developer committed code without documentation.
Need replies to call them interviews! (Score:5, Insightful)
There have been a whole lot of these question threads without any replies in the past few months (6 other threads in the past 3 months, all unanswered). Do these people actually know they are being interviewed, or are these just empty topics posted to bolster lagging page views/ad impressions?
They will eventually post replies (Score:2)
I have wondered though - interviews with RMS, Theo De Raadt, Eric Raymond (lol) have all been promised. It's as if
Brand recognition in router/firewall space (Score:2)
Only two remote holes in the default install ... (Score:2)
Exactly how much is "a heck of a long time" and for how much were those two remote holes exploitable ?
OpenBSD and the 1000M limit (Score:2)
The last time I tried to run OpenBSD, it was so I could test our static analyzer Fortify SCA on the kernel.
One thing that really held me back in my research is that processes were limited to about 1 Gigabyte of RAM each. What exactly is the reasoning behind this hard limit?
Note: I never finished my work, but it would be totally cool to compete this someday.
Why the gripe about Linux using BSD code? (Score:2)
Theo de Raadt: why the bitching about BSD code put in GPL?
http://kerneltrap.org/OpenBSD/Atheros_Driver_Developments
And that's not the only article I've seen about BSD advocates bitching about BSD code being put into GPL code.
I don't get it. BSD advocates are fine with MS taking BSD code, and claiming it as MS code, and releasing only in binary. But, the BSD advocates bitch about BSD code being put into GPL open-source? WTF?
As I understand it, BSD is almost public domain. I can take BSD code, and relicense i
Re: (Score:2)
As I understand it, BSD is almost public domain.
Its not. You retain full authorship, so deleting the license and pasting a new one directly violates the license.
I can take BSD code, and relicense it any way I please
No. You cannot remove the BSD disclaimer from the source and/or claim it as your own.
If you want kernel improvements to be implemented back, why license your code under the BSD to begin with?
One of the reasons TCP/IP is a huge success is because it was BSD licensed. As many fundamental daemons that gave name to some pretty well-known services that we now call "internet" collectively.
When you release your code BSD, you allow relicensing. That's why MS prefers the BSD license.
Also Apple. And every other sane company that doesn't do business selling "open source", but products with added value.
Audit & quality (Score:2)
The OpenBSD project spends a lot of time on audits, but I know little about this process. How does it work? Do you just read the code and look for bugs based on experience? Do you use tools? Is there a audit-specific skill set that separates auditors from regular programmers? Are there specific books about audits that you would recommend? What is the best piece of code you have ever seen (or written?). Also, non-system programmers talk a lot about TDD and unit testing, but system programmers in general do n
Compiler upgrade (Score:3)
OpenBSD is built using gcc 4.2, which is getting old by now.
While being old isn't an indication of being bad or wrong, is there any concrete plan
to either upgrade the base compiler, replace it with clang or some other compiler ?
Re: (Score:2, Insightful)
that's your opinion which is not widely shared by OpenBSD users. those of us who like to get things done w/o the opinionated whining and design by committee crap found in nearly every other open source project.
shut up and code.
Re:Why are you such an asshole? (Score:5, Funny)
former Linux server advocate here, switched to OpenBSD as my favorite server OS 13 years ago after seeing how Theo was such an asshole about security, correctness, robustness, and preserving the BSD way and philosophy of systems admin
Re: (Score:2, Funny)
more successful?
millions of devices (including those from Cisco, Juniper, NetApp, EMC, Apple, etc.etc.) and many OS use code from Theo's projects. Maybe you are just an asshole, but Theo is a hugely successful one?
Re:Why are you such an asshole? (Score:5, Interesting)
Do you realize your project would be more successful and provide more value to the community if you weren't such an asshole?
How screwed up would the project be had he not been such an "asshole" as you describe?
The truth hurts. Just because people can't handle it and get butthurt doesn't make the person an asshole for pointing out the truth.
I'd also like to know how you feel about other CEO's out there that have proven far more of an asshole than Theo could do in 20 lifetimes. He's a nice guy by comparison. Trust me.
Re: (Score:2)
It's actually a sad trend, but yeah, you'll find people with massive egos who don't mince words behind many successful projects. Sometimes you need someone with no hesitations about ripping someone a new one for doing something stupid, even if it means that person may quit/stop contributing.
Linux, Apple, and Microsoft all found their success with this type of personality at the helm.
Anoplasties can be done without swearing (Score:3)
Sometimes you need someone with no hesitations about ripping someone a new one for doing something stupid
Yes, I agree that sometimes an anoplasty is needed. But that doesn't mean you have to use an abrasive tone while doing so. There are usually ways to get a point across with wit and good analogies instead of NSFW language. It worked for Jesus of Nazareth when he tore the leaders of Pharisaic Judaism a new one for their hypocrisy [wikipedia.org].--Matthew 23:1-39.
Re:Anoplasties can be done without swearing (Score:4, Funny)
“It's now very common to hear people say, 'I'm rather offended by that.' As if that gives them certain rights. It's actually nothing more... than a whine. 'I find that offensive.' It has no meaning; it has no purpose; it has no reason to be respected as a phrase. 'I am offended by that.' Well, so fucking what."
~Stephen Fry
Re: (Score:2)
Re: (Score:2)
You're claiming something worked for a living God, so it must also work for software engineers? Or are you claiming that nobody who lacks all possible social skills should run a major project? We seem to have some people who have been very successful who can be quite abrasive. Whether there's a connection, I don't know, but I'd rather have good software developed by teams led by assholes than crappy software developed by really nice people.
Re: (Score:2)
SF double standard (Score:2)
Being nice takes up too much time, being terse and quick is key.
You can be terse and quick without profanity.
And for the record, please don't quote and site works of fiction
Wouldn't that apply to geeks' favorite SF [slashdot.org] as well?
Paul of Tarsus swore (Score:2)
tall fables of religions past
Please see my reply to bberens [slashdot.org].
On top of that, how do you know what kind of language was considered profane or not back then?
Koine Greek is a fairly documented language. There is swearing in The Bible [evidenceunseen.com], and Paul of Tarsus was a lot dirtier than Jesus. On the other hand, maybe some people are right that perhaps we need a Theo for the same reason the characters in The Bible needed a Paul.
Re: (Score:2)
Because when I quote from LOTR, I know it's not real. However, I don't think as many people who quote The Bible is aware that it is not real. YMMV of course.
Re: (Score:3, Interesting)
It takes a very special person to be able to be an asshole and not alienate people. Steve Jobs is a famous example,
Re: (Score:2)
Linux Torvalds? Really? On Slashdot? In 2014?
Come on...
Re: (Score:2)
I don't even think they're even playing the same game, most assholes are just playing power games gathering sycophants, bullying those they can bully and sucking up to their superiors. Actual skill is mostly irrelevant and in fact superior skills and abilities might be threatening to them. The "good" assholes are usually trying to train their minions, like you can't cuddle a dog that just has chewed up your shoes unless you like having your shoes chewed up. You have to convey that it has been a bad dog and
Re:Why are you such an asshole? (Score:5, Informative)
How screwed up would the project be had he not been such an "asshole" as you describe?
Way back when, I brought up to the OpenBSD mailing list that position-independent executables (PIE) on x86 would incur a negligible performance penalty while increasing the effectiveness of certain security measures--the randomization of stack, library, and heap base--significantly.
Theo immediately pulled the discussion off-list to tell me that the optimization is "very expensive" (i.e. incurs a huge performance hit). He bolstered his argument by repeating, across 14 e-mails, "We invented this stuff, I know what I'm talking about" and "I don't even know who you are, everyone knows who I am".
Linux had oprofile.
I ran some measurements. The performance hit without relying on -fomit-stack-pointer was some 0.6%, and with -fomit-stack-pointer you got a 5.2% boost unrealized. We could call the raw performance hit 5.8%. -fPIE code is 5.8% slower.
Further, most programs spent substantially less than 0.2% of their execution time in the main executable. -fPIE only affects the main executable; multiplying this together gives us 0.2% * 5.8% = 0.0116%. This means that, in any one hour period, if you could find a total of 0.42 seconds of CPU time (i.e. CPU at 50% for 0.84 seconds, CPU at 0% for 0.42 seconds, etc.), -fPIE would have zero real impact. If your system is pegged at 100% for 24 hours, it will be pegged at 100% for 10 seconds longer. In 60 seconds, you need 0.0070 seconds of additional CPU time to handle this optimization.
In short: Theo was wrong. He derailed the conversation off-list probably because he didn't have a real argument and was afraid of being proven wrong. He's never admitted he was wrong, and probably considers the whole argument a moral victory.
The whole exchange has taught me that OpenBSD is just another nobody-fucking-cares OS with a bunch of shiny egostroke things like strlcpy() and probably less security than anything else. I wonder how many security holes have gone unseen, how many improvements have papered over unacknowledged previous issues, and so on. OpenBSD uses very specific language: only two remote exploits in the default installation in however many decades. That's because OpenBSD comes with everything switched off--like Ubuntu before Avahi--so there's no attack surface. It's great marketing, but it has no bearing on how much of the code base is secure or how risky it is to run OpenBSD vs Linux vs Windows.
Theo's manner says that the above assessment has a high probability of being valid. Not a majority probability, but a high probability: most people claim OpenBSD is "secure", and in fact I spent a time editing this out of Wikipedia because every security article cited OpenBSD--up to and including listing "use OpenBSD" under "ways to improve computer security". This was not NPOV, and I have found no empirical studies of OpenBSD security--Coverity hasn't even run their tools against the code base, and I've seen no widely published studies on number of practically exploitable local privilege escalations and shipped daemons and such comparing OpenBSD to FreeBSD and Linux and so on--so it was inappropriate. But it does say that the normal assessment is that OpenBSD is probably "secure"; and I find a lot of soft evidence suggesting that this assessment is not reliable without more hard scientific evidence. A lot has gone into showing why OpenBSD "is secure", and very little has gone into showing that it's "not as insecure".
Linus has a massive ego and can be harsh, but he admits this and admits he has been wrong and the culture around Linux is different. Linus is sub-optimal, and the poor handling of negotiation by the Grsecurity and PaX people stunted Linux security development for a while, as did a number of other things; but Theo is the quintessential off-the-deep-end egomaniac. His technical expertise is highly questionable.
Re: (Score:2)
The whole exchange has taught me that OpenBSD is just another nobody-fucking-cares OS with a bunch of shiny egostroke things like strlcpy() and probably less security than anything else.
What convinced me that openbsd was developed by whiny lazy babies was trying to use my Acer Aspire One D250, one of the commonest netbooks made. The commonest wlan card used in it is unsupported. So I went looking for any prior attempts and sure enough, someone had ported some changes to the driver from Linux and got it working in a substantially old revision. But even though one of the core developers has the same netbook with the same NIC, the patch was not accepted. The excuse given was FUD about licensi
Re:Why are you such an asshole? (Score:4, Informative)
FUD about licensing issues? The BSDs are under non-copyleft licenses, and can't use code released only under the GPL. That's a matter of legality, not an issue that can bet settled. If archangels were to descend with the perfect device code, blessed by God, Buddha, and Sheldon Cooper, but it released only under the GPL, neither Theo nor Microsoft could touch it.
Re: (Score:3)
FUD about licensing issues? The BSDs are under non-copyleft licenses, and can't use code released only under the GPL.
Good thing the patch didn't use any code from linux, just some values garnered from one of the drivers. Reverse-engineering for the purpose of interoperability is explicitly permitted under the DMCA.
Re: (Score:2)
You're not the first person to suggest something to Theo, only to have him shoot down your idea.
In my case, I suggested a profiler that you'd run an exe under, and it would catalog the syscalls that the binary made, and all the syscall arguments. That profile would be stored for that program in a repository.
After the profile was created, if the program ever deviated from its syscall profile, the syscalls would fail and the binary would be terminated.
The goal here would be to holistically stop programs from
Re: (Score:2)
I can build a car from parts. That makes me neither a mechanic, nor an engineer. You would be surprised the vast array of things I've accomplished without the correct technical skill. The problem here is I've also often addressed problems wholly incorrectly, and failed to recognize severe problems. Why? Because I'm functionally a trained monkey who can get from point A to point B if you tell me where the two points are; the fact that I can find a path doesn't mean I know a damned thing about what I'm do
Re: (Score:2)
I look forward to reading a paper from you where you show, factually, that your use of source analysis tools finds vulnerabilities that the OpenBSD team missed.
It should be easy, right?
You'll be a hero. The first person, apparently, to ever look at OpenBSD critically. The first person to test it.
Get over yourself. Accept that they've put out a great product, your butthurt notwithstanding.
Re: (Score:2)
Theo did that once. The result was embarrassing. Like a retarded farmer arguing vehemently about how to spell 'diary kaw'.
Now that I go back and look, post-flamewar, there's release notes for OpenBSD talking about importing a lot of fixes for stuff found by Coverity run against OpenBSD tools that were included in NetBSD, which got a Coverity report. It looks like there's a fair pile of improvements in OpenBSD kernel, OpenSSH, OpenSMTPD, and other OpenBSD projects that now come from static analysis.
I g
Re: (Score:2, Interesting)
Ok, so your premise, from one email altercation, is that Theo's attitude is so intense, so "he can never be wrong", that openbsd has no security advantages. Never mind that the premise is ridiculous.
But the actual evidence suggests that internet arguing aside, openbsd eventually adopts valuable security practices and technologies that Theo initially disagrees with.
So, what was the point of your first post, exactly?
Are you going to modify your position on openBSD, now that you know the project incorporates
Re: (Score:2)
I'm an OpenBSD user since 2.9. I stopped using it
Re: (Score:2)
Re:Why are you such an asshole? (Score:4, Informative)
Way back when, I brought up to the OpenBSD mailing list that position-independent executables (PIE) on x86 would incur a negligible performance penalty while increasing the effectiveness of certain security measures--the randomization of stack, library, and heap base--significantly.
Theo immediately pulled the discussion off-list to tell me that the optimization is "very expensive" (i.e. incurs a huge performance hit). He bolstered his argument by repeating, across 14 e-mails, "We invented this stuff, I know what I'm talking about" and "I don't even know who you are, everyone knows who I am".
Linux had oprofile.
I ran some measurements. The performance hit without relying on -fomit-stack-pointer was some 0.6%, and with -fomit-stack-pointer you got a 5.2% boost unrealized. We could call the raw performance hit 5.8%. -fPIE code is 5.8% slower.
Was this profiling done on Linux or OpenBSD?
The reason I ask is that the Linux model for 32 bit is to have a 4G/4G address space, where the user and kernel address space are completely disjoint, while the OpenBSD model was to have (initially) a 2G/2G split, later followed by a 3G/1G split.
With a disjoint address space, you aren't going to see tremendous performance degradation by going to PIE, even though you lose a register over it in 32 bit executables, since you are already paying the TLB flush overhead for the overlapping address spaces, and you are already paying the CR3 reload overhead for the mapping of copy buffers for the copyin/copyout operations. Assuming you do lazy mapping for the copy regions, you'll mask a pretty big chunk of the overhead, if the only activity you have on your system is your benchmarking process, as opposed to paying to move the copy window mappings around if you are doing a lot of context switching between processes that have even modest copyin/out requirements.
The overall overhead of this, according to Ingo Molnar, amounts to some 38% performance increase if you do not use a disjoint address space and copy windows.
This is practically the same performance you get from moving the kernel high (i.e. effectively, a negative offset) in a 64 bit system.
In addition, as long as you work around the Intel architecture TLB flush bug for the large vs. small page mappings covering the same physical memory region (i.e. the TLB flush would leave one of the TLB unflushed, and this is what caused issues with large page support to cover the kernel address space to get the TLB regions non-intersecting), you can get another up to 11% performance improvement by supporting all large pages in kernel space and all small pages in user space.
I suspect that the suggestion didn't get traction for 2 reasons:
(1) The above performance considerations, which were architecturally a performance win that OpenBSD could have and Linux couldn't, in the default case, for the default kernel and user address space mapping made the hit considerably more than the Linux-observed 5.8% on OpenBSD.
(2) ASLR (Address Space Layout Randomization), which is the primary reason for supporting PIE, is a means of security through obscurity, which relies on hiding the locations from the attack vectors, rather than actually having the code be secure, which is somewhat antithetical to normal security philosophy, which disdains obscurity as a protection mechanism (i.e. You can work around it using a relative return, unless you set the NX bit on all your DS/SS pages, which you should probably be doing anyway -- rendering the technique unnecessary in the first place).
I admit that PIE can be handy when you override shared libraries on the command line with environment variables passed to the run time linker, particularly for testing, but as a default mechanism, it's something of a dead end, particularly now that many architectures are taking the ARM 9 approach of a modified Harvard architecture. You can do a similar thing on recent Intel processors, although the recovery from a fault is you h
Re: (Score:2)
I think you are confused; just because a couple of pages are dual mapped doesn't make the virtual address spaces *not* disjoint.
https://lkml.org/lkml/2003/7/1... [lkml.org]
Re: (Score:2)
ASLR is not security through obscurity. If that were true, regular encryption would be security through obscurity. Security through obscurity is an idiom, and it doesn't literally mean that nothing can be secure which depends on a secret.
ASLR is "secrecy through implementation to provide security"; that, according to Wikipedia, is the very definition: http://en.wikipedia.org/wiki/S... [wikipedia.org]
And ASLR has other benefits beyond raising the bar for bug exploitation. When ASLR was enabled by default in OpenBSD many years ago, it uncovered a plethora of bugs, particularly in the ports collection. Not because those developers were depending on some particular pattern of allocation, but because bugs were exercised more frequently when the relative location of blocks became randomized. So ASLR ultimately resulted in OpenBSD and a ton of other free software becoming much more robust.
Sure; but like compiling for the DEC Alpha uncovered alignment issues that resulted in improved performance due to alignment exceptions and fixups for unaligned data accesses, it would not be necessary to leave the option on once the bugs were fixed; and indeed, the alignment check bit is not set in CR0 for Intel processors on Intel versions of OpenBSD, even t
Re: (Score:2)
Re: (Score:2)
Link? Marcus Ranum seemed to like OpenBSD. A quick search gave me the following:
https://web.archive.org/web/20... [archive.org]
TOP OF THE NEWS
--OpenBSD Release Protected Against Buffer Overflow Attacks
(11 April 2003)
(Ranum): It's GREAT to see that at least a few people are smart enough
to try to attack problems like this systemically, rather than keeping
stuck in the fruitless "penetrate and patch" while loop. This is how
to make progress in security: fundamental protections.
https://web.archive.org/web/20... [archive.org]
“One of
Re: (Score:2)
Yes, OpenBSD's main projects make things like carp, pf, etc. That seems to be the focus, and how most users use OpenBSD systems. I'm not sure how the Firefox thing is a worry to most folks who use and trust OpenBSD for their use. I've had a lot of OpenBSD machines over the years, but I don't think I've installed X Window more than a couple times.
Re: (Score:2)
Insigntful? Wow. And when I asked that question about RMS I got kicked to the curb. de Raadt really isn't that bad. Maybe he used to be, I dunno, I wasn't here then.
Re:Why are you such an asshole? (Score:4, Insightful)
In this context, asshole does not mean morally objectionable.
Theo is generally thought to be an asshole in that he's tremendously disagreeable and difficult to work with, but that's not to say he's actually evil and worth boycotting.
fsck-beta might well believe, as I'm sure many of us do, that Theo is an asshole (see early history of OpenBSD) who has done some very good work.
Re:Why are you such an asshole? (Score:4, Informative)
Obviously someone who has never worked with Theo. Theo simply does not suffer fools and will call you out for being stupid.
That is it.
I have asked beginner level questions, and he had answered them politely. But if you come in with an attitude, or as a know-it-all and did not even bother to read the FAQ, he will treat you like the turd you are.
For whatever reason, people seem to think that's being an asshole. Theo's not your paid support monkey, and has no need to waste his time on people who refuse to read.
Re:Where does OpenBSD outperform Linux? (Score:4, Insightful)
Re:Where does OpenBSD outperform Linux? (Score:4, Interesting)
Pretty much that. My observations with FreeBSD at least have been that whilst Linux might get something FIRST, it will typically go through 3-4 (more?) iterations before the actual long term supported version emerges. Until someone decides to rewrite it anyway.
The FreeBSD (and likely other BSD) way seems to be to design things properly first (which takes some time that Linux skips), implement and then the user-facing interface stays the same for a long period of time.
Sometimes however, it does mean BSD gets features first. E.g., multichannel audio. Mixing has transparently happened via the FreeBSD audio driver for about 10 years now. Linux has gone through a bunch of different audio subsystems in that time.
Re: (Score:2)
Doubt if this is something he can answer as I assume he spends his time coding, rather than playing with the different linux distros.
Re: (Score:2)
actually, there used to be a dev/test web site but www always went to the main one. the openbsd.org one was never the main site. nowadays many browsers (improperly) stuff a www in front if nothing found at a domain name
Re: (Score:2)
which people on current team would be the best designated successor(s)?
Re: (Score:2)
He is a license purist in the sense that he only distributes software that he is allowed to, by license. This is why OpenBSD has pf. The ipf author made a special exception for OpenBSD and said everyone can ship modified sources of ipf, except for OpenBSD. OpenBSD can only ship ipf as is. Since OpenBSD had a bunch of patches for ipf, they were screwed.
So they dumped ipf and wrote pf.
Re: (Score:2)
It seems like every time you turn around, another bitcoin exchange is hacked or some startup social network for dogs is secretly uploading all your phone contacts over clear text or a retailer is storing unencrypted cc numbers and passwords. Some of the worst offenders are brogrammers. Is there anything we can do?
Or if we were to have a OpenBSD android what security/privacy measures would be made/changed to secure the platform?
Re: (Score:2)
Recently both Debian and Ubuntu decided to make the switch to Systemd. With more and more distros switching to Systemd, will OpenBSD do the same?
Systemd's license is incompatible with OpenBSD, thus it would need to be rewritten from scratch (and it would probably refactored too). For systemd to appear in OpenBSD there needs to be a benefit to OpenBSD... not simply convenience for people moving from Linux. This is how pf was born: IPFilter was removed from OpenBSD due to concerns about its license and the pf developers refactored IPFilter's baroque rules syntax for simplicity and consistency.