Older blog entries for lgerbarg (starting at number 44)

I am pretty psyched. I was asked to be a panelist at one of the opensource sessions at WWDC. This has been a pretty good year in terms of conferences. BSDcon in october, WWDC and MacHack this summer. I would go to Usenix except that I will be driving across the country at the time. Ah well, still a pretty good run.

Well, took a little bit of time and did a clean up of BootX. I committed the patches today. I want to get it working with NetBSD/ppc, but I just don't have time for it right now. In a few weeks hopefully.

INSC is moving along. Not much traffic this weekend, but a bunch of people, a few conversations, and a lot of thought. This is like we had thought it would be from a scheduling standpoint. Oh, I found out sourceforge documentation displays in the browser, so I cleaned up the overview so that it would display nicer.

Well, sourceforge/geocrawler still do not seem to be archiving our lists, so I posted an overview of what we seem to be currently thinking in the list discussions. We decided we are going to go with the SCTP socket style interface, and we will introduce the extended calls sctp_bindx and sctp_peeloff, instead of trying to butcher bind to accept multiple endpoints.

I think I have managed to put together a pretty good team of people for this, and once we are done with finals we should get a chance to work on this seriously. I still would like to get someone who is a bit more familiar with IPsec than I am involved with this, but that can honestly wait until we have something working. I am pretty sure I know where the hooks need to go, I am just worried about the subtleties.

Well, I committed /dev/random into Darwin on a branch. I have also been doing some clean ups to the booter, BootX (not to be confused with LinuxPPC's BootX). If I get some time I may try to get BootX booting NetBSD kernel's it should not be that hard. I would also like to get LinuxPPC kernel's running on it, but LinuxPPC will probably require a new kernel entry point.

Now that I am finally finishing up with /dev/random merge I will probably limit myself to the booter changes for the time being, so that I can put enough time into INSC. I have bunch of other Darwin stuff I want to do, but given that INSC is Darwin related, and I have been hired by Apple, a slight break for a little while may be in order ;-)

The fact that sourceforge uses geocrawler for archiving, and geocrawler does not seem to want to archive our lists is annoying me.

Well, in an effort to finish up my last couple of credits at RPI, I am doing an independent study over the summer, attempting to implement an SCTP (RFC2960) stack for Mac OS X (and the rest of the BSDs). The prof is very cool, when I asked if I could do it as an opensource project he said I definately should. I think he feels that anything I lose in terms of writing code I will gain in project management, which would probably be more valuable for me at this stage. I have started a sourceforge project for it, called INSC for it, and even have started roping in a few people (rooneg and fuzzynerd). bey they don;t know what they are getting themselves into ;-)

The page is pretty barren now, I will probably start putting up some references for it later tonight or tomorrow. Also, the mailing list has only had one message so far ;-) Hopefully will be ready to begin RSN.

17 Apr 2001 (updated 18 Apr 2001 at 18:40 UTC) »

I have been quiet on a bunch of things recently. I have been hired by Apple Computer. I sent the following to the Darwin Development list a few minutes ago:

Some of you already know this. For most of you it is the first you have heard of it. Starting in July I will be working for Apple.

I suppose the most important element of this is how alters my relationship with Darwin. While I have been hired to work on OS X, I have not been hired to continue any of my Darwin work specifically. I will continue to work on the projects I have been involved with in my free time. I expect that the reduction in the amount of time I have available will be more than offset by the new resources at my disposal, both in terms of easy access to development hardware and software, and the fact that I will actually ne able go and pester various people in person ;-) In short I do not see it significantly altering things, and expect to maintain a similiar presence on the lists, and in the community.

Now I need to get back to coding...


I fixed some nasty races in Apple's serial driver last night. A lot of people were panicking when they tried to use ppp on an smp machine, so I deiced to take a look at it. People seem to be pretty happy with it, and actually don't personally have an smp machine to test it, so I will have to take their word for it. There are actually links to it on www.xlr8yourmac.com, and the OS X page of www.macfixit.com.

I made my first commit into Darwin today, in BootX. It is not actually in the external repository yet (I am not sure when anoncvs.opensource.apple.com syncs itself off of cvs.opensource.apple.com). It felt cool, now I just need to see if I a got the conventions they use for tagging right ;-)

Not much coding today, I have work to do, as well as watch the Get Smart Marathon. I have these really fond memories of Nick at Night doing this week long Get Smart event where they played something like 10 hours of Get Smart each night, and every night had a different theme. I must have been in 5 th or 6th grade, my parents told me a had to go to bad by 11 or 12 on a school (I don't recall exactly). I always stayed up reading anyway, but I remember sating up till about 3 or 4 each night that week watching Get Smart. Back them I could get by with 3 hours of sleep a night for a week at a time. Oh the joys of youth.

On the Darwin mailing list we get a lot of people eager to help, but who have no experience. I have started to assemble a page of useful references on OS design, particularly aimed at people interested in working on Darwin. Click here to check it out.

Well, /dev/random seems to be working now. I tracked down one crasher, and went to see why FreeBSD had not been effected by it. Turns out they were, and that a fix had been placed in the repository several hours before I had figured it out. I took their fix instead of mine, becuase I feel it is best to keep in synch where possible. Most of the changes I had to make are to make is SMP safe on ppc, some of the atomicity assumptions they make are not right for the platform, though should work just fine on Intel.

The wavelan card is now probing, attaching, and starting to activate the chips when it crashes. At first I thought I had my interrupts misconfigured... Now I am thinking I need to modify the accessor macros. What I really need to do is setup a two machine debug setup and poke the hardware enough to see what the heck it looks like under OS X (are the bridges doing endian swapping, etc). I think I coould hash it all between the code and my head, but poking is just so much simpler. Maybe this weekend. Once I get these two down I can get back to the elevator code, softupdates, and I have few other ideas ;-)

Oh boy. Mac OS X was released man I have been busy playing with it. Did three things this weekend, but I have not quite finished anyway:

Synched /dev/random with the new stuff Mark M. did in FreeBSD, and made changes for the New OS X. I am panicking, but even the old patch is panicking with new kernel, it appears they changed some of the mutex/locking code and it is fouling me up.

I almost have Ben H.'s port of the NstBSD wavelan driver working with real PCMCIA wavelan cards under OS X. I can match and probe fine, but I seem to panic on trying to get an IO window. It might be a bug in my code, though I don't if the IOPCCard16Device code has ever been tested, so it could be a bug in the driver superclass.

I made a bunch of changes to IOBlockStorageDriver. I should have a working elevator sort in it sometime soon. The allocation routines are a complete hack, and it is not doing any of Elevator optimizations, but those should be easy to fix once I get it working.

Anyway, I seem to have started a bunch of the things on my todo list hopefully I should be able to close out random and the intial wavelan port later this week, then I can work on the elevator code and maybe get back to softupdates.

35 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!