[PATCH] afs: proc cells and rootcell are writeable
Russ Allbery
eagle at eyrie.org
Thu Jan 30 17:33:09 EST 2014
Pali Rohár <pali.rohar at gmail.com> writes:
> 2014-01-30 Linus Torvalds <torvalds at linux-foundation.org>:
>> Eric W. Biederman <ebiederm at xmission.com> 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 at eyrie.org) <http://www.eyrie.org/~eagle/>
More information about the linux-afs
mailing list