[OpenAFS-devel] Fuse and testsuite
Simon Wilkinson
sxw@inf.ed.ac.uk
Sun, 25 Sep 2011 10:31:10 +0100
On 25 Sep 2011, at 07:27, Troy Benjegerdes <hozer@hozed.org> wrote:
> So I figured once I found out how to make fuse work, and there was already=
a=20
> testsuite, I should add something, so here goes.
Cool. Would you mind uploading this to gerrit? It would also make things muc=
h easier if you were prepared to license these files under a BSD-style licen=
se - at the moment, the copyright information refers to a file that isn't wi=
thin the patch set, and we are very keen on avoiding a proliferation of diff=
erent license texts within the codebase.
> which requires me to at least be
> able to perform 'fs' commands through the fuse interface.=20
>=20
> I saw some mention of maybe using xattrs to do this...
To perform fs commands, there needs to be a way of issuing path ioctls to th=
e cache manager. On Linux this is already done by using ioctls against a "sp=
ecial" file in /proc. For my money, the easiest way of doing this for fuse w=
ould be to also allow a special file that lives within the AFS namespace, an=
d issue ioctls on that. Then, fs just needs a command line switch to say whi=
ch AFS root it should be targeting.
> would this make the most
> sense? Would xattrs also be usefull in providing some information to a use=
r
> (or just userspace) on the status of connected/disconnected/uploading a fi=
le?
My preferred mechanism for issuing reconnection status reports to the user w=
ould be to adapt the system that is already used to provide cache manager de=
bugging information through fstrace. This supports the idea of collections, s=
o you would simply define a disconnected state collection. You've then got a=
kernel to user space event logging infrastructure which could be easily har=
nessed by the fs command to report on which files are being resync'd, and ho=
w many more there are to go.
If you are interested in implementing any of this, let me know, and I'll be h=
appy to point you in the right direction.
Cheers,
Simon
>=20