Harald Barth <[EMAIL PROTECTED]> wrote:

> Take the arla kernel module, call it kAFS and most of your tasks are
> allready done. Yes, the code is dual licensed.

I looked at Arla and noticed a few things:

 (1) Filesystem design is about compromises, and I don't agree with all the
     ones Arla have used.  Arla, for instance, is mostly implemented in
     userspace.

 (2) There was a bad deadlock problem when I looked in 2001, which may have
     been fixed in the intervening seven years, in which the kernel and
     userspace could deadlock against each other.  Unfortunately, I don't
     recall the details.

 (3) I don't like direct patching of the syscall table.  However, Linux should
     provide pioctl properly.

 (4) This is very bad:

        #ifdef CONFIG_SECURITY
        ...
        static int
        nnpfs_set_pag_sec(void)
        {
            static nnpfs_pag_t pagnum = NNPFS_PAG_LLIM;

            if (pagnum == NNPFS_PAG_ULIM)
                return -ENOMEM;
            /* pagnum = NNPFS_PAG_LLIM; */

 >>>        current->security = PAG2SEC(pagnum);
            pagnum++;
            return 0;
        }

     You cannot do that!

     Keyrings are there for a good reason.

David
_______________________________________________
OpenAFS-devel mailing list
[email protected]
https://lists.openafs.org/mailman/listinfo/openafs-devel

Reply via email to