From: Herbert P÷tzl (herbert_at_13thfloor.at)
Date: Wed 23 Jul 2003 - 15:34:21 BST
Recently I was reflecting about the ILI stuff,
regarding vserver of course, and how cool it
would be to have it for each and every file
system ... I even considered implementing it
for some filesystems 8-) ...
... but this was the moment I asked myself:
- do we need the ILI flag at all?
- isn't the concept enough for everyday
VS usage scenarios?
the current implementation is nice to handle,
except that the userspace tools of some (all?)
distros use the same bit for tail merging,
which, on the other hand, can be an advantage,
if tail merging is not implemented ;)
let's have a look at the current usage of ILI
for a typical VS scenario
- several VS on one shared partition
- there are some files which are +imm and +ili
and there are some files which are not
(the non-shared ones)
- maybe there are some files set to +imm
by the root of the VS to prevent deletion ...
- all files with +imm, +ili will be files
with more than one link, otherwise it is
not considered useful at all ...
what if we apply the following logic:
- a file, set to immutable, having a link
count of greater than 1, can be removed,
but not changed from within a VC, as if
the ili flag was set, all other files are
just handled as normal ...
- on removal of the last but one link, the
immutable flag is cleared, and the file
becomes a 'normal' file ...
maybe I missed some utterly important detail,
which, by the way, happens to me on a regular
basis ;), so I would like to have a short
discussion on the pro/cons of this issue ...