2020-07-08 18:31:53

by Dan Williams

[permalink] [raw]
Subject: [PATCH v3] CodingStyle: Inclusive Terminology

Linux maintains a coding-style and its own idiomatic set of terminology.
Update the style guidelines to recommend replacements for the terms
master/slave and blacklist/whitelist.

Link: http://lore.kernel.org/r/159389297140.2210796.13590142254668787525.stgit@dwillia2-desk3.amr.corp.intel.com
Acked-by: Randy Dunlap <[email protected]>
Acked-by: Dave Airlie <[email protected]>
Acked-by: SeongJae Park <[email protected]>
Acked-by: Christian Brauner <[email protected]>
Acked-by: James Bottomley <[email protected]>
Reviewed-by: Mark Brown <[email protected]>
Signed-off-by: Theodore Ts'o <[email protected]>
Signed-off-by: Shuah Khan <[email protected]>
Signed-off-by: Dan Carpenter <[email protected]>
Signed-off-by: Kees Cook <[email protected]>
Signed-off-by: Olof Johansson <[email protected]>
Signed-off-by: Jonathan Corbet <[email protected]>
Signed-off-by: Chris Mason <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
Signed-off-by: Dan Williams <[email protected]>
---
Changes since v2 [1]:
- Pick up missed sign-offs and acks from Jon, Shuah, and Christian
(sorry about missing those earlier).

- Reformat the replacement list to make it easier to read.

- Add 'controller' as a suggested replacement (Kees and Mark)

- Fix up the paired term for 'performer' to be 'director' (Kees)

- Collect some new acks, reviewed-by's, and sign-offs for v2.

- Fix up Chris's email

[1]: http://lore.kernel.org/r/159419296487.2464622.863943877093636532.stgit@dwillia2-desk3.amr.corp.intel.com


Documentation/process/coding-style.rst | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

diff --git a/Documentation/process/coding-style.rst b/Documentation/process/coding-style.rst
index 2657a55c6f12..1bee6f8affdb 100644
--- a/Documentation/process/coding-style.rst
+++ b/Documentation/process/coding-style.rst
@@ -319,6 +319,26 @@ If you are afraid to mix up your local variable names, you have another
problem, which is called the function-growth-hormone-imbalance syndrome.
See chapter 6 (Functions).

+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.

5) Typedefs
-----------


2020-07-09 07:27:29

by Daniel Vetter

[permalink] [raw]
Subject: Re: [Ksummit-discuss] [PATCH v3] CodingStyle: Inclusive Terminology

On Wed, Jul 8, 2020 at 8:30 PM Dan Williams <[email protected]> wrote:
>
> Linux maintains a coding-style and its own idiomatic set of terminology.
> Update the style guidelines to recommend replacements for the terms
> master/slave and blacklist/whitelist.
>
> Link: http://lore.kernel.org/r/159389297140.2210796.13590142254668787525.stgit@dwillia2-desk3.amr.corp.intel.com
> Acked-by: Randy Dunlap <[email protected]>
> Acked-by: Dave Airlie <[email protected]>
> Acked-by: SeongJae Park <[email protected]>
> Acked-by: Christian Brauner <[email protected]>
> Acked-by: James Bottomley <[email protected]>
> Reviewed-by: Mark Brown <[email protected]>
> Signed-off-by: Theodore Ts'o <[email protected]>
> Signed-off-by: Shuah Khan <[email protected]>
> Signed-off-by: Dan Carpenter <[email protected]>
> Signed-off-by: Kees Cook <[email protected]>
> Signed-off-by: Olof Johansson <[email protected]>
> Signed-off-by: Jonathan Corbet <[email protected]>
> Signed-off-by: Chris Mason <[email protected]>
> Signed-off-by: Greg Kroah-Hartman <[email protected]>
> Signed-off-by: Dan Williams <[email protected]>

Replied to the old version, once more here so it's not lost.

Acked-by: Daniel Vetter <[email protected]>

> ---
> Changes since v2 [1]:
> - Pick up missed sign-offs and acks from Jon, Shuah, and Christian
> (sorry about missing those earlier).
>
> - Reformat the replacement list to make it easier to read.
>
> - Add 'controller' as a suggested replacement (Kees and Mark)
>
> - Fix up the paired term for 'performer' to be 'director' (Kees)
>
> - Collect some new acks, reviewed-by's, and sign-offs for v2.
>
> - Fix up Chris's email
>
> [1]: http://lore.kernel.org/r/159419296487.2464622.863943877093636532.stgit@dwillia2-desk3.amr.corp.intel.com
>
>
> Documentation/process/coding-style.rst | 20 ++++++++++++++++++++
> 1 file changed, 20 insertions(+)
>
> diff --git a/Documentation/process/coding-style.rst b/Documentation/process/coding-style.rst
> index 2657a55c6f12..1bee6f8affdb 100644
> --- a/Documentation/process/coding-style.rst
> +++ b/Documentation/process/coding-style.rst
> @@ -319,6 +319,26 @@ If you are afraid to mix up your local variable names, you have another
> problem, which is called the function-growth-hormone-imbalance syndrome.
> See chapter 6 (Functions).
>
> +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.
>
> 5) Typedefs
> -----------
>
> _______________________________________________
> Ksummit-discuss mailing list
> [email protected]
> https://lists.linuxfoundation.org/mailman/listinfo/ksummit-discuss



--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch

2020-07-09 09:48:12

by Matthias Brugger

[permalink] [raw]
Subject: Re: [Ksummit-discuss] [PATCH v3] CodingStyle: Inclusive Terminology



On 08/07/2020 20:14, Dan Williams wrote:
> Linux maintains a coding-style and its own idiomatic set of terminology.
> Update the style guidelines to recommend replacements for the terms
> master/slave and blacklist/whitelist.
>
> Link: http://lore.kernel.org/r/159389297140.2210796.13590142254668787525.stgit@dwillia2-desk3.amr.corp.intel.com
> Acked-by: Randy Dunlap <[email protected]>
> Acked-by: Dave Airlie <[email protected]>
> Acked-by: SeongJae Park <[email protected]>
> Acked-by: Christian Brauner <[email protected]>
> Acked-by: James Bottomley <[email protected]>
> Reviewed-by: Mark Brown <[email protected]>
> Signed-off-by: Theodore Ts'o <[email protected]>
> Signed-off-by: Shuah Khan <[email protected]>
> Signed-off-by: Dan Carpenter <[email protected]>
> Signed-off-by: Kees Cook <[email protected]>
> Signed-off-by: Olof Johansson <[email protected]>
> Signed-off-by: Jonathan Corbet <[email protected]>
> Signed-off-by: Chris Mason <[email protected]>
> Signed-off-by: Greg Kroah-Hartman <[email protected]>
> Signed-off-by: Dan Williams <[email protected]>

Reviewed-by: Matthias Brugger <[email protected]>

> ---
> Changes since v2 [1]:
> - Pick up missed sign-offs and acks from Jon, Shuah, and Christian
> (sorry about missing those earlier).
>
> - Reformat the replacement list to make it easier to read.
>
> - Add 'controller' as a suggested replacement (Kees and Mark)
>
> - Fix up the paired term for 'performer' to be 'director' (Kees)
>
> - Collect some new acks, reviewed-by's, and sign-offs for v2.
>
> - Fix up Chris's email
>
> [1]: http://lore.kernel.org/r/159419296487.2464622.863943877093636532.stgit@dwillia2-desk3.amr.corp.intel.com
>
>
> Documentation/process/coding-style.rst | 20 ++++++++++++++++++++
> 1 file changed, 20 insertions(+)
>
> diff --git a/Documentation/process/coding-style.rst b/Documentation/process/coding-style.rst
> index 2657a55c6f12..1bee6f8affdb 100644
> --- a/Documentation/process/coding-style.rst
> +++ b/Documentation/process/coding-style.rst
> @@ -319,6 +319,26 @@ If you are afraid to mix up your local variable names, you have another
> problem, which is called the function-growth-hormone-imbalance syndrome.
> See chapter 6 (Functions).
>
> +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.
>
> 5) Typedefs
> -----------
>
> _______________________________________________
> Ksummit-discuss mailing list
> [email protected]
> https://lists.linuxfoundation.org/mailman/listinfo/ksummit-discuss
>

2020-07-09 19:09:33

by Dan Williams

[permalink] [raw]
Subject: Re: [Ksummit-discuss] [PATCH v3] CodingStyle: Inclusive Terminology

On Thu, Jul 9, 2020 at 12:26 AM Daniel Vetter <[email protected]> wrote:
>
> On Wed, Jul 8, 2020 at 8:30 PM Dan Williams <[email protected]> wrote:
> >
> > Linux maintains a coding-style and its own idiomatic set of terminology.
> > Update the style guidelines to recommend replacements for the terms
> > master/slave and blacklist/whitelist.
> >
> > Link: http://lore.kernel.org/r/159389297140.2210796.13590142254668787525.stgit@dwillia2-desk3.amr.corp.intel.com
> > Acked-by: Randy Dunlap <[email protected]>
> > Acked-by: Dave Airlie <[email protected]>
> > Acked-by: SeongJae Park <[email protected]>
> > Acked-by: Christian Brauner <[email protected]>
> > Acked-by: James Bottomley <[email protected]>
> > Reviewed-by: Mark Brown <[email protected]>
> > Signed-off-by: Theodore Ts'o <[email protected]>
> > Signed-off-by: Shuah Khan <[email protected]>
> > Signed-off-by: Dan Carpenter <[email protected]>
> > Signed-off-by: Kees Cook <[email protected]>
> > Signed-off-by: Olof Johansson <[email protected]>
> > Signed-off-by: Jonathan Corbet <[email protected]>
> > Signed-off-by: Chris Mason <[email protected]>
> > Signed-off-by: Greg Kroah-Hartman <[email protected]>
> > Signed-off-by: Dan Williams <[email protected]>
>
> Replied to the old version, once more here so it's not lost.
>
> Acked-by: Daniel Vetter <[email protected]>

Got it, thanks Daniel.

2020-07-09 19:10:59

by Dan Williams

[permalink] [raw]
Subject: Re: [Ksummit-discuss] [PATCH v3] CodingStyle: Inclusive Terminology

On Thu, Jul 9, 2020 at 2:45 AM Matthias Brugger <[email protected]> wrote:
>
>
>
> On 08/07/2020 20:14, Dan Williams wrote:
> > Linux maintains a coding-style and its own idiomatic set of terminology.
> > Update the style guidelines to recommend replacements for the terms
> > master/slave and blacklist/whitelist.
> >
> > Link: http://lore.kernel.org/r/159389297140.2210796.13590142254668787525.stgit@dwillia2-desk3.amr.corp.intel.com
> > Acked-by: Randy Dunlap <[email protected]>
> > Acked-by: Dave Airlie <[email protected]>
> > Acked-by: SeongJae Park <[email protected]>
> > Acked-by: Christian Brauner <[email protected]>
> > Acked-by: James Bottomley <[email protected]>
> > Reviewed-by: Mark Brown <[email protected]>
> > Signed-off-by: Theodore Ts'o <[email protected]>
> > Signed-off-by: Shuah Khan <[email protected]>
> > Signed-off-by: Dan Carpenter <[email protected]>
> > Signed-off-by: Kees Cook <[email protected]>
> > Signed-off-by: Olof Johansson <[email protected]>
> > Signed-off-by: Jonathan Corbet <[email protected]>
> > Signed-off-by: Chris Mason <[email protected]>
> > Signed-off-by: Greg Kroah-Hartman <[email protected]>
> > Signed-off-by: Dan Williams <[email protected]>
>
> Reviewed-by: Matthias Brugger <[email protected]>

Got it, thanks Matthias.

2020-07-10 21:14:26

by Laura Abbott

[permalink] [raw]
Subject: Re: [PATCH v3] CodingStyle: Inclusive Terminology

On 7/8/20 2:14 PM, Dan Williams wrote:
> Linux maintains a coding-style and its own idiomatic set of terminology.
> Update the style guidelines to recommend replacements for the terms
> master/slave and blacklist/whitelist.
>
> Link: http://lore.kernel.org/r/159389297140.2210796.13590142254668787525.stgit@dwillia2-desk3.amr.corp.intel.com
> Acked-by: Randy Dunlap <[email protected]>
> Acked-by: Dave Airlie <[email protected]>
> Acked-by: SeongJae Park <[email protected]>
> Acked-by: Christian Brauner <[email protected]>
> Acked-by: James Bottomley <[email protected]>
> Reviewed-by: Mark Brown <[email protected]>
> Signed-off-by: Theodore Ts'o <[email protected]>
> Signed-off-by: Shuah Khan <[email protected]>
> Signed-off-by: Dan Carpenter <[email protected]>
> Signed-off-by: Kees Cook <[email protected]>
> Signed-off-by: Olof Johansson <[email protected]>
> Signed-off-by: Jonathan Corbet <[email protected]>
> Signed-off-by: Chris Mason <[email protected]>
> Signed-off-by: Greg Kroah-Hartman <[email protected]>
> Signed-off-by: Dan Williams <[email protected]>
> ---
> Changes since v2 [1]:
> - Pick up missed sign-offs and acks from Jon, Shuah, and Christian
> (sorry about missing those earlier).
>
> - Reformat the replacement list to make it easier to read.
>
> - Add 'controller' as a suggested replacement (Kees and Mark)
>
> - Fix up the paired term for 'performer' to be 'director' (Kees)
>
> - Collect some new acks, reviewed-by's, and sign-offs for v2.
>
> - Fix up Chris's email
>
> [1]: http://lore.kernel.org/r/159419296487.2464622.863943877093636532.stgit@dwillia2-desk3.amr.corp.intel.com
>
>
> Documentation/process/coding-style.rst | 20 ++++++++++++++++++++
> 1 file changed, 20 insertions(+)
>
> diff --git a/Documentation/process/coding-style.rst b/Documentation/process/coding-style.rst
> index 2657a55c6f12..1bee6f8affdb 100644
> --- a/Documentation/process/coding-style.rst
> +++ b/Documentation/process/coding-style.rst
> @@ -319,6 +319,26 @@ If you are afraid to mix up your local variable names, you have another
> problem, which is called the function-growth-hormone-imbalance syndrome.
> See chapter 6 (Functions).
>
> +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.
>
> 5) Typedefs
> -----------
>

Acked-by: Laura Abbott <[email protected]>

2020-07-10 21:15:42

by Andy Lutomirski

[permalink] [raw]
Subject: Re: [Ksummit-discuss] [PATCH v3] CodingStyle: Inclusive Terminology

On Wed, Jul 8, 2020 at 11:30 AM Dan Williams <[email protected]> wrote:
>
> Linux maintains a coding-style and its own idiomatic set of terminology.
> Update the style guidelines to recommend replacements for the terms
> master/slave and blacklist/whitelist.

Acked-by: Andy Lutomirski <[email protected]>

2020-07-10 21:47:58

by Dan Williams

[permalink] [raw]
Subject: Re: [Ksummit-discuss] [PATCH v3] CodingStyle: Inclusive Terminology

On Fri, Jul 10, 2020 at 2:12 PM Andy Lutomirski <[email protected]> wrote:
>
> On Wed, Jul 8, 2020 at 11:30 AM Dan Williams <[email protected]> wrote:
> >
> > Linux maintains a coding-style and its own idiomatic set of terminology.
> > Update the style guidelines to recommend replacements for the terms
> > master/slave and blacklist/whitelist.
>
> Acked-by: Andy Lutomirski <[email protected]>

Thanks, Andy.

2020-07-10 21:51:40

by Dan Williams

[permalink] [raw]
Subject: Re: [PATCH v3] CodingStyle: Inclusive Terminology

On Fri, Jul 10, 2020 at 2:13 PM Laura Abbott <[email protected]> wrote:
>
> On 7/8/20 2:14 PM, Dan Williams wrote:
> > Linux maintains a coding-style and its own idiomatic set of terminology.
> > Update the style guidelines to recommend replacements for the terms
> > master/slave and blacklist/whitelist.
> >
[..]
> Acked-by: Laura Abbott <[email protected]>

Thanks, Laura.

2020-07-10 22:53:57

by Gustavo A. R. Silva

[permalink] [raw]
Subject: Re: [PATCH v3] CodingStyle: Inclusive Terminology



On 7/8/20 13:14, Dan Williams wrote:
> Linux maintains a coding-style and its own idiomatic set of terminology.
> Update the style guidelines to recommend replacements for the terms
> master/slave and blacklist/whitelist.
>
> Link: http://lore.kernel.org/r/159389297140.2210796.13590142254668787525.stgit@dwillia2-desk3.amr.corp.intel.com
> Acked-by: Randy Dunlap <[email protected]>
> Acked-by: Dave Airlie <[email protected]>
> Acked-by: SeongJae Park <[email protected]>
> Acked-by: Christian Brauner <[email protected]>
> Acked-by: James Bottomley <[email protected]>
> Reviewed-by: Mark Brown <[email protected]>
> Signed-off-by: Theodore Ts'o <[email protected]>
> Signed-off-by: Shuah Khan <[email protected]>
> Signed-off-by: Dan Carpenter <[email protected]>
> Signed-off-by: Kees Cook <[email protected]>
> Signed-off-by: Olof Johansson <[email protected]>
> Signed-off-by: Jonathan Corbet <[email protected]>
> Signed-off-by: Chris Mason <[email protected]>
> Signed-off-by: Greg Kroah-Hartman <[email protected]>
> Signed-off-by: Dan Williams <[email protected]>

Acked-by: Gustavo A. R. Silva <[email protected]>

Thanks
--
Gustavo

2020-07-11 20:34:43

by Josh Triplett

[permalink] [raw]
Subject: Re: [Ksummit-discuss] [PATCH v3] CodingStyle: Inclusive Terminology

On Wed, Jul 08, 2020 at 11:14:27AM -0700, Dan Williams wrote:
> Linux maintains a coding-style and its own idiomatic set of terminology.
> Update the style guidelines to recommend replacements for the terms
> master/slave and blacklist/whitelist.
>
> Link: http://lore.kernel.org/r/159389297140.2210796.13590142254668787525.stgit@dwillia2-desk3.amr.corp.intel.com
> Acked-by: Randy Dunlap <[email protected]>
> Acked-by: Dave Airlie <[email protected]>
> Acked-by: SeongJae Park <[email protected]>
> Acked-by: Christian Brauner <[email protected]>
> Acked-by: James Bottomley <[email protected]>
> Reviewed-by: Mark Brown <[email protected]>
> Signed-off-by: Theodore Ts'o <[email protected]>
> Signed-off-by: Shuah Khan <[email protected]>
> Signed-off-by: Dan Carpenter <[email protected]>
> Signed-off-by: Kees Cook <[email protected]>
> Signed-off-by: Olof Johansson <[email protected]>
> Signed-off-by: Jonathan Corbet <[email protected]>
> Signed-off-by: Chris Mason <[email protected]>
> Signed-off-by: Greg Kroah-Hartman <[email protected]>
> Signed-off-by: Dan Williams <[email protected]>

Thank you for working on this, Dan!

Reviewed-by: Josh Triplett <[email protected]>

2020-07-13 04:24:15

by Vinod Koul

[permalink] [raw]
Subject: Re: [Ksummit-discuss] [PATCH v3] CodingStyle: Inclusive Terminology

Hi Dan,

On 08-07-20, 11:14, Dan Williams wrote:
> Linux maintains a coding-style and its own idiomatic set of terminology.
> Update the style guidelines to recommend replacements for the terms
> master/slave and blacklist/whitelist.
>
> Link: http://lore.kernel.org/r/159389297140.2210796.13590142254668787525.stgit@dwillia2-desk3.amr.corp.intel.com
> Acked-by: Randy Dunlap <[email protected]>
> Acked-by: Dave Airlie <[email protected]>
> Acked-by: SeongJae Park <[email protected]>
> Acked-by: Christian Brauner <[email protected]>
> Acked-by: James Bottomley <[email protected]>
> Reviewed-by: Mark Brown <[email protected]>
> Signed-off-by: Theodore Ts'o <[email protected]>
> Signed-off-by: Shuah Khan <[email protected]>
> Signed-off-by: Dan Carpenter <[email protected]>
> Signed-off-by: Kees Cook <[email protected]>
> Signed-off-by: Olof Johansson <[email protected]>
> Signed-off-by: Jonathan Corbet <[email protected]>
> Signed-off-by: Chris Mason <[email protected]>
> Signed-off-by: Greg Kroah-Hartman <[email protected]>
> Signed-off-by: Dan Williams <[email protected]>

Acked-By: Vinod Koul <[email protected]>

Thanks for working on this

> ---
> Changes since v2 [1]:
> - Pick up missed sign-offs and acks from Jon, Shuah, and Christian
> (sorry about missing those earlier).
>
> - Reformat the replacement list to make it easier to read.
>
> - Add 'controller' as a suggested replacement (Kees and Mark)
>
> - Fix up the paired term for 'performer' to be 'director' (Kees)
>
> - Collect some new acks, reviewed-by's, and sign-offs for v2.
>
> - Fix up Chris's email
>
> [1]: http://lore.kernel.org/r/159419296487.2464622.863943877093636532.stgit@dwillia2-desk3.amr.corp.intel.com
>
>
> Documentation/process/coding-style.rst | 20 ++++++++++++++++++++
> 1 file changed, 20 insertions(+)
>
> diff --git a/Documentation/process/coding-style.rst b/Documentation/process/coding-style.rst
> index 2657a55c6f12..1bee6f8affdb 100644
> --- a/Documentation/process/coding-style.rst
> +++ b/Documentation/process/coding-style.rst
> @@ -319,6 +319,26 @@ If you are afraid to mix up your local variable names, you have another
> problem, which is called the function-growth-hormone-imbalance syndrome.
> See chapter 6 (Functions).
>
> +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.
>
> 5) Typedefs
> -----------
>
> _______________________________________________
> Ksummit-discuss mailing list
> [email protected]
> https://lists.linuxfoundation.org/mailman/listinfo/ksummit-discuss

--
~Vinod

2020-07-13 07:52:23

by Joerg Roedel

[permalink] [raw]
Subject: Re: [Ksummit-discuss] [PATCH v3] CodingStyle: Inclusive Terminology

On Wed, Jul 08, 2020 at 11:14:27AM -0700, Dan Williams wrote:
> Linux maintains a coding-style and its own idiomatic set of terminology.
> Update the style guidelines to recommend replacements for the terms
> master/slave and blacklist/whitelist.

Acked-by: Joerg Roedel <[email protected]>

2020-07-13 08:05:27

by Takashi Iwai

[permalink] [raw]
Subject: Re: [Ksummit-discuss] [PATCH v3] CodingStyle: Inclusive Terminology

On Wed, 08 Jul 2020 20:14:27 +0200,
Dan Williams wrote:
>
> +Recommended replacements for 'blacklist/whitelist' are:
> + 'denylist / allowlist'
> + 'blocklist / passlist'

I started looking through the tree now and noticed there are lots of
patterns like "whitelisted" or "blacklisted". How can the words fit
for those? Actually, there are two cases like:

- Foo is blacklisted
- Allow to load the non-whitelisted cards

Currently I'm replacing the former with "Foo is in denylist", but not
sure about the latter case. I thought Kees mentioned about this, but
don't remember the proposal...

In anyway, I'm for the action:
Acked-by: Takashi Iwai <[email protected]>


thanks,

Takashi

2020-07-13 08:46:52

by Julia Lawall

[permalink] [raw]
Subject: Re: [Ksummit-discuss] [PATCH v3] CodingStyle: Inclusive Terminology



On Mon, 13 Jul 2020, Takashi Iwai wrote:

> On Wed, 08 Jul 2020 20:14:27 +0200,
> Dan Williams wrote:
> >
> > +Recommended replacements for 'blacklist/whitelist' are:
> > + 'denylist / allowlist'
> > + 'blocklist / passlist'
>
> I started looking through the tree now and noticed there are lots of
> patterns like "whitelisted" or "blacklisted". How can the words fit
> for those? Actually, there are two cases like:
>
> - Foo is blacklisted
> - Allow to load the non-whitelisted cards
>
> Currently I'm replacing the former with "Foo is in denylist", but not

In the denylist?

julia


> sure about the latter case. I thought Kees mentioned about this, but
> don't remember the proposal...
>
> In anyway, I'm for the action:
> Acked-by: Takashi Iwai <[email protected]>
>
>
> thanks,
>
> Takashi
> _______________________________________________
> Ksummit-discuss mailing list
> [email protected]
> https://lists.linuxfoundation.org/mailman/listinfo/ksummit-discuss
>

2020-07-13 09:38:00

by Takashi Iwai

[permalink] [raw]
Subject: Re: [Ksummit-discuss] [PATCH v3] CodingStyle: Inclusive Terminology

On Mon, 13 Jul 2020 10:43:28 +0200,
Julia Lawall wrote:
>
>
>
> On Mon, 13 Jul 2020, Takashi Iwai wrote:
>
> > On Wed, 08 Jul 2020 20:14:27 +0200,
> > Dan Williams wrote:
> > >
> > > +Recommended replacements for 'blacklist/whitelist' are:
> > > + 'denylist / allowlist'
> > > + 'blocklist / passlist'
> >
> > I started looking through the tree now and noticed there are lots of
> > patterns like "whitelisted" or "blacklisted". How can the words fit
> > for those? Actually, there are two cases like:
> >
> > - Foo is blacklisted
> > - Allow to load the non-whitelisted cards
> >
> > Currently I'm replacing the former with "Foo is in denylist", but not
>
> In the denylist?

Not really, only the allowlist exists in this case.


thanks,

Takashi

2020-07-13 09:41:30

by Julia Lawall

[permalink] [raw]
Subject: Re: [Ksummit-discuss] [PATCH v3] CodingStyle: Inclusive Terminology



On Mon, 13 Jul 2020, Takashi Iwai wrote:

> On Mon, 13 Jul 2020 10:43:28 +0200,
> Julia Lawall wrote:
> >
> >
> >
> > On Mon, 13 Jul 2020, Takashi Iwai wrote:
> >
> > > On Wed, 08 Jul 2020 20:14:27 +0200,
> > > Dan Williams wrote:
> > > >
> > > > +Recommended replacements for 'blacklist/whitelist' are:
> > > > + 'denylist / allowlist'
> > > > + 'blocklist / passlist'
> > >
> > > I started looking through the tree now and noticed there are lots of
> > > patterns like "whitelisted" or "blacklisted". How can the words fit
> > > for those? Actually, there are two cases like:
> > >
> > > - Foo is blacklisted
> > > - Allow to load the non-whitelisted cards
> > >
> > > Currently I'm replacing the former with "Foo is in denylist", but not
> >
> > In the denylist?
>
> Not really, only the allowlist exists in this case.

I'm not sure to understand. in denylist is not grammatical. It needs "a"
or "the".

Maybe it has to be foo is denylisted? foo is in the implicit denyList?
foo is not in the allowList?

julia

2020-07-13 09:47:51

by Takashi Iwai

[permalink] [raw]
Subject: Re: [Ksummit-discuss] [PATCH v3] CodingStyle: Inclusive Terminology

On Mon, 13 Jul 2020 11:39:56 +0200,
Julia Lawall wrote:
>
>
>
> On Mon, 13 Jul 2020, Takashi Iwai wrote:
>
> > On Mon, 13 Jul 2020 10:43:28 +0200,
> > Julia Lawall wrote:
> > >
> > >
> > >
> > > On Mon, 13 Jul 2020, Takashi Iwai wrote:
> > >
> > > > On Wed, 08 Jul 2020 20:14:27 +0200,
> > > > Dan Williams wrote:
> > > > >
> > > > > +Recommended replacements for 'blacklist/whitelist' are:
> > > > > + 'denylist / allowlist'
> > > > > + 'blocklist / passlist'
> > > >
> > > > I started looking through the tree now and noticed there are lots of
> > > > patterns like "whitelisted" or "blacklisted". How can the words fit
> > > > for those? Actually, there are two cases like:
> > > >
> > > > - Foo is blacklisted
> > > > - Allow to load the non-whitelisted cards
> > > >
> > > > Currently I'm replacing the former with "Foo is in denylist", but not
> > >
> > > In the denylist?
> >
> > Not really, only the allowlist exists in this case.
>
> I'm not sure to understand. in denylist is not grammatical. It needs "a"
> or "the".

Ah, now I see how I confused you. The two cases I mentioned in the
above are completely individual. They were found in two different
drivers. I put those just as two distinct examples for the passive
form usages. Sorry for unclearness.

What I meant about the latter was that "not in allowlist" doesn't mean
it being "in denylist". It's simply unknown.


Takashi

2020-07-13 15:07:27

by James Bottomley

[permalink] [raw]
Subject: Re: [Tech-board-discuss] [Ksummit-discuss] [PATCH v3] CodingStyle: Inclusive Terminology

On Mon, 2020-07-13 at 10:02 +0200, Takashi Iwai wrote:
> On Wed, 08 Jul 2020 20:14:27 +0200,
> Dan Williams wrote:
> >
> > +Recommended replacements for 'blacklist/whitelist' are:
> > + 'denylist / allowlist'
> > + 'blocklist / passlist'
>
> I started looking through the tree now and noticed there are lots of
> patterns like "whitelisted" or "blacklisted". How can the words fit
> for those? Actually, there are two cases like:
>
> - Foo is blacklisted
> - Allow to load the non-whitelisted cards
>
> Currently I'm replacing the former with "Foo is in denylist", but not
> sure about the latter case. I thought Kees mentioned about this, but
> don't remember the proposal...

Remember these are suggestions for going forwards, not requirements for
changing everything. We tend to be a community that likes make work
projects because they're easier to do than solving the hard problems,
but since we have over 100k occurrences of the various words in the
kernel, changing them all would cause massive churn and disrupt forward
development, which would cause way more harm than any gain from the
change.

James



2020-07-14 04:42:42

by Josh Triplett

[permalink] [raw]
Subject: Re: [Ksummit-discuss] [PATCH v3] CodingStyle: Inclusive Terminology

On Mon, Jul 13, 2020 at 10:02:24AM +0200, Takashi Iwai wrote:
> On Wed, 08 Jul 2020 20:14:27 +0200,
> Dan Williams wrote:
> >
> > +Recommended replacements for 'blacklist/whitelist' are:
> > + 'denylist / allowlist'
> > + 'blocklist / passlist'
>
> I started looking through the tree now and noticed there are lots of
> patterns like "whitelisted" or "blacklisted". How can the words fit
> for those? Actually, there are two cases like:
>
> - Foo is blacklisted
> - Allow to load the non-whitelisted cards
>
> Currently I'm replacing the former with "Foo is in denylist", but not
> sure about the latter case. I thought Kees mentioned about this, but
> don't remember the proposal...

I find that "blocklist" works well as a verb: "foo is blocklisted",
"blocklist foo", or in some cases just "block foo" or "deny foo". For
the second case, phrasings like "allow loading non-safelisted cards" or
"allow loading cards not on the passlist" seem clear.

2020-07-14 06:43:48

by Takashi Iwai

[permalink] [raw]
Subject: Re: [Ksummit-discuss] [PATCH v3] CodingStyle: Inclusive Terminology

On Tue, 14 Jul 2020 06:39:49 +0200,
[email protected] wrote:
>
> On Mon, Jul 13, 2020 at 10:02:24AM +0200, Takashi Iwai wrote:
> > On Wed, 08 Jul 2020 20:14:27 +0200,
> > Dan Williams wrote:
> > >
> > > +Recommended replacements for 'blacklist/whitelist' are:
> > > + 'denylist / allowlist'
> > > + 'blocklist / passlist'
> >
> > I started looking through the tree now and noticed there are lots of
> > patterns like "whitelisted" or "blacklisted". How can the words fit
> > for those? Actually, there are two cases like:
> >
> > - Foo is blacklisted
> > - Allow to load the non-whitelisted cards
> >
> > Currently I'm replacing the former with "Foo is in denylist", but not
> > sure about the latter case. I thought Kees mentioned about this, but
> > don't remember the proposal...
>
> I find that "blocklist" works well as a verb: "foo is blocklisted",
> "blocklist foo", or in some cases just "block foo" or "deny foo". For
> the second case, phrasings like "allow loading non-safelisted cards" or
> "allow loading cards not on the passlist" seem clear.

Yes, that makes sense. I have wished some simple replacement with
sed, but it seems that it'd be better to rephrase such texts in
anyway.


thanks,

Takashi

2020-07-15 12:40:03

by Jani Nikula

[permalink] [raw]
Subject: Re: [Ksummit-discuss] [PATCH v3] CodingStyle: Inclusive Terminology

On Wed, 08 Jul 2020, Dan Williams <[email protected]> wrote:
> Linux maintains a coding-style and its own idiomatic set of terminology.
> Update the style guidelines to recommend replacements for the terms
> master/slave and blacklist/whitelist.
>
> Link: http://lore.kernel.org/r/159389297140.2210796.13590142254668787525.stgit@dwillia2-desk3.amr.corp.intel.com
> Acked-by: Randy Dunlap <[email protected]>
> Acked-by: Dave Airlie <[email protected]>
> Acked-by: SeongJae Park <[email protected]>
> Acked-by: Christian Brauner <[email protected]>
> Acked-by: James Bottomley <[email protected]>
> Reviewed-by: Mark Brown <[email protected]>
> Signed-off-by: Theodore Ts'o <[email protected]>
> Signed-off-by: Shuah Khan <[email protected]>
> Signed-off-by: Dan Carpenter <[email protected]>
> Signed-off-by: Kees Cook <[email protected]>
> Signed-off-by: Olof Johansson <[email protected]>
> Signed-off-by: Jonathan Corbet <[email protected]>
> Signed-off-by: Chris Mason <[email protected]>
> Signed-off-by: Greg Kroah-Hartman <[email protected]>
> Signed-off-by: Dan Williams <[email protected]>

FWIW,

Acked-by: Jani Nikula <[email protected]>

> ---
> Changes since v2 [1]:
> - Pick up missed sign-offs and acks from Jon, Shuah, and Christian
> (sorry about missing those earlier).
>
> - Reformat the replacement list to make it easier to read.
>
> - Add 'controller' as a suggested replacement (Kees and Mark)
>
> - Fix up the paired term for 'performer' to be 'director' (Kees)
>
> - Collect some new acks, reviewed-by's, and sign-offs for v2.
>
> - Fix up Chris's email
>
> [1]: http://lore.kernel.org/r/159419296487.2464622.863943877093636532.stgit@dwillia2-desk3.amr.corp.intel.com
>
>
> Documentation/process/coding-style.rst | 20 ++++++++++++++++++++
> 1 file changed, 20 insertions(+)
>
> diff --git a/Documentation/process/coding-style.rst b/Documentation/process/coding-style.rst
> index 2657a55c6f12..1bee6f8affdb 100644
> --- a/Documentation/process/coding-style.rst
> +++ b/Documentation/process/coding-style.rst
> @@ -319,6 +319,26 @@ If you are afraid to mix up your local variable names, you have another
> problem, which is called the function-growth-hormone-imbalance syndrome.
> See chapter 6 (Functions).
>
> +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.
>
> 5) Typedefs
> -----------
>
> _______________________________________________
> Ksummit-discuss mailing list
> [email protected]
> https://lists.linuxfoundation.org/mailman/listinfo/ksummit-discuss

--
Jani Nikula, Intel Open Source Graphics Center

2020-07-17 08:40:01

by Pavel Machek

[permalink] [raw]
Subject: Re: [PATCH v3] CodingStyle: Inclusive Terminology

On Wed 2020-07-08 11:14:27, Dan Williams wrote:
> Linux maintains a coding-style and its own idiomatic set of terminology.
> Update the style guidelines to recommend replacements for the terms
> master/slave and blacklist/whitelist.
>
> Link: http://lore.kernel.org/r/159389297140.2210796.13590142254668787525.stgit@dwillia2-desk3.amr.corp.intel.com
> Acked-by: Randy Dunlap <[email protected]>
> Acked-by: Dave Airlie <[email protected]>
> Acked-by: SeongJae Park <[email protected]>
> Acked-by: Christian Brauner <[email protected]>
> Acked-by: James Bottomley <[email protected]>
> Reviewed-by: Mark Brown <[email protected]>
> Signed-off-by: Theodore Ts'o <[email protected]>
> Signed-off-by: Shuah Khan <[email protected]>
> Signed-off-by: Dan Carpenter <[email protected]>
> Signed-off-by: Kees Cook <[email protected]>
> Signed-off-by: Olof Johansson <[email protected]>
> Signed-off-by: Jonathan Corbet <[email protected]>
> Signed-off-by: Chris Mason <[email protected]>
> Signed-off-by: Greg Kroah-Hartman <[email protected]>
> Signed-off-by: Dan Williams <[email protected]>
> ---
> Changes since v2 [1]:
> - Pick up missed sign-offs and acks from Jon, Shuah, and Christian
> (sorry about missing those earlier).
>
> - Reformat the replacement list to make it easier to read.
>
> - Add 'controller' as a suggested replacement (Kees and Mark)
>
> - Fix up the paired term for 'performer' to be 'director' (Kees)
>
> - Collect some new acks, reviewed-by's, and sign-offs for v2.
>
> - Fix up Chris's email
>
> [1]: http://lore.kernel.org/r/159419296487.2464622.863943877093636532.stgit@dwillia2-desk3.amr.corp.intel.com
>
>
> Documentation/process/coding-style.rst | 20 ++++++++++++++++++++
> 1 file changed, 20 insertions(+)
>
> +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.

Please try to understand how "blacklist" is used in the kernel before suggesting replacements.

NAK.
Pavel

--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

2020-07-17 16:50:50

by Andy Lutomirski

[permalink] [raw]
Subject: Re: [Ksummit-discuss] [PATCH v3] CodingStyle: Inclusive Terminology

On Mon, Jul 13, 2020 at 1:02 AM Takashi Iwai <[email protected]> wrote:
>
> On Wed, 08 Jul 2020 20:14:27 +0200,
> Dan Williams wrote:
> >
> > +Recommended replacements for 'blacklist/whitelist' are:
> > + 'denylist / allowlist'
> > + 'blocklist / passlist'
>
> I started looking through the tree now and noticed there are lots of
> patterns like "whitelisted" or "blacklisted". How can the words fit
> for those? Actually, there are two cases like:
>
> - Foo is blacklisted
> - Allow to load the non-whitelisted cards
>
> Currently I'm replacing the former with "Foo is in denylist", but not
> sure about the latter case. I thought Kees mentioned about this, but
> don't remember the proposal...

Hmm. In these cases, we're trying to convey one of two things. A
given device/platform/CPU/whatever could be known to be problematic
and thus disallowed, or we could have a policy that we generally don't
trust hardware but we have specific reason to believe that this
particular hardware is okay. After doing a highly scientific sampling
of a few cases, some of these are indeed lists and some are not.

If we're going to look for new words for these concepts, perhaps we
shouldn't focus on the *list* aspect -- after all, that's just a
rather popular implementation detail, but it's not the core concept
we're trying to express. As an example case, we have a horrible
concept in which some Intel CPUs support a form of memory failure
recovery, and there is no enumeration mechanism. Instead, there's a
list (sigh). So we could say "your CPU is whitelisted for
such-and-such," which at least gets the idea across, but saying "your
CPU is allowlisted for such-and-such" seems like a stretch. It's not
that we have a policy to allow things on the list -- it's that we
think that CPUs not on the list simply don't have the relevant
capability.

Here are some brainstormed ideas:

- Such-and-such feature is quirked off. (Or disabled due to a quirk.)

- Your device is not on the known-good list.

- Your device is not known-good. It might work anyway -- to try it,
set such-and-such option.

- Your device is known bad.

- Your device is busted and we think you should pressure the
manufacturer to fix it.

- Your device is too old and no longer supported.

- Seriously, you're trying to use an 80386 on a modern kernel? No
thanks. We think it's neat that you still have one that works,
though.

- (Specifically for modules and not part of the Linux kernel tree)
disable_autoload instead of blacklist, perhaps?

Part of my point is that we use blacklist and whitelist to mean
various things, and I don't think we should try to invent a couple of
new catch-all terms to replace them. Perhaps replacing these words
could be an opportunity to come up with better descriptions at the
same time.