Hello, my name is weylan, Chinese name is Wang Lei. Last year, I have took the project kafs of OpenAFS , as a student of GSoC2009. I have finished partly a task, as Linus and some of the Linux community against implement pioctl() directly in the kernel. We used other ways to talk to the kernel after we gave up some implementation that have done. There is my project idea and time line at last. My major is distributed file system. As I have some experience of my research and this project, I think I could do it well.
The Project Idea And Time Line Last year, I have finished partly a task, that a common pioctl implemention between kafs and OpenAFS to allow sharing of userspace. As Linus and some of the Linux community against implement pioctl() directly in the kernel. We used [gs]etxattr(), add_key() and keyctl() and /proc, plus the experimental open(O_NODE) to talk to the kernel, that we have done last year. Then the first task of this year's project is that, I would implement some of the OpenAFS file system commands that have not yet been integrated into kafs, and do some work to support the OpenAFS userspace tools for kafs. Under the work last year, I thought I could finish that. Another task is to let kafs support obtain cell server location from AFSDB records through DNS. In the past server days, I have read the code of cifs and some openafs code to have a idea how to implement the task. I thought it's not too hard for the design, but a straight forward implement. I am a little clear about this task and maybe I could finish that first. This is support in the OpenAFS unix/windows client. I found no DNS query API or code can be used int the kernel, but some of the cifs maybe useful. I should send a DNS query and resolve the answer to cell server location. I thought I should do that in the kernel, and the DNS query type is here, http://www.protocolbase.net/protocols/protocol_DNS.php and http://tools.ietf.org/html/rfc1183. Some work of that is just in the mount point operation. Maybe I should pass the DNS lookup off to user space, I would talk with the mentor later. I have found some documentation about the kafs callback interface. I thought it's like the nfs callback for delegation and file layout. I thought I could try to implement some feature. OpenAFS and kafs to be running on the same machine using different port numbers, is that only need to change one port and so on? And the project making a standard keyring implementation that would allow the client to obtain authentication tokens that would work for both kafs and OpenAFS. An Original Time Line: Along the way, I plan on writing tests and documentation for each of the tasks that I implement. now to 5-23 As I had took this project last year, I could began to work on it now. Before the summer start, I could be going to implement the DNS records project or pioctl project. Be familiar with what needed to kernel development. 5-23 to 7-13 Before Mid-term evaluations deadline finish partly of the project: DNS AFSDB being able to obtain cell server location without using configuration files. A common pioctl implementation between kafs and OpenAFS to allow sharing of user-space 7-13 to 8-10 Finish the other task of the project and improve the documentation of project finished: There are another three task should do. I would try to complete the kafs callback interface. If I could finish it quickly. I would try to do the other project: A way for OpenAFS and kafs to be running on the same machine using different port numbers. Making a standard keyring implementation that would allow the client to obtain authentication tokens that would work for both kafs and OpenAFS. 8-10 to the end Take a week to scrub code, improve documentation There is my last year's code http://code.google.com/p/google-summer-of-code-2009-openafs/downloads/list -- Best Wish. Wang Lei _______________________________________________ OpenAFS-devel mailing list [email protected] https://lists.openafs.org/mailman/listinfo/openafs-devel
