Hacker News new | past | comments | ask | show | jobs | submit
How much work is it to port drivers between Free and Open BSD?
OpenBSD doesn't allow binary blobs. So if there isn't a fully open-source driver (or adequate docs for a developer to write one), it won't happen (hence, no Nvidia support). Not sure about FreeBSD in this regard, but AFAIK most of these drivers start as ports from Linux.
> How much work is it to port drivers between Free and Open BSD?

IIRC there are two problems at play:

First, I'm not a C coder so this is a bit above my pay-grade, but from what little I do remember about the subject, the problem relates to the OpenBSD requirement to adopt their security mechanisms such as pledge, unveil and strlcpy. IIRC the OpenBSD compiler is also (unsurprisingly !) more anal about stack protector W^X etc. So the porting process is perhaps more time-consuming and low-level than it might otherwise be on other porting projects.

Second, the licensing thing might come into it. OpenBSD has a high preference to most-permissive, and so things like GPL-licensed origins might not be acceptable. IIRC FreeBSD is a little more relaxed within reason ? And when you're working with network cards I would think that is perhaps hard to avoid to some extent if you're relying on certain bits being ultimately derived from Intel chipsets or whatever.

I'm open to correction by those more knowledgable than me on porting intricacies. ;)

loading story #47442904