Biz & IT —

Linus won’t ban binary kernel modules

The Linux kernel mailing list (LKML) has returned to the oft-discussed topic of binary kernel modules. Considered by some to be a violation of the open source license used by the Linux kernel, binary modules are proprietary software components (usually hardware drivers) that interface with the Linux kernel and provide additional functionality. Kernel contributors have called for the inclusion of a patch that would technologically prevent the use of proprietary kernel modules at the close of a 12-month grace period.

The General Public License (GPL), the open-source software license used by the Linux kernel and many other open-source projects, facilitates redistribution of program source code but stipulates that derivative works must be distributed under the same license. Some kernel contributors contend that proprietary kernel modules distributed without source code are derivative works and subsequently constitute copyright infringement. Despite the technical difficulties associated with maintaining compatibility with the kernel, some hardware vendors (like Nvidia, for instance) continue to release proprietary kernel drivers.

Kernel contributor Andrew Morton suggested that the kernel developers "give people 12-months warning (time to work out what they're going to do, talk with the legal dept, etc.) then make the kernel load only GPL-tagged modules," in order to "aid those people who are trying to obtain device specs, and who are persuading organisations to GPL their drivers." Kernel contributor Greg Kroah-Hartman promptly created a patch that would make the kernel emit a warning when a proprietary module is loaded, stating that the module would no longer function after January 1, 2008.

Characterizing the entire idea as "shortsighted" and "stupid," Linus Torvalds responded with relatively well-reasoned (and characteristically acerbic) criticisms, pointing out that an outright ban on binary drivers would simply compel companies to move their binary driver code into userspace where it isn't subject to the limitation. Torvalds also compares a binary driver ban to DRM, arguing that it would constitute an unreasonable limitation on what people can do with the Linux kernel. "I happen to believe that there shouldn't be technical measures that keep me from watching my DVD or listening to my music on whatever device I damn well please. Fair use, man," wrote Torvalds. "But it should go the other way too: we should not try to assert our copyright rules on other peoples code that wasn't derived from ours, or assert our technical measures that keep people from combining things their way."

Although Torvalds refused to be the one to merge the code into the kernel, he suggests that the developers "use somebody else ... to push [their] political agendas," and has indicated that he will not prevent the binary module ban if the other kernel developers can build a consensus on the issue amongst major Linux distributors. If that condition has to be met, it means that the ban probably won't be imposed any time in the near future. It is highly unlikely that all the major Linux distributors are going to be willing to agree to an outright ban on binary modules in light of Ubuntu's recent decision to include proprietary drivers in the default Ubuntu installation. The Ubuntu developers behind the controversial decision are quick to point out that users overwhelmingly support the inclusion and availability of binary drivers. If instated, a ban on proprietary drivers would massively stifle adoption of the operating system and lead some users to switch to a different platform.