Over the weekend, Google processed the results for the midterm evaluations for Google Summer of Code 2012. I’m pleased to announce that all five students passed their midterm evaluations! As you may have seen, the students have been posting details on their progress and future plans on their blogs. Last month, two students even gained commit access. Alex Smith received it for Haiku’s repository and Hamish Morrison received access to OpenJDK. Congratulations everyone and keep up the great work!
After my quarter term report I worked on various bugs in the AWT port reported by testers, such as keyboard input problems. I also began reading up on the media kit in preparation for the next part of my project: the jsound port. This will bring audio and MIDI functionality to the OpenJDK port. Over the last week I made a start on the implementation for PCM input/output.
A lot of things have happened since the last status update! As far as I
can tell, the kernel part of the file system resizer is mostly complete.
Some details remain, along with a healthy dose of bugs to be fixed. In
addition, I've written a 'resizefs' command for bfs_shell. Let's look at
a typical session with the mighty resizefs!
fssh:/> resizefs 100
File system information:
Bitmap: 1 blocks (was 1)
Log start: block 2 (was 2)
Log length: 512 blocks (was 512)
Block size: 2048 bytes
Error: Not enough space left.
Status: Invalid argument
Hello Haiku world,
Given my lack of updates lately I have decided to give some official update on my work here, and at last leave some overview documentation so any newcomer could have an easier startup.
Note that I have been and I will be: around, open reply questions and offer all support I can this is not a farewell!
Thank you all for this period of life.
Having implemented mandatory hooks by quarter term I had good base for implementing other operations like write, rename, create, etc. Moreover, improvements in file system migration and user ID mapping. Apart from that, file locks required most work, since they are both more complicated than other NFS operations and Haiku VFS originally did not allow the file system to handle them its own way.
With the good preparation in quarter term/bonding period, I have completed the generic cpuidle kernel module, native intel cpuidle module and cpuidle driver(for states/info reporting). By original plan, these tasks will be all completed by the end of 3/4 term…
Since my quarter term report I have made a great deal of progress. The boot loader x86_64 support is finished, and the kernel can now be booted to the point of searching for the boot volume. A screenshot of this:

Usually when you arrive in KDL (Kernel Debugging Land) it means that something bad happened. KDL provides a lot of tools to investigate what might have taken place. Still, it is quite possible that, even though you have that arsenal of tools available, you may not be able to immediately make sense of what is going on. In that case you ideally either continue debugging yourself or you write up a nice bug report over at the Haiku bug tracker so that someone else can take a closer look.
For the 1/4 term milestone, my goal was to have inode-moving working. This is mostly completed, you can view the code at http://web.student.chalmers.se/~andrhen/move_inode_v2.patch
For this period, I have the following things planned:
Allocation of new block positions: I have a good grasp of what needs to be done for this, and it’s not a lot of work.
Moving file data: Last week I thought I had this nailed down, but it turned out to be a little more involved than that. Still, there has been some good progress made, and I’m sure it’ll be completed within the period.
I have already implemented all mandatory hooks (and several others), what means that NFSv4 client now allows to browse directories and read files on remote filesystems. Last several days I spent on improving the existing code and supporting some less usual NFSv4 describes, that includes reclaiming share reservations, support for server migration and volatile filehandles. I also needed to deal with NFSv4 that do not provide file's inode number, that was solved only partially since proper workaround will be much easier to implement when file metadata and directory contents are cached.