>> Well, it exists and it comes with the kernel.org sources since a long time >> now. However, it's far from usable. Read Documentation/filesystems/afs.txt >> from a recent kernel for details. > > Hm, i am not sure here, but i always thought that this is the module from the > Arla sources? > > regards > > --lars
Let me say that again: No no no no. I wonder how much that "how difficult can it be"-project in the kernel has harmed AFS in general. What first impression of AFS do users get? The RH-kAFS is the standing proof that stuff does not need to be working to get distributed with the kernel. Let me try to make a table: Name License Shipped from Concept Status on Linux ---------------------------------------------------------------------------- OpenAFS IPL openafs.org kernel module works Arla BSD(3)+GPL stacken.kth.se module + userland program works RH kAFS GPL with kernel in kernel proof of concept NFSv4 BSD(3)? with kernel in kernel ? So there have been two working AFS client implementations with a choice of licenses a while now and none of them has made it into the kernel. In contrary, more and more time has to be spent by OpenAFS and Arla folks just to keep up with the new ways the Linux kernel API is changed every time between minor releases. It makes me wonder if a project has to be part of the kernel to have the right to work together with it? Is there a "you shall not have any other kernel modules besides the kernel distrubution" rule? As we have seen in the previous discussion, there are people who get upset and shout "you are not allowed to do this" when OpenAFS IPL code wants to call GPL:ed kernel symbols. Sometimes even when GPL:ed Arla code wants to continue to use GPL:ed kernel symbols. These folks I ask to look at the following code fetched from the kernel: | # | # Makefile for the Linux nfs filesystem routines. | # | | obj-$(CONFIG_NFS_FS) += nfs.o | | nfs-y := dir.o file.o inode.o nfs2xdr.o pagelist.o \ | proc.o read.o symlink.o unlink.o write.o | nfs-$(CONFIG_ROOT_NFS) += nfsroot.o mount_clnt.o | nfs-$(CONFIG_NFS_V3) += nfs3proc.o nfs3xdr.o | nfs-$(CONFIG_NFS_V4) += nfs4proc.o nfs4xdr.o nfs4state.o nfs4renewd.o \ | delegation.o idmap.o \ | callback.o callback_xdr.o callback_proc.o | nfs-$(CONFIG_NFS_DIRECTIO) += direct.o | nfs-objs := $(nfs-y) Then look at the licenses of the listed files and at the end of inode.c. $ grep MODULE_LICENSE inode.c MODULE_LICENSE("GPL"); Could someone explain to me how the differnt licensed codes are combined here to result in a GPL:ed module? Harald. _______________________________________________ OpenAFS-info mailing list OpenAFS-info@openafs.org https://lists.openafs.org/mailman/listinfo/openafs-info