On July 04, 2020, Linux maintainer Dan Williams proposed new guidelines to replace non-inclusive terminology. Though Linux already has its coding style and set of terminology, the proposal came amid the ongoing Black Lives Matter movement.
After a lengthy discussion, Linus Torvalds, creator of Linux, has finally merged the new inclusive terminology into the Linux source tree. And with the release of the latest Linux 5.8-rc5, all Linux developers are advised to avoid using ‘master/slave’ and ‘blacklist/whitelist’ terms in kernel code and documentation.
Replacements For ‘master/slave’ and ‘blacklist/whitelist’
As a substitute for this terminology, the Linux team has not given any specific alternative terms. Instead, just as Linux offers freedom of choice, developers have also given several options to choose appropriate alternatives for each non-inclusive term.
Here is a list of recommended replacements for master/slave and blacklist/whitelist:
Banned Terms | Recommended Replacements |
master | primary, main, initiator, requester, controller, host, leader, director |
slave | secondary, replica, subordinate, target, responder, device, worker, proxy, follower, performer |
blacklist | denylist, blocklist |
whitelist | allowlist, passlist |
However, these banned terms can still be used only in case of exceptions where such terms are mandatory. This includes maintaining a userspace ABI/API and updating the code for existing hardware or protocol specification.
Well, primarily in the coding community, I don’t think such terms lead to any kind of racism or discrimination among developers. But in the wake of the current Black Lives Matter protests in the US, several tech companies have revised their policies and practices to promote the inclusion of every human irrespective of their color or gender.
Subsequently, the Linux kernel team also decided to revise its coding style and naming scheme. As a result, new alternate terminology is proposed to avoid using any insensitive name or term that directly or indirectly offends any person or community.