Re: [PATCH] afs: proc cells and rootcell are writeable
From: Russ Allbery
Date: Thu Jan 30 2014 - 17:41:54 EST
Pali RohÃr <pali.rohar@xxxxxxxxx> writes:
> 2014-01-30 Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>:
>> Eric W. Biederman <ebiederm@xxxxxxxxxxxx> wrote:
>>> These files have been read-only since this code was merged in 2002.
>>> Over a decade of not being used seems like a strong indication that no
>>> one cares about the write path.
>> I think this is a pretty strong argument. Counter-arguments, anybody?
The current in-tree AFS module is still something of an experiment and is
not widely used by actual clients, essentially all of which are still
using the (old, ugly, frustratingly-difficult-to-maintain) out-of-tree
module. This is mostly because the in-kernel module is not yet
sufficiently mature to support a variety of use cases. I think this is a
(minor) step towards making it more mature.
> In afs documentation is written that you need to write to these files. See:
> https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/Documentation/filesystems/afs.txt#n82
> https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/Documentation/filesystems/afs.txt#n159
> Without cells file, you cannot specify other cell servers and you can
> use only one rootcell which was specified in kernel cmdline. So for
> mounting other server, you need to reboot kernel (if you compiled afs
> driver statically) and without cells file there is no other option to
> mount more afs servers... (or at least it is not written in that
> documentation). So I think without write access it is hard or maybe
> impossible to use afs driver.
In the AFS world more generally, it is not common to change the root cell
without restarting the client. It *is*, however, very common to add
configuration for new cells on the fly. The most common implementation,
OpenAFS, has a command-line tool for root to do that (fs newcell). The
equivalent for the in-tree AFS module would be writing to this file, so to
support the fs newcell command with the in-tree module, this file would
need to be writable. This is a common action in some use cases.
By comparison, there is not a standard fs command to set the current local
cell, only to retrieve it. However, I suspect that's primarily due to
design limitations in the OpenAFS client. If it's not difficult to
support this operation in the in-tree kernel module, I think it would be a
good idea to do so early, since it's the kind of thing that could be
difficult to retroactively add later.
--
Russ Allbery (eagle@xxxxxxxxx) <http://www.eyrie.org/~eagle/>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/