this post was submitted on 10 Dec 2025
91 points (94.2% liked)

Linux

10554 readers
388 users here now

A community for everything relating to the GNU/Linux operating system (except the memes!)

Also, check out:

Original icon base courtesy of lewing@isc.tamu.edu and The GIMP

founded 2 years ago
MODERATORS
 

While the Linux kernel has inclusive terminology guidelines for the past five years to replace phrases like master/slave and blacklist/whitelist, there has surprisingly been a "genocide" function within the kernel that was questioned when it was first submitted for inclusion but now removed in Linux 6.19.

Introduced to the Linux kernel back in 2023 was the d_genocide() function as part of various dcache updates to the kernel. The genocide name was questioned when the patches were first posted by longtime Linux developer Al Viro

top 33 comments
sorted by: hot top controversial new old
[–] GreenCrunch@piefed.blahaj.zone 46 points 1 day ago (1 children)

To elaborate a bit: what that function does (well, tries to do - it has serious limitations, which is why there is only one caller remaining and that one is used only when nothing else can access the filesystem anymore) is "kill given dentry, along with all its children, all their children, etc."

I sincerely doubt that you will be able to come up with any word describing such action in any real-world context that would not come with very nasty associations.

I feel like there could have been better names possible... d_recursive_kill perhaps? I'm certainly not an expert in this system but I find it challenging to believe that "genocide" was the only word that is adequately descriptive of the functionality.

In fact, I'd argue it's not that descriptive, given that genocide involves targeting some group of people based on some trait, like race, culture, disability, etc. - based on the description "kill given dentry, along with all its children, all their children, etc." that doesn't seem to fit...

perhaps I'm overthinking.

[–] i_ben_fine@midwest.social 24 points 1 day ago (1 children)

the person who can't think of a word other than "genocide" is underthinking, for sure.

[–] psycotica0@lemmy.ca 38 points 1 day ago (3 children)

I know it doesn't matter, and is fully a side issue to this post, but I hate that "blacklist" gets brought into this. It's never been used to be "a list of black people" or something; that wasn't the original meaning, and that's not the modern intention. It's just a word that sounds like maybe it could have been racist in origin, but it wasn't. And that one makes me grumpy just as an annoying word person.

The real hot take was that we used the term black and white for people at all! If we could go back to the past and make it so we call it, like, Affo and Euro or something, whatever, it would have cleared up a lot of unrelated term confusion.

I mean, if we could go back and change things there's maybe some other stuff that would be more important to change... but among the changes I would make are those!

[–] fruitycoder@sh.itjust.works 15 points 1 day ago

I did have a very real work experience where people went "a what list" when I mentioned we had a black list of software built. I am kind of glad to move past black is bad, white means good phrasing tbh because some people are turned off by it.

If we could just end racism, as in the fucking stupid idea of race at all, it wouldn't matter. People are even black and white...

[–] BlameTheAntifa@lemmy.world 14 points 23 hours ago (2 children)

The problem is “black” being used in a negative context while at the same time “white” is being used in a positive context. It reinforces racial stereotypes specifically because that is the language we also use for race. Language and psychology are inseparable.

“Block list” and “allow list” are clearer and less ambiguous anyway, and just make more sense.

[–] groet@feddit.org 2 points 23 minutes ago

Yeah allow/block does not need cultural context to be understood. You can take someone from an uncontacted tribe in the amazon (and through a magic translation device) they will understand what a allow list is. They wouldn't understand blacklist.

[–] ElGrossKotzo@troet.cafe -3 points 22 hours ago (1 children)

@BlameTheAntifa @psycotica0

red list green list?
brown list rainbow list?
clear list pink list?
no list yes list?

[–] BatmanAoD@programming.dev 2 points 22 hours ago

One list, two list, red list, blue list

(I genuinely thought that was where you were going with that for a line or two)

[–] andioop@programming.dev 2 points 21 hours ago (1 children)

It always mildly annoyed that we call them "black people" and "white people" because "black people" are more brown than black, and "white people" are more tan than white. And brown can be viewed as a shade of tan. Not very descriptive.

[–] psycotica0@lemmy.ca 1 points 10 hours ago

The world tells me I'm white, but if I had to name my skin I'd say it's pretty clearly pink 😛

[–] yesman@lemmy.world 37 points 1 day ago (3 children)

Why is it always the "it's just a word bro" types who gnash their own eyes out over the prospect of changing one of those words?

[–] mfed1122@discuss.tchncs.de 17 points 1 day ago (2 children)

Fuckin exactly.

"It's stupid to change it to main, it's just words"

"Oh, so since it's just a word change I guess you shouldn't be bothered by it."

Angry NPC face

[–] bitwolf@sh.itjust.works 5 points 23 hours ago

I always get them with "main is shorter than master, don't you want to type less?"

[–] eleitl@lemmy.zip 2 points 1 day ago

In software engineering, saying "it's just a word change" without a technical rationale ought to have you murdered on the spot.

[–] MartianSands@sh.itjust.works 14 points 1 day ago

The reason I tend to object to these things is that bikeshedding isn't free, it creates work and technical debt. That raises the bar for changes we ought to make, and I think it raises it quite a lot higher than objections which are frequently specific to the US and are largely imaginary (which is my honest interpretation of most of these changes).

That said, "genocide" is clearly unnecessarily provocative. It's also not an industry-wide change, it's just one function, so this particular change seems sensible to me

[–] andioop@programming.dev 1 points 21 hours ago

The people who legitimately hold the view that it's just a word might be a little frustrated at the small bit of extra work of needing to change their scripts or code that uses those words to the new words, but otherwise no big deal. But a lot of "it's just a word bro" folks actually do care and just like to pretend they do not for clout, because caring is for lame losers and being able to falsely present yourself as a previously-neutral party now moved to care by how stupid something is can hold a lot of weight when convincing others and make you feel cool.

[–] djsaskdja@reddthat.com 32 points 1 day ago (1 children)

Using the word “genocide” in the source code in 2023 is way more weird than using master/slave or blacklist/whitelist. Those terms have been around for decades.

[–] prole@lemmy.blahaj.zone 3 points 23 hours ago

Didn't they do away with the master/slave terminology years ago?

[–] Badabinski@kbin.earth 14 points 1 day ago (2 children)

I'm surprised the comments aren't worse over there. The Phoronix comments section shares a striking resemblance to YouTube, but I had to go like 2-3 pages in before the chuds really started rolling in.

[–] i_ben_fine@midwest.social 3 points 1 day ago

I also must observe the horrors.

[–] Feyd@programming.dev 2 points 1 day ago

They started in the first page and hit fill force on 2 lol

[–] IphtashuFitz@lemmy.world 7 points 22 hours ago

I worked on a memory manager back in the days of DOS & extended memory overlays. The original author liked to refer to blocks of memory as “cookies” and temporary variables as “handy”, among other things. My favorites however were a flag identifying memory corruption as “shit_cookie_corrupt” and a panic function when it couldn’t recover that was called ohShitOhShitOhShit().

[–] Hirom@beehaw.org 4 points 1 day ago

Name the fonction after a war criminal.

[–] azerial@lemmy.dbzer0.com 1 points 8 hours ago

Reminds me of when I worked for EA on the development and release engineering team and we had to scrape all of our Jenkins and QuickBuild code base to remove references of "master" and "slave" and change it to "parent" and "child" or "primary" and "secondary".