The Linux kernel has been promoting inclusive terminology reforms in the past few years, gradually replacing terms such as "master/slave" and "blacklist/whitelist" with more neutral expressions. However, there has always been a function called "d_genocide()" in the kernel code, which has finally been removed in Linux 6.19. This function was originally merged into the mainline with a series of dcache updates in 2023. When submitted, it triggered a discussion in the community about whether the naming was appropriate.

The naming of the "d_genocide()" function was questioned and defended by long-time kernel developer Al Viro. He stated at the time that the function's intention was to "delete the given dentry and all its children together." It is almost impossible to find a real-world word for this behavior that does not have negative associations. This function is only called in kill_litter_super() and is responsible for cleaning up "leaked" directory entry references in the file system under certain circumstances. For example, some file systems resident the entire directory tree in the dcache and prevent forward dentry from being recycled through additional reference counting. This batch of residual references needs to be cleared at once when the file system is unmounted.
With the latest patch of Linux 6.19, this set of codes related to "d_genocide()" and "DCACHE_GENOCIDE" has been completely removed and replaced by a reconstruction of the uninstall process. According to Al Viro's instructions in the merge request, the regular shrink_dcache_for_umount() is now used to uniformly remove the DCACHE_PERSISTENT mark of all dentries and reduce the reference count accordingly when the mark exists. In this way, the behavior of kill_litter_super() is equivalent to kill_anon_super(), and there is no need for separate "genocide" logic.
It should be noted that the word "genocide" only exists in the kernel's function names and related tags, and is never directly presented to end users. However, as the Linux community continues to promote language inclusivity, such a name with a strong negative connotation still seems out of place, so its deletion in this refactoring is also seen as an adjustment that is more consistent with the overall style. With the advancement of Linux 6.19, this historically controversial naming has officially been retired from the kernel code.