October 11-12
Visit the Haiku developer and user event in Düsseldorf, Germany.
emitrax's blog
[HCD]: status report
It's been a bit since my last status update, so I guess it is time for another one.
First of all, I'd like to inform you that I received the first half HCD payment. Since it's a (fantastic) community based effort project, I thought you wanted to know where your donations ended up.
As of commit r27159 you should be able to read data from an UDF partition. The module has not yet been added back to the image, as I'd like to do some more tests, but as far as I can tell, the port of UDF to the new FS API is close to complete, and you can start testing by adding the module to the image and trying using DVD formatted with UDF, or iso image made with mkisofs. Feedbacks are welcome.
As for the other part of my HCD, in case you missed, bonnie++ was added in r26920 and it is available for the braves one, for testing purposes.
In r27052 I also fixed another BFS deadlock that would lock the file system when more then one thread was writing in the same directory. See this for more info.
Ok, going to back to UDF now. ;-)
File system benchmark suite for Haiku
Time for a quick update.
As with r26676, a first buggy xsi semaphore implementation is now present in Haiku (buggy because there is another patch waiting to be reviewed and commited that fixes some issues, but there might be some more coming).
It is now possible to download, compile and run the file system benchmark suite bonnie++. The version I've used is 1.03d, which has been suggested by the author of the suite. With this suite it is possible to test the file system implementation, plus the way Haiku works under low memory and heavy I/O operations.
HCD [bfs]: Status Report #1
It's been almost a month already since the very first Haiku Code Drive began!
First of all thanks to all of those who have voted me, I was very surprised about the poll result.
Now some updates about my project.
As you know, my project aims to test the stability of the bfs file system. In order to do so
the idea is to first implement XSI Posix semaphores, and then compile bonnie++ which is a benchmark suite
for file systems. To be honest though, XSI Posix semaphore are not really mandatory, because it would be
faster to just port bonnie++ to Haiku, as it would require very few changes (e.g. those concerned locking).
However though, in the long run, Haiku would benifit more if I implement the semaphores previously mentioned,
as it would also make it more Posix compliant.
The easiest part was the user space one, now I'm working on the kernel side. I also started a thread
about this on the gsoc mailing list so you can follow it by clicking on the link below.
http://www.freelists.org/archives/haiku-gsoc/06-2008/msg00009.html
Although I'm not done with the above though, I've already started running some test without bonnie++
and hitting the first bug. See ticket #2400.
The test is quite simple but very time consuming, especially on my current hardware (by the way,
if someone is willing to try the test with real hardware or a faster maching please contact me).
I first packed the whole haiku source code into a tarball from linux, move it to my usb disk, run
vmware, and try to unpack the almost 500MB tarball (1.5 GB unpacked) from Haiku.
Yeah... "Good luck with that! :)"
The result, which at first seemed to me as a bfs bug, turned out to be a vfs one, although we are still discussing about it in the gsoc mailing list. See the link below for more details.
http://www.freelists.org/archives/haiku-gsoc/06-2008/msg00021.html
Despite the fact it has been confirmed not to be a bfs bug, as you can read from the mailing list, I'm still trying to fix it, while also finishing xsi sempahore implementation.
That's all for now.
Impression about my GSoC with HAIKU and USB isochronous support status
During this summer I had the chance to improve myself, and work on the USB isochronous support of HAIKU. I wrote some code for every layer of the HAIKU USB stack: USBKit library, usb_raw driver, usb bus manager and most of all the uhci driver. I also spent/waisted some weeks with the usb_webcam media addon, but sadly with not success. Anyway here is what I did.
UHCI driver: Basically I added all the necessary code to handle isochronous transfer in both direction (in and out).
Adding isochronous support to USBKit and usb_raw
Just to keep those of you interested updated, after discussing it with both my mentor and Michael Lotz, and after a very quick chat with Francois Revol, I am going to add isochronous support to both the USBKit and usb_raw driver. Meanwhile Francois, if time is on his side, should add isochronous support to his user space quickcam driver (see src/add-ons/media/media-add-ons/usb_webcam/). This way I can test my previous patches and perhaps everyone can start using his logitech quickcam with Haiku by using codycam. I don't know though for sure, what product id are supported.
UHCI isochronous support added
For those of you who are not following the haiku-commit mailing list, I've added the isochronous support to the UHCI driver. I'm working on a quickcam driver to test the code, but if someone of you out there, already have some very simply driver, that needs isochronous support, please contact me and help me with the testing.
The sooner I'm done with the testing, the sooner I'll move on to the OHCI driver. ;-)
UHCI isochronous support half done
Actually is more than half. This quick post is just to inform you that I wrote the part that schedule an isochronous request in the UHCI driver. I've already sent the patch to Michael for his review. The only part that is missing is the code that remove the request once it has been processed or canceled, which is not as trivial as I thought.





