Recent blog entries for mike750

Back from Chicago for good now. Had a presentation out in Cincinnati for another project last week. I really don't want to be travelling back and forward again for another 3 years. I do have a project to work on back here so at least I'm off the non-billable radar screen.

Just sent back the Thinkpad T23 to IBM that they leant me to hunt down the bug. I have a solution for the problem, its not particularly nice, so I've added an extra module parameter called thinkpad_bug that can be set to enable the workaround.

On another front I've been play with monkeyglobs (a javascript wrapper for OpenGL) recently. Lots of fun, hacked in support for multiple graphic formats and converted a load of demos to test out the code.

Current mission is to get md3 support in the code. (This is the format Quake 3 uses for the characters). I have the object model built now, just need to write the javascript wrappers to render the model. This took a lot longer than I expected. I was judging a couple of days to get the model together, instead it took a whole week of serious coding (6+ hrs a day) to get it working. Most of the initial time was me getting up to speed with the jsapi though. I can now create classes and subclasses in a flash.

Received a nice Thinkpad T23 to try to fix the cardbus adapter issue with these machines. It only took me around 4 hrs to track the problem down. The open command on the adapter takes anywhere from 5 - 40 seconds to complete and during this time there is no activity on the pci bus. So the bios power management system decides to put the adapter into a sleep state, and, of course, as the adapter is in the sleep state we never get the open completed interrupt.

I already have a really nasty hack to get around this, but it holds the kernel hostage during the open command. As this may be a 40 second period, that's completely unacceptable. Over the next few weeks I will be delving into the olympic tech docs and the pci power management specs to try to come up with the correct solution (i.e. somehow tell the bios not to power down the adapter).

Wahhey, problem on the thinkpads solved. Turns out to be a bios setting that must be turned off. Its the PCI Power Management that is causing the problem. Personally I think the kernel should be able to handle this properly, i.e. power back up the pci subsystem to enable access to the adapters.
This may take some hacking around to achieve, so for the moment if you're having this problem, simply turn off the setting in the bios.

27 Mar 2002 (updated 27 Mar 2002 at 14:51 UTC) »

OK, last fix to olympic enabled a subtle bug to surface when network_monitor was enabled.The bug has been there all the time, but before the last patch the problem (an out of bounds mmio write) was ignored.
I'm going to wait a little while before sending this one off, with all the patches floating around at the moment, the previous updates haven't fully percolated into the final kernel releases. Once its there, I'll update with the patch. If you've having the problem, simply turn off the network_monitor mode in the interim.

Still have the issue with the cardbus adapters on certain thinkpads, this is not a pleasant one to hunt down. I don't have a thinkpad to emulate the problem with and working with somebody who does via email is tough. I'm still not convinced that the cardbus controller/subsytem isn't to blame somewhere along the line.

Olympic and ibmtr updates have made it into the pre-release kernels (there are so many of them now, from Marcelo's rc-, to Alan's rc-ac, to Davej's -dj and everybody else's that I'm not going to even try to list them all. Unfortunately the first olympic patch has caused a problem with one person's machine. Now the driver actively reports error conditions rather than just subtly ignoring them as it used to. This one machine seems to have hit upon one of the errors. Not good. Hopefully this will be an isolated case, if not it'll be back to the grindstone to create a driver that will handle all this.

Finally, only more than a year after finishing it, I updated the 3c359 driver to all the latest api's and sent it off for inclusion in the kernel. Alan and Jeff have picked it up and hopefully it will be in a kernel near you very shortly.

Perhaps more importantly though, I took and passed my private pilot check ride on Friday, so now I'm a fully qualified private pilot. (Kinda of scary really that they'll trust me with a plane !!).

Couple of updates to ibmtr and olympic as part of the kernel janitor effort. Basically getting rid of old api call that are going to disappear in the future.

Started playing with Bitkeeper as this now appears to be the source tree control tool of choice. This may work out quite well, I've got several patches that need to go into the kernel and using bk to manage the process may make my life easier.

Took the written test for the private pilot and passed that fine, now its just the check ride...eeek !!
Last week was on the way back from Reading at night and Philadelphia ATC cleared us to fly right over the top of the city at 2,6000ft. The view was great, planes coming in to land at Philadelphia International on our left and planes taking off to our right.

Several patches are available from the site for minor updates to the token ring code. One of the more important patches is the support for big endian machines in ibmtr. I've now got two independant patches for this, one developed for the ppc and one for parisc. Of course, they both take a different approach to the situation and are not interoperable. I've got to got through the patches and get a consolidated approach to the issue.

Started putting up the old linux-tr mailing list archives on the web site for people to look at. It's quite amusing and informative looking back at the old posts and realizing just how far the token ring support has come over the past 5 years.

Still working on the flying, getting close to taking the check ride now. Hopefully this will be in February some time so I'll have my license after that.

Still working away in Chicago during the week. Its been a year now from what should have been a 6 month assignment. The travelling up and down is definately getting tiring, but its better than not being employed at all.

Long time, no diary update. Work has been far too busy over the past few months and I've had very little time to work on the Linux stuff. Still been keeping the web site up to date and answering questions on the mailing list.

Now that the 2.5 development kernels have started its time to polish up the outstanding patches (the new source routing and 3c359 driver mainly) and get them send off.

Flying is coming along nicely, went solo a couple of weeks ago. Found some very nice open source flight planning software so I'm getting involved with updating it.

Right, outlaws have left after a three week invasion, life can get back to some semblance of normality now.

I've started learning to fly so this has given me all sorts of new "toys" to acquire and opportunities to hack up some new code just for aviation stuff. I'm thinking of doing an fplan equivalent for the Psion Revo at the moment.

On the token-ring front, things are fairly quiet at the moment, I've still got to track down a performance problem with the ISA Turbo adapters and once 2.5 starts I'll update the 3c359 driver and submit it.

Freaky, Friday 13th and I've got to catch a plane today, could be fun.

Been fighting with thinkpads recently. It appears that on the a22p the internal ethernet adapter is hardwired to irq 11. Failure to load a driver or activate the adapter stops all other interrupts from getting to the cardbus subsystem.
Need to see if there is a way to move the cardbus stuff around to use a different interrupt.

On a more positive note, all the latest olympic changes made it into 2.4.6, the ibmtr changes are still in the -ac patches and hopefully will make it in for 2.4.7.

26 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!