Something that I particularly like regarding drivers in OpenBSD vs. Linux is how every driver in OpenBSD works on everything that it supports, on every machine. When you dig into Linux drivers you’ll see all kinds of hooks for kernel flags, proc knobs, and of course the fact that most drivers aren’t even loaded all the time and only come in as LKMs. When you look at mailing lists and bug trackers for non-working hardware under Linux, everyone is so quick to tell you to add some kernel flags to grub or to blacklist some driver from loading to get another driver working.
In OpenBSD, every driver enabled by default has to work on every machine with no knobs or kernel flags, and each driver’s probe routines can’t conflict with hardware that might be on another machine.
Something that I particularly like regarding drivers in OpenBSD vs. Linux is how every driver in OpenBSD works on everything that it supports, on every machine. When you dig into Linux drivers you’ll see all kinds of hooks for kernel flags, proc knobs, and of course the fact that most drivers aren’t even loaded all the time and only come in as LKMs. When you look at mailing lists and bug trackers for non-working hardware under Linux, everyone is so quick to tell you to add some kernel flags to grub or to blacklist some driver from loading to get another driver working.
In OpenBSD, every driver enabled by default has to work on every machine with no knobs or kernel flags, and each driver’s probe routines can’t conflict with hardware that might be on another machine.