Linux 5.8 Formally Adds The Inclusive Terminology Guidelines

Written by Michael Larabel in Linux Kernel on 11 July 2020 at 06:38 AM EDT. 105 Comments
LINUX KERNEL
Merged overnight into the Linux kernel source tree are the new guidelines concerning the use of "inclusive terminology" for future code.

It was just one week ago that the inclusive terminology guidelines for the Linux kernel were first proposed to mixed reaction and have now been merged into the source tree after receiving enough approval of various upstream kernel maintainers.

At this stage these guidelines, which are part of the Linux kernel's coding style, are about avoiding new usage of the words "master" and "slave" within the kernel code as well as avoiding "blacklist" and "whitelist". This is intended for new code moving forward or modifying existing code but as long as it does not break the kernel ABI.

The added documentation at this point amounts to:
For symbol names and documentation, avoid introducing new usage of 'master / slave' (or 'slave' independent of 'master') and 'blacklist / whitelist'.

Recommended replacements for 'master / slave' are:

'{primary,main} / {secondary,replica,subordinate}'
'{initiator,requester} / {target,responder}'
'{controller,host} / {device,worker,proxy}'
'leader / follower'
'director / performer'

Recommended replacements for 'blacklist/whitelist' are:
'denylist / allowlist'
'blocklist / passlist'

Exceptions for introducing new usage is to maintain a userspace ABI/API, or when updating code for an existing (as of 2020) hardware or protocol specification that mandates those terms. For new specifications translate specification usage of the terminology to the kernel coding standard where possible.

There are around 19.5k mentions of "slave" within the kernel source tree, mostly within the kernel networking code. The string "master" is mentioned some 26.9k times. For "blacklist" are around 888 mentions when checking in the current Git tree. Linux is currently at around 69.3k text files with around 3.54 million lines of code comments and 20.1 million lines of code (along with 3.6 million blank lines).
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week