- Joined
- Jan 6, 2018
F-word removed from Linux code comments in favour of 'hug' (Original)
Dropping Profanity In Kernel Code Comments: Linux Gets "Hugs" (Original)
As Jarkko Sakkinen typed "In order to comply with the CoC, replace **** with a hug." he must have checked a dozen times to make sure he didn't accidentally type *hugs*.
F-word removed from Linux code comments in favour of 'hug'
By Paul Hill · Nov 30, 2018 16:24 EST
In October, the Linux kernel project adopted a new Code of Conduct with the aim of enforcing more inclusive language; while it did have plenty of supporters, it also had detractors who were not keen on the idea at all. Today, Jarkko Sakkinen from Intel began putting the Code of Conduct into practice against several code comments, replacing the F-word with 'hug'.
Following the change, several contributors responded to the alterations calling them insane, one wondered if Sakkinen was just trying to make a joke, and another called it censorship and said he’d refuse to apply any sort of patches like this to the code he's in charge of. Another contributor said they didn’t mind the change but that some of the sentences were now difficult to understand, this was echoed by a Dutch contributor who said the replacements were confusing for non-native English speakers.
Some of the post-change comments read “Some Athlon laptops have really hugged PST tables”, “If you don’t see why, please stay the hug away from my code”, and “Only Sun can take such nice parts and hug up the programming interface”.
While these changes may not seem quite as dystopian as some imagined, it’s not very good practice to make the comments confusing. Anyone who has taken a lesson in programming can tell you that it’s very important to leave enough understandable comments throughout the code so that contributors in future can understand what the code does before they make changes.
Source: Free Desktop via Phoronix
By Paul Hill · Nov 30, 2018 16:24 EST
In October, the Linux kernel project adopted a new Code of Conduct with the aim of enforcing more inclusive language; while it did have plenty of supporters, it also had detractors who were not keen on the idea at all. Today, Jarkko Sakkinen from Intel began putting the Code of Conduct into practice against several code comments, replacing the F-word with 'hug'.
Following the change, several contributors responded to the alterations calling them insane, one wondered if Sakkinen was just trying to make a joke, and another called it censorship and said he’d refuse to apply any sort of patches like this to the code he's in charge of. Another contributor said they didn’t mind the change but that some of the sentences were now difficult to understand, this was echoed by a Dutch contributor who said the replacements were confusing for non-native English speakers.
Some of the post-change comments read “Some Athlon laptops have really hugged PST tables”, “If you don’t see why, please stay the hug away from my code”, and “Only Sun can take such nice parts and hug up the programming interface”.
While these changes may not seem quite as dystopian as some imagined, it’s not very good practice to make the comments confusing. Anyone who has taken a lesson in programming can tell you that it’s very important to leave enough understandable comments throughout the code so that contributors in future can understand what the code does before they make changes.
Source: Free Desktop via Phoronix
Dropping Profanity In Kernel Code Comments: Linux Gets "Hugs"
Written by Michael Larabel in Linux Kernel on 30 November 2018 at 02:48 PM EST. 70 Comments
In seeking to comply with the Linux kernel's new Code of Conduct enacted by the recent 4.19 release, a patch series has been sent out today replacing profane kernel code comments with "hugs".
Like with most complex codebases -- especially ones developed over the course of many years by many different developers -- the Linux kernel has its share of colorful words within code comments left by developers. With a set of 15 patches sent out today by Jarkko Sakkinen of Intel, the kernel has no more fucks but instead only hugs. "In order to comply with the CoC, replace **** with a hug."
Some of the revised code comments now include "IOC3 is hugging hugged beyond belief", "Only Sun can take such nice parts and hug up the programming interface like this. Good job guys...", "Hugging broken ABI", "avoid hugging up the memory controller (somehow)", and "Hug, we are miserable poor guys..."
Surprisingly, at least with this initial patch series, it's just 33 lines of changed comments out of 3.3+ million lines of code comments within the kernel source tree but we'll see what other words may get cleaned up next for making the Linux kernel more inviting to all. Linus Torvalds has also cleaned up his colorful language and refrained from any outbursts on the mailing list since his brief retreat during the 4.19 cycle.
Written by Michael Larabel in Linux Kernel on 30 November 2018 at 02:48 PM EST. 70 Comments
In seeking to comply with the Linux kernel's new Code of Conduct enacted by the recent 4.19 release, a patch series has been sent out today replacing profane kernel code comments with "hugs".
Like with most complex codebases -- especially ones developed over the course of many years by many different developers -- the Linux kernel has its share of colorful words within code comments left by developers. With a set of 15 patches sent out today by Jarkko Sakkinen of Intel, the kernel has no more fucks but instead only hugs. "In order to comply with the CoC, replace **** with a hug."
Some of the revised code comments now include "IOC3 is hugging hugged beyond belief", "Only Sun can take such nice parts and hug up the programming interface like this. Good job guys...", "Hugging broken ABI", "avoid hugging up the memory controller (somehow)", and "Hug, we are miserable poor guys..."
Surprisingly, at least with this initial patch series, it's just 33 lines of changed comments out of 3.3+ million lines of code comments within the kernel source tree but we'll see what other words may get cleaned up next for making the Linux kernel more inviting to all. Linus Torvalds has also cleaned up his colorful language and refrained from any outbursts on the mailing list since his brief retreat during the 4.19 cycle.
[PATCH RFC 01/15] MIPS: replace **** with a hug
From: Jarkko Sakkinen
Date: Fri Nov 30 2018 - 14:27:44 EST
Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@xxxxxxxxxxxxxxx>
---
arch/mips/pci/ops-bridge.c | 24 ++++++++++++------------
arch/mips/sgi-ip22/ip22-setup.c | 2 +-
2 files changed, 13 insertions(+), 13 deletions(-)
diff --git a/arch/mips/pci/ops-bridge.c b/arch/mips/pci/ops-bridge.c
index a1d2c4ae0d1b..c755c4c92fa9 100644
--- a/arch/mips/pci/ops-bridge.c
+++ b/arch/mips/pci/ops-bridge.c
@@ -56,7 +56,7 @@ static int pci_conf0_read_config(struct pci_bus *bus, unsigned int devfn,
return PCIBIOS_DEVICE_NOT_FOUND;
/*
- * IOC3 is fucking fucked beyond belief ... Don't even give the
+ * IOC3 is hugging hugged beyond belief ... Don't even give the
* generic PCI code a chance to look at it for real ...
*/
if (cf == (PCI_VENDOR_ID_SGI | (PCI_DEVICE_ID_SGI_IOC3 << 16)))
@@ -76,7 +76,7 @@ static int pci_conf0_read_config(struct pci_bus *bus, unsigned int devfn,
oh_my_gawd:
/*
- * IOC3 is fucking fucked beyond belief ... Don't even give the
+ * IOC3 is hugging hugged beyond belief ... Don't even give the
* generic PCI code a chance to look at the wrong register.
*/
if ((where >= 0x14 && where < 0x40) || (where >= 0x4
) {
@@ -85,7 +85,7 @@ static int pci_conf0_read_config(struct pci_bus *bus, unsigned int devfn,
}
/*
- * IOC3 is fucking fucked beyond belief ... Don't try to access
+ * IOC3 is hugging hugged beyond belief ... Don't try to access
* anything but 32-bit words ...
*/
addr = &bridge->b_type0_cfg_dev[slot].f[fn].l[where >> 2];
@@ -118,7 +118,7 @@ static int pci_conf1_read_config(struct pci_bus *bus, unsigned int devfn,
return PCIBIOS_DEVICE_NOT_FOUND;
/*
- * IOC3 is fucking fucked beyond belief ... Don't even give the
+ * IOC3 is hugging hugged beyond belief ... Don't even give the
* generic PCI code a chance to look at it for real ...
*/
if (cf == (PCI_VENDOR_ID_SGI | (PCI_DEVICE_ID_SGI_IOC3 << 16)))
@@ -139,7 +139,7 @@ static int pci_conf1_read_config(struct pci_bus *bus, unsigned int devfn,
oh_my_gawd:
/*
- * IOC3 is fucking fucked beyond belief ... Don't even give the
+ * IOC3 is hugging hugged beyond belief ... Don't even give the
* generic PCI code a chance to look at the wrong register.
*/
if ((where >= 0x14 && where < 0x40) || (where >= 0x4
) {
@@ -148,7 +148,7 @@ static int pci_conf1_read_config(struct pci_bus *bus, unsigned int devfn,
}
/*
- * IOC3 is fucking fucked beyond belief ... Don't try to access
+ * IOC3 is hugging hugged beyond belief ... Don't try to access
* anything but 32-bit words ...
*/
bridge->b_pci_cfg = (busno << 16) | (slot << 11);
@@ -189,7 +189,7 @@ static int pci_conf0_write_config(struct pci_bus *bus, unsigned int devfn,
return PCIBIOS_DEVICE_NOT_FOUND;
/*
- * IOC3 is fucking fucked beyond belief ... Don't even give the
+ * IOC3 is hugging hugged beyond belief ... Don't even give the
* generic PCI code a chance to look at it for real ...
*/
if (cf == (PCI_VENDOR_ID_SGI | (PCI_DEVICE_ID_SGI_IOC3 << 16)))
@@ -213,14 +213,14 @@ static int pci_conf0_write_config(struct pci_bus *bus, unsigned int devfn,
oh_my_gawd:
/*
- * IOC3 is fucking fucked beyond belief ... Don't even give the
+ * IOC3 is hugging hugged beyond belief ... Don't even give the
* generic PCI code a chance to touch the wrong register.
*/
if ((where >= 0x14 && where < 0x40) || (where >= 0x4
)
return PCIBIOS_SUCCESSFUL;
/*
- * IOC3 is fucking fucked beyond belief ... Don't try to access
+ * IOC3 is hugging hugged beyond belief ... Don't try to access
* anything but 32-bit words ...
*/
addr = &bridge->b_type0_cfg_dev[slot].f[fn].l[where >> 2];
@@ -257,7 +257,7 @@ static int pci_conf1_write_config(struct pci_bus *bus, unsigned int devfn,
return PCIBIOS_DEVICE_NOT_FOUND;
/*
- * IOC3 is fucking fucked beyond belief ... Don't even give the
+ * IOC3 is hugging hugged beyond belief ... Don't even give the
* generic PCI code a chance to look at it for real ...
*/
if (cf == (PCI_VENDOR_ID_SGI | (PCI_DEVICE_ID_SGI_IOC3 << 16)))
@@ -281,14 +281,14 @@ static int pci_conf1_write_config(struct pci_bus *bus, unsigned int devfn,
oh_my_gawd:
/*
- * IOC3 is fucking fucked beyond belief ... Don't even give the
+ * IOC3 is hugging hugged beyond belief ... Don't even give the
* generic PCI code a chance to touch the wrong register.
*/
if ((where >= 0x14 && where < 0x40) || (where >= 0x4
)
return PCIBIOS_SUCCESSFUL;
/*
- * IOC3 is fucking fucked beyond belief ... Don't try to access
+ * IOC3 is hugging hugged beyond belief ... Don't try to access
* anything but 32-bit words ...
*/
addr = &bridge->b_type0_cfg_dev[slot].f[fn].l[where >> 2];
diff --git a/arch/mips/sgi-ip22/ip22-setup.c b/arch/mips/sgi-ip22/ip22-setup.c
index b69daa02401b..50f04fe491ca 100644
--- a/arch/mips/sgi-ip22/ip22-setup.c
+++ b/arch/mips/sgi-ip22/ip22-setup.c
@@ -36,7 +36,7 @@ void __init plat_mem_setup(void)
board_be_init = ip22_be_init;
/* Init the INDY HPC I/O controller. Need to call this before
- * fucking with the memory controller because it needs to know the
+ * hugging with the memory controller because it needs to know the
* boardID and whether this is a Guiness or a FullHouse machine.
*/
sgihpc_init();
--
2.19.1
From: Jarkko Sakkinen
Date: Fri Nov 30 2018 - 14:27:44 EST
- Next message: Jarkko Sakkinen: "[PATCH RFC 06/15] cpufreq: replace **** with a hug"
- Previous message: Arnaldo Carvalho de Melo: "Re: [PATCH v5 0/4] perf report/annotate: Support average IPC and IPC coverage for function"
- Next in thread: Jarkko Sakkinen: "Re: [PATCH RFC 01/15] MIPS: replace **** with a hug"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@xxxxxxxxxxxxxxx>
---
arch/mips/pci/ops-bridge.c | 24 ++++++++++++------------
arch/mips/sgi-ip22/ip22-setup.c | 2 +-
2 files changed, 13 insertions(+), 13 deletions(-)
diff --git a/arch/mips/pci/ops-bridge.c b/arch/mips/pci/ops-bridge.c
index a1d2c4ae0d1b..c755c4c92fa9 100644
--- a/arch/mips/pci/ops-bridge.c
+++ b/arch/mips/pci/ops-bridge.c
@@ -56,7 +56,7 @@ static int pci_conf0_read_config(struct pci_bus *bus, unsigned int devfn,
return PCIBIOS_DEVICE_NOT_FOUND;
/*
- * IOC3 is fucking fucked beyond belief ... Don't even give the
+ * IOC3 is hugging hugged beyond belief ... Don't even give the
* generic PCI code a chance to look at it for real ...
*/
if (cf == (PCI_VENDOR_ID_SGI | (PCI_DEVICE_ID_SGI_IOC3 << 16)))
@@ -76,7 +76,7 @@ static int pci_conf0_read_config(struct pci_bus *bus, unsigned int devfn,
oh_my_gawd:
/*
- * IOC3 is fucking fucked beyond belief ... Don't even give the
+ * IOC3 is hugging hugged beyond belief ... Don't even give the
* generic PCI code a chance to look at the wrong register.
*/
if ((where >= 0x14 && where < 0x40) || (where >= 0x4
@@ -85,7 +85,7 @@ static int pci_conf0_read_config(struct pci_bus *bus, unsigned int devfn,
}
/*
- * IOC3 is fucking fucked beyond belief ... Don't try to access
+ * IOC3 is hugging hugged beyond belief ... Don't try to access
* anything but 32-bit words ...
*/
addr = &bridge->b_type0_cfg_dev[slot].f[fn].l[where >> 2];
@@ -118,7 +118,7 @@ static int pci_conf1_read_config(struct pci_bus *bus, unsigned int devfn,
return PCIBIOS_DEVICE_NOT_FOUND;
/*
- * IOC3 is fucking fucked beyond belief ... Don't even give the
+ * IOC3 is hugging hugged beyond belief ... Don't even give the
* generic PCI code a chance to look at it for real ...
*/
if (cf == (PCI_VENDOR_ID_SGI | (PCI_DEVICE_ID_SGI_IOC3 << 16)))
@@ -139,7 +139,7 @@ static int pci_conf1_read_config(struct pci_bus *bus, unsigned int devfn,
oh_my_gawd:
/*
- * IOC3 is fucking fucked beyond belief ... Don't even give the
+ * IOC3 is hugging hugged beyond belief ... Don't even give the
* generic PCI code a chance to look at the wrong register.
*/
if ((where >= 0x14 && where < 0x40) || (where >= 0x4
@@ -148,7 +148,7 @@ static int pci_conf1_read_config(struct pci_bus *bus, unsigned int devfn,
}
/*
- * IOC3 is fucking fucked beyond belief ... Don't try to access
+ * IOC3 is hugging hugged beyond belief ... Don't try to access
* anything but 32-bit words ...
*/
bridge->b_pci_cfg = (busno << 16) | (slot << 11);
@@ -189,7 +189,7 @@ static int pci_conf0_write_config(struct pci_bus *bus, unsigned int devfn,
return PCIBIOS_DEVICE_NOT_FOUND;
/*
- * IOC3 is fucking fucked beyond belief ... Don't even give the
+ * IOC3 is hugging hugged beyond belief ... Don't even give the
* generic PCI code a chance to look at it for real ...
*/
if (cf == (PCI_VENDOR_ID_SGI | (PCI_DEVICE_ID_SGI_IOC3 << 16)))
@@ -213,14 +213,14 @@ static int pci_conf0_write_config(struct pci_bus *bus, unsigned int devfn,
oh_my_gawd:
/*
- * IOC3 is fucking fucked beyond belief ... Don't even give the
+ * IOC3 is hugging hugged beyond belief ... Don't even give the
* generic PCI code a chance to touch the wrong register.
*/
if ((where >= 0x14 && where < 0x40) || (where >= 0x4
return PCIBIOS_SUCCESSFUL;
/*
- * IOC3 is fucking fucked beyond belief ... Don't try to access
+ * IOC3 is hugging hugged beyond belief ... Don't try to access
* anything but 32-bit words ...
*/
addr = &bridge->b_type0_cfg_dev[slot].f[fn].l[where >> 2];
@@ -257,7 +257,7 @@ static int pci_conf1_write_config(struct pci_bus *bus, unsigned int devfn,
return PCIBIOS_DEVICE_NOT_FOUND;
/*
- * IOC3 is fucking fucked beyond belief ... Don't even give the
+ * IOC3 is hugging hugged beyond belief ... Don't even give the
* generic PCI code a chance to look at it for real ...
*/
if (cf == (PCI_VENDOR_ID_SGI | (PCI_DEVICE_ID_SGI_IOC3 << 16)))
@@ -281,14 +281,14 @@ static int pci_conf1_write_config(struct pci_bus *bus, unsigned int devfn,
oh_my_gawd:
/*
- * IOC3 is fucking fucked beyond belief ... Don't even give the
+ * IOC3 is hugging hugged beyond belief ... Don't even give the
* generic PCI code a chance to touch the wrong register.
*/
if ((where >= 0x14 && where < 0x40) || (where >= 0x4
return PCIBIOS_SUCCESSFUL;
/*
- * IOC3 is fucking fucked beyond belief ... Don't try to access
+ * IOC3 is hugging hugged beyond belief ... Don't try to access
* anything but 32-bit words ...
*/
addr = &bridge->b_type0_cfg_dev[slot].f[fn].l[where >> 2];
diff --git a/arch/mips/sgi-ip22/ip22-setup.c b/arch/mips/sgi-ip22/ip22-setup.c
index b69daa02401b..50f04fe491ca 100644
--- a/arch/mips/sgi-ip22/ip22-setup.c
+++ b/arch/mips/sgi-ip22/ip22-setup.c
@@ -36,7 +36,7 @@ void __init plat_mem_setup(void)
board_be_init = ip22_be_init;
/* Init the INDY HPC I/O controller. Need to call this before
- * fucking with the memory controller because it needs to know the
+ * hugging with the memory controller because it needs to know the
* boardID and whether this is a Guiness or a FullHouse machine.
*/
sgihpc_init();
--
2.19.1
[PATCH RFC 00/15] Zero ****s, hugload of hugs <3
Jarkko Sakkinen jarkko.sakkinen at linux.intel.com
Fri Nov 30 19:27:09 UTC 2018
Jarkko Sakkinen (15):
MIPS: replace **** with a hug
Documentation: replace **** with a hug
drm/nouveau: replace **** with a hug
m68k: replace **** with a hug
parisc: replace **** with a hug
cpufreq: replace **** with a hug
ide: replace **** with a hug
media: replace **** with a hug
mtd: replace **** with a hug
net/sunhme: replace **** with a hug
scsi: replace **** with a hug
inotify: replace **** with a hug
irq: replace **** with a hug
lib: replace **** with a hug
net: replace **** with a hug
Documentation/kernel-hacking/locking.rst | 2 +-
arch/m68k/include/asm/sun3ints.h | 2 +-
arch/mips/pci/ops-bridge.c | 24 +++++++++----------
arch/mips/sgi-ip22/ip22-setup.c | 2 +-
arch/parisc/kernel/sys_parisc.c | 2 +-
drivers/cpufreq/powernow-k7.c | 2 +-
.../gpu/drm/nouveau/nvkm/subdev/bios/init.c | 2 +-
.../nouveau/nvkm/subdev/pmu/fuc/macros.fuc | 2 +-
drivers/ide/cmd640.c | 2 +-
drivers/media/i2c/bt819.c | 8 ++++---
drivers/mtd/mtd_blkdevs.c | 2 +-
drivers/net/ethernet/sun/sunhme.c | 4 ++--
drivers/scsi/qlogicpti.h | 2 +-
fs/notify/inotify/inotify_user.c | 2 +-
kernel/irq/timings.c | 2 +-
lib/vsprintf.c | 2 +-
net/core/skbuff.c | 2 +-
17 files changed, 33 insertions(+), 31 deletions(-)
--
2.19.1
Jarkko Sakkinen jarkko.sakkinen at linux.intel.com
Fri Nov 30 19:27:09 UTC 2018
- Previous message (by thread): [pull] amdgpu, amdkfd, ttm, scheduler, radeon drm-next-4.21
- Next message (by thread): [PATCH RFC 03/15] drm/nouveau: replace **** with a hug
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Jarkko Sakkinen (15):
MIPS: replace **** with a hug
Documentation: replace **** with a hug
drm/nouveau: replace **** with a hug
m68k: replace **** with a hug
parisc: replace **** with a hug
cpufreq: replace **** with a hug
ide: replace **** with a hug
media: replace **** with a hug
mtd: replace **** with a hug
net/sunhme: replace **** with a hug
scsi: replace **** with a hug
inotify: replace **** with a hug
irq: replace **** with a hug
lib: replace **** with a hug
net: replace **** with a hug
Documentation/kernel-hacking/locking.rst | 2 +-
arch/m68k/include/asm/sun3ints.h | 2 +-
arch/mips/pci/ops-bridge.c | 24 +++++++++----------
arch/mips/sgi-ip22/ip22-setup.c | 2 +-
arch/parisc/kernel/sys_parisc.c | 2 +-
drivers/cpufreq/powernow-k7.c | 2 +-
.../gpu/drm/nouveau/nvkm/subdev/bios/init.c | 2 +-
.../nouveau/nvkm/subdev/pmu/fuc/macros.fuc | 2 +-
drivers/ide/cmd640.c | 2 +-
drivers/media/i2c/bt819.c | 8 ++++---
drivers/mtd/mtd_blkdevs.c | 2 +-
drivers/net/ethernet/sun/sunhme.c | 4 ++--
drivers/scsi/qlogicpti.h | 2 +-
fs/notify/inotify/inotify_user.c | 2 +-
kernel/irq/timings.c | 2 +-
lib/vsprintf.c | 2 +-
net/core/skbuff.c | 2 +-
17 files changed, 33 insertions(+), 31 deletions(-)
--
2.19.1