[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <10399078.nUPlyArG6x@lichtvoll.de>
Date: Fri, 24 Nov 2023 10:36:05 +0100
From: Martin Steigerwald <martin@...htvoll.de>
To: Cedric Blancher <cedric.blancher@...il.com>,
Al Viro <viro@...iv.linux.org.uk>
Cc: linux-fsdevel <linux-fsdevel@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: d_genocide()? What about d_holodomor(), d_massmurder(),
d_execute_warcrimes()? Re: [PATCH 15/20] d_genocide(): move the extern into
fs/internal.h
Al Viro - 24.11.23, 08:48:57 CET:
> On Fri, Nov 24, 2023 at 06:57:59AM +0000, Al Viro wrote:
> > > > +extern void d_genocide(struct dentry *);
> > >
> > > Seriously, who came up with THAT name? "Genocide" is not a nice
> > > term,
> > > not even if you ignore political correctness.
> > > Or what will be next? d_holodomor()? d_massmurder()?
> > > d_execute_warcrimes()?>
> > kill_them_all(), on the account of that being what it's doing?
>
> 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 never got why in the context of computers anything is ever being killed.
It does not live to begin with.
You can stop something, remove it, delete it, destroy it, pause it, resume
it, overwrite it and you can do it really quickly or (almost) instantly or
slowly or recursively or some combination of those, but kill? You cannot
kill what does not live.
d_delete/destroy/remove_recursively() could be a suitable function name.
Pick one.
Similar it is with the term children or parent. There are no children in
computer software. Period. But here it may be more difficult to find
alternative wording. Would still be good to find something, cause I was
quite taken aback by the wording of the OOM killer. (Actually I was taken
aback that an operating system could even have something that forcefully
quits a process without saving data. It never matched my expectations of
reliability and stability.)
So how about stopping to put meaning into computer software source code
that simply is not there to begin with? How about starting to use terms
that describe what is actually being done and what is actually there?
--
Martin
Powered by blists - more mailing lists