summaryrefslogtreecommitdiff
path: root/community
diff options
context:
space:
mode:
authorantrik <antrik@users.sf.net>2008-09-10 03:49:49 +0200
committerantrik <antrik@users.sf.net>2008-09-10 03:49:49 +0200
commit9c54f6c2901e1e44588e9baa1d7f405bc8335482 (patch)
tree5cc36428e77e81dc7f3e979683563193caaec41d /community
parentb7bfe884a38994d9615eb06b51243172cd9e1dab (diff)
Major status update for end of GSoC
Diffstat (limited to 'community')
-rw-r--r--community/gsoc.mdwn99
-rw-r--r--community/gsoc/project_ideas.mdwn30
2 files changed, 97 insertions, 32 deletions
diff --git a/community/gsoc.mdwn b/community/gsoc.mdwn
index 948a6e9c..566999ed 100644
--- a/community/gsoc.mdwn
+++ b/community/gsoc.mdwn
@@ -8,41 +8,92 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license
is included in the section entitled
[[GNU_Free_Documentation_License|/fdl]]."]]"""]]
-The GNU Hurd project has been accepted as a mentoring organization for
+The GNU Hurd project has successfully participated in
the [Google Summer of Code
2008](http://code.google.com/soc/2008/hurd/about.html)!
-Student selection is over, and we have four slots -- quite some more than the
-one we had the previous years under the GNU umbrella... Let's hope for some
-good results :-)
+All in all we had five students working on a diverse selection of five projects
+from our [[ideas_list|gsoc/project_ideas]]. All of the projects were more or
+less successful:
-The selected projects are:
+## Projects
-* Lisp binding for Hurd translator libraries
-* Network virtualization for subhurds etc.
-* Usable procfs implementation
-* dtrace support
+* [[Sergiu_Ivanov|scolobb]] worked on namespace-based translator selection.
+ Although he wasn't an official (sponsored) GSoC student, he worked on his
+ project quite as steady as the other students (except for a two week
+ vacation). The project however was hampered by various misunderstandings,
+ wrong assumptions, and several major redesigns during the course of the work
+ -- which is probably more our fault than the student's. In the end, he was
+ able to complete nsmux (the main namespace proxy handling the magic filename
+ lookups, running dynamic translators on demand); however, he still works on
+ finishing the translator stack filtering, necessary to implement some of the
+ desired functionality (accessing files while skipping existing translators).
-Special cheers go to Sergiu Ivanov, whom we unfortunately couldn't select
-because he was impeded during the application phase, but who nevertheless is
-working on his project (namespace-based translator selection) as a volunteer
-with a dedication matching that of the selected students!
+* [[Zheng_Da|da]] worked on network virtualization and some related topics. In
+ spite of many open design question in the beginning, he did a lot of good
+ work -- finishing not only the ethernet multiplexer and filter translators,
+ which form the core of his project, but also a glibc patch to allow
+ overriding the standard socket servers with environment variables; the
+ devnode translator and a pfinet patch to allow accesing network devices
+ through device files; support for setting the network device in promiscuous
+ mode in gnumach; a pfinet patch to use BPF for the packet filtering instead
+ of the old Mach packet filters, and also to set a proper filter rule that
+ really only passes the required packages to pfinet; a patch for the subhurd
+ boot program to allow giving arbitrary virtual devices to the subhurd; and a
+ proxy for the proc server, which allows running unmodified programs with a
+ pseudo device master port instead of the real one -- providing some of the
+ subhurd functionality without having to start a complete new system instance.
+ He is still working on fixing some remaining issues, and on allowing subhurds
+ to be run by normal users.
-The summer session has started by the end of May, and all the students are
-making good progress. We are in good hopes of seeing five successful projects
-at the end of this summer :-)
+* [[Flavio_Cruz|flavioc]] was working on Lisp bindings for the Hurd interfaces,
+ and did a great job: Not only he implemented bindings for all low-level
+ interfaces as well as higher-level libraries for easy creation of translators
+ and other hurdish programs, but also implemented a whole bunch of sample
+ translators based on these bindings, some of them quite useful on their own
+ account. He also fixed a few bugs in the Hurd he found along the way.
+ Presently he is doing some further improvements, like additional abstractions
+ and more sample translators.
-## '08 SoC students and interested non-students
+* [Andrei Barbu](http://csclub.uwaterloo.ca/~abarbu/hurd/) was working on
+ porting a kernel instrumentation framework like dtrace or SystemTap. He
+ implemented the necessary kernel infrastructure (and some nice general
+ improvements along the way), making it possible to create tracing programs by
+ hand; however, only at the end of the summer he realized that SystemTap is
+ really extremely Linux-specific (while dtrace was ruled out already at the
+ setout because of licensing problems), so there is no nice frontend yet.
+ Unfortunately he was not able to continue work beyond the official deadline
+ because of his PhD.
-Minutes from the IRC meetings: [[25April08Minutes]], [[02May08Minutes]], [[16May08Minutes]]
+* [[Madhusudan.C.S|procfs]] was working on a new procfs implementation, to
+ allow runnig existing programs based on Linux procfs out of the box. He
+ managed to implement all the necessary information bits, so the most
+ important procfs programs now work; and also fixed the procps program suite
+ to actually build on the Hurd. There are still some major bugs left, though.
+ Aside from fixing the remaining bugs, he now works on adding some more
+ information bits that are nontrivial to implement, and on fixing libgtop to
+ work for us as well.
-## Wiki pages kept by '08 SoC students and interested non-students
+## IRC meetings
- * [[scolobb]] - Namespace-based translator selection
- * [[da]] - Network virtualization
- * [[flavioc]] - Lisp bindings
- * [andrei](http://csclub.uwaterloo.ca/~abarbu/hurd/) - dtrace/systemtap port
- * [[procfs]] - GNU/Linux compatible procfs pseudo filesystem
+Since the selection of the students on we have had regular GSoC IRC meetings,
+every Friday 19:00 UTC.
+
+Minutes from some of the meetings: [[25April08Minutes]], [[02May08Minutes]], [[16May08Minutes]]
+
+We decided to keep up the meetings after the end of official GSoC, so things
+can be properly wrapped up for upstream submission; but also because the
+students want to continue discussing progress with their ongoing work,
+problems, future directions etc.
+
+I also think that regular IRC meetings are a good thing in general.
+
+As always, the meetings are not only for (former) GSoC students and mentors,
+but open to any interested party :-)
+
+If someone of you is lurking around here and would like to contribute,
+but feel that you could do so better under formal mentoring: Please
+speak up at the meeting! :-)
## History
diff --git a/community/gsoc/project_ideas.mdwn b/community/gsoc/project_ideas.mdwn
index c24b93be..c3e1eff3 100644
--- a/community/gsoc/project_ideas.mdwn
+++ b/community/gsoc/project_ideas.mdwn
@@ -116,7 +116,7 @@ using the existing C libraries (libps, libtrivfs), but also try to work with
the MiG-generated stubs directly. If you are ambitious, you could even try to
write your own stubs...
-Status: A student is working on Lisp bindings for GSoC 2008.
+Status: Flavio Cruz has completed [[Lisp_bindings|flavioc]] for GSoC 2008!
## Virtualization Using Hurd Mechanisms
@@ -195,8 +195,12 @@ Possible mentors: Olaf Buddenhagen (antrik)
Exercise: Make some modification to the "boot" programm used to start subhurds.
(More specific suggestions welcome... :-) )
-Status: A student is working on network virtualization (and some related bits)
-for GSoC 2008.
+Status: Zheng da has has implemented [[network_virtualization|da]] (an
+important prerequisite for unprivileged subhurds) for GSoC 2008, along with
+various other interesting bits, including a mechanism to override socket
+servers; a proc proxy that allows running processes/subenvironments with a
+pseudo device master port; and a mechanism to pass arbitrary virtual devices to
+a subhurd. He is still working on running subhurds by normal users.
## Namspace-based Translator Selection
@@ -267,6 +271,11 @@ Possible mentors: Olaf Buddenhagen (antrik)
Exercise: Try to make some modification to the existing unionfs and/or firmlink
translators. (More specific suggestions welcome... :-) )
+Status: Sergiu Ivanov has been working *voluntarily* on
+[[namespace-based_translator_selection|scolobb]], as an inofficial GSoC 2008
+participant! Not all the desired functionality is in place yet; work is
+ongoing.
+
## Fix File Locking
@@ -323,7 +332,8 @@ Possible mentors: Olaf Buddenhagen (antrik)
Exercise: Add or fix one piece in the existing procfs translator.
-Status: A student is working on procfs for GSoC 2008.
+Status: Madhusudan.C.S has implemented a new, fully functional [[procfs]] for
+GSoC 2008. He is still working on some outstanding issues.
## New Driver Glue Code
@@ -417,8 +427,9 @@ Possible mentors: Olaf Buddenhagen (antrik)
Exercise: Come up with a glibc patch that allows overriding one specific
standard server using method (1).
-Status: The student working on network virtualization for GSoC 2008 will
-probably take a look into this too.
+Status: Overriding of socket servers through environment variables has been
+implemented by Zheng Da for GSoC 2008, as part of his
+[[network_virtualization|da]] project.
## `dtrace` Support
@@ -445,7 +456,7 @@ in their Mach-based kernel might be helpful here...)
This project requires ability to evaluate possible solutions, and experience
with integrating existing components as well as low-level programming.
-Possible mentors: ?
+Possible mentors: Samuel Thibault (youpi)
Exercise: In lack of a good exercise directly related to this taks, just pick
one of the kernel-related or generally low-level tasks from the bug/task
@@ -453,7 +464,10 @@ trackers on savannah, and make a go at it. You might not be able to finish the
task in a limited amount of time, but you should at least be able to make a
detailed analysis of the issue.
-Status: A student is working on dtrace (or perhaps SystemTap) for GSoC 2008.
+Status: Andei Barbu was working on
+[SystemTap](http://csclub.uwaterloo.ca/~abarbu/hurd/) for GSoC 2008, but it
+turned out too Linux-specific. He implemented kernel probes, but there is no
+nice frontend yet.
## Hurdish TCP/IP Stack