Greg
Greg's diary
July 2003
Translate this page
Select day in July 2003:
Su Mo Tu We Th Fr Sa
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Select month:
2003 Jan Feb Mar Apr
2003 May Jun Jul Aug
2003 Sep Oct Nov Dec
Today's diary entry
Diary index
About this diary
Previous month
Next month
Greg's home page
Greg's photos
Network link stats
Greg's other links
Copyright information
    
Groogle

Tuesday, 1 July 2003 Echunga
Top of page
next day
last day

The year's half gone already! I never cease to be amazed how quickly everything goes by. Anyway, the revision for the book's out, the article for acm queue is out, and I had time to get back to some coding. I had managed to uncover a bug in Vinum last week, one which others had also seen: I ended up with a whole lot of ghost drives, supposedly referenced, though in fact nothing referred to them. Turned out to be a bug in the function free_drive, which had been kludged over several revisions to be completely stupid.

Also spent some time trying to bring kondoparinga up to the latest -CURRENT. I upgraded a couple of days ago, and since then it's been doing some really strange stuff, much of which can't be explained by the kernel. It hasn't stayed up more than 24 hours at a time.


Wednesday, 2 July 2003 Echunga
Top of page
previous day
next day
last day

The countdown for AUUG 2003 is hotting up. I haven't had time to finish my paper, of course, which was due in today, but it's going to have to wait until we've sorted out the brochure, which should have gone to the printers last week. Spent a lot of time messing around with that.

Also had some time to look at another report of a problem with setting up Vinum root file systems, and confirmed that yes, indeed, under some circumstances converting the root file system to Vinum according to the instructions in The Complete FreeBSD would overwrite the bootstrap. Spent some time checking that, and ended up rewriting the chapter. Hopefully they'll still be able to get it into the reprint.


Thursday, 3 July 2003 Echunga
Top of page
previous day
next day
last day

Still work to do on the AUUG conference brochure, but we're just about there, and I was able to get back to my paper. It has occurred to me that the way to approach the issue is a linguistic one, rather the way I introduced myself in my Daemon News articles. Came up with four levels of communication: grunting and pointing, simple commands, differentiated commands and conditional statements. It's interesting that the current GUIs choose the most primitive of these four means of communication.

Also, for Adrian Close's sake, converted the paper source from groff to LaTeX. It wasn't as painful as I remember, but I still don't like LaTeX, and it didn't exactly help that it had changed considerably since I last used TeX, and my LaTeX book was completely out of date.

Time to buy a new laptop, mainly because the combination of X and acroread has got so slow over the past year or so. It now takes about a second to change a slide, far too much for the incremental approach that I use for presenting slides. Modern laptops are now three times the speed of sydney, so it's about time. Looked at the Dell web site, which once again infuriated me by wanting to know what kind of user I was. Following the "Home and Home office" link above (about the Latitude range) brought me to a page offering only Inspiron laptops. What arrogance for Dell to tell me what kind of user I am!


Friday, 4 July 2003 Echunga
Top of page
previous day
next day
last day

Finally the AUUG conference brochure is out the door, though that involved a lot of work updating the AUUG web pages. Also spent some time looking at the online registration form that Sarah Bolderoff wrote last year. It's written in Perl, a language I have no intention of learning, but I was able to get it working well enough the be marginally useful. It still looks pretty ugly, though; surely we have people in AUUG with more web foo than I have.

Apart from that, more work on my paper. It's getting to the malleable stage now, where I can start moving ideas around. I wonder if every author has as much trouble with this issue as I do.


Saturday, 5 July 2003 Echunga Images for 5 July 2003
Top of page
previous day
next day
last day

It's been a week since I've been through all my mail. I've been answering the important mail, of course, but stuff like commit messages and questions on FreeBSD-questions have been piling up, and I had about 3,800 messages this morning. Cleaning that up took most of the day. I've found a relatively efficient way to handle my mail, but it's not efficient enough.

Still had a little more time to work on the paper for the AUUG conference, but not really enough. Also did some cooking with Yana: Cantonese Roast Pork, also called Cha Shao. We used to eat a lot of it, but it seems that we haven't made any since we came back to Australia, and we didn't have the red food colouring needed to stain the outside of the slices. Used cochineal instead, but it wasn't the same.


Sunday, 6 July 2003 Echunga
Top of page
previous day
next day
last day

Another quiet day. Finally got round to buying a new laptop on eBay, a new Dell Inspiron 5100 for $US 909, $100 below Dell's price. Laptops have become remarkably cheap in the last few years. Five years ago my Inspiron 7500 cost $7.500 Australian. The new laptop is nearly five times as fast (2.4 GHz instead of 500 MHz) and has four times as much memory (512 MB instead of 128 MB). The only thing missing is the 1400x1050 screen, which I decided against because of the problems with overhead projectors. It's interesting to note the memory: Microsoft must be getting really memory hungry if a laptop can use that much memory. wantadilla, my main desktop machine, has that much, and it's more than ample.

Arranging for shipment proved to be a problem. Yvonne is going to the USA on Thursday, so we can have it shipped there, but PayPal didn't give me the option to have it shipped to the USA: the drop-down menu didn't include the USA. I wonder what people are thinking when they do things like that.

Out riding in the afternoon in the Peter Creek part of Kuitpo Forest, which is well worth while. Back home and discovered that it is a bad idea to use your mail address as an eBay identifier, and set to changing that, during which sat-gw seized up again. On reboot I discovered:

Jul  6 18:34:01 sat-gw kernel: ip_conntrack: table full, dropping packet.
Jul  6 18:34:06 sat-gw kernel: NET: 24 messages suppressed.
Jul  6 18:34:06 sat-gw kernel: ip_conntrack: table full, dropping packet.
Jul  6 18:34:10 sat-gw kernel: NET: 14 messages suppressed.
Jul  6 18:34:10 sat-gw kernel: ip_conntrack: table full, dropping packet.
Jul  6 18:34:16 sat-gw kernel: NET: 12 messages suppressed.

That looks like iptables, but it's not clear how a table can fill up.


Monday, 7 July 2003 Echunga
Top of page
previous day
next day
last day

Yana left for a week's holiday in Port Vincent today, and before she left she wanted some music copied to her MP3 player. She's had it for five weeks now, but she still hadn't got around to using it. Spent too much time in the morning trying to rip some CDs. The CDs I have work fine, but hers caused grip to die, and it turns out that there's no way to tell it to encode pre-ripped .wav files, so had to do that by hand. There are still a lot of rough edges on the multimedia stuff.

Heard back from PayPal about the address problems I had had yesterday. The letter they sent showed that they had completely misunderstood the problem. Replied asking them to answer the real question, and got another reply which made it clear that they hadn't read anything. Are there only idiots in these places?

Got Rusty Russell on IRC today, and he explained yesterday's error messages, which indeed came from iptables. It seems that if you build a Linux kernel with connection tracking, it's on all the time, even if you don't have any connection tracking rules. Since sat-gw only sees one side of the connection, it can't track the connections, and apparently this results in a memory leak. Built a new kernel without the connection tracking, but didn't get round to booting it: if anything goes wrong, I'll need to drag a monitor down there to find out what's happened. Somehow building Linux kernels is just too much pain.

To confirm how much fun Linux is, decided to install Debian Linux on the machine that Chris Yeardley left behind when she was here last month. The boot disk didn't recognize the SCSI disks connected to the machine (monorchid in drag), so found a spare IDE drive and installed on that. For reasons I don't quite understand, it installed from the network instead of from the CD. Probably it decided that the stuff on the CD was out of date. At the end, after asking for full server config (with the exception of mail), desktop and X (just to be sure that I got an xterm and similar stuff), there was almost nothing on the disk: no ssh, no telnetd, no X of any kind, no interactive services in /etc/inetd.conf, and it couldn't even mount remote NFS file systems (portmap failed, something that isn't even needed on BSD). To make up for that, it made me go through an interminable setup for exim, which I don't even want. What a pain!


Tuesday, 8 July 2003 Echunga
Top of page
previous day
next day
last day

PayPal seems to be the flavour of the week. This morning Yvonne bounced me a message from a friend in Germany who wanted to sign up with PayPal, but she was only offered a US address. It seems that they have very well hidden a lot of things on their site; finding the international signup page is very difficult. Also got another reply from them explaining that they couldn't answer my question in mail because it would compromise my security. Sheesh.

More work on my paper for the AUUG conference, and finally I've got it to the stage where I just need to tidy it up. Came across some interesting things in the process: the XML format of OpenOffice is as good as useless for human consumption. It might just as well be binary for all the difference it makes.

Tried reinstalling Debian Linux, and this time threw in everything, with some success. Trying to install ntpd was less successful:

The following NEW packages will be installed:
  abiword-doc abiword-plugins aspell-en blas blas-dev build-essential docbook esound-clients fam freeciv-gtk g77
  g77-2.95 gimpprint-locales heroes-sound-effects imagemagick libasound1 libgal-data libjpeg-progs libltdl3-dev
  libmagick5 libncurses5-dev libnss-lwres libreadline4-dev libwmf0.2-2 netpbm ntp ntp-simple r-base-dev r-recommended
  timidity timidity-patches util-linux-locales x-ttcidfont-conf xfonts-abi xli xpdf-common xpdf-utils

Need to get 63.3MB of archives.  After unpacking 76.7MB will be used.
    

Sounded off about it on IRC, and Rasmus and Stephen Rothwell jumped to Debian's defence and my aid, and after a while had things working a little more smoothly. I still don't know how to configure the system, though: there's nothing on the subject in Learning Debian GNU/Linux. Its chapter on system configuration is mainly concerned with simple things like user management. I wonder how to start and NFS server, for example: the book doesn't do more than mention it in passing.


Wednesday, 9 July 2003 Echunga
Top of page
previous day
next day
last day

Spent most of the day working on my AUUG conference paper. I'm quite pleased with it, but it's a lot of work. It might even form the basis of a real alternative to toy desktop software.


Thursday, 10 July 2003 Echunga
Top of page
previous day
next day
last day

Up at 4 am this morning to take Yvonne to the airport, on her way to Boston. It's amazing how dead the Hills are at night. On the way into Adelaide, 35 km and much of it along the only freeway in the state, we saw three cars and 16 trucks. At least one of the cars (a taxi) was on the way to the airport. That might seem normal enough for a small country town, but Adelaide's only pretending: it has a population of over a million, larger than most European cities. It's nice to be in such a quiet place.

Dropped Yvonne and back home, doing the round trip in a record one hour an 9 minutes. Normally we count 50 minutes to the airport.

Felt at a bit of a loose end and didn't get much work done on my paper; it's pretty much there, and just needs some tidying up. I'll wait until Adrian starts complaining. Instead, talking to Horms about the perdition port, which was way down-rev on FreeBSD. Spent some time working on that and got it up to date, but when I came to commit it, discovered I had patched the wrong files (generated Makefiles instead of their templates), and couldn't be bothered. Mañana.


Friday, 11 July 2003 Echunga
Top of page
previous day
next day
last day

Somehow didn't get anything done today. I had to do all of Yvonne's chores, of course, which today included going shopping. That was held up waiting for her to call in from Boston (arrived at 11 am our time, somewhat ahead of schedule after only 31 hours), and by the time I had got home and had lunch, it was mid to late afternoon. Did get around to trying to commit the perdition port, only to discover that it had already been done, but that my cvsup updates of the ports tree had been disabled. Grrr.


Saturday, 12 July 2003 Echunga
Top of page
previous day
next day
last day

It really rained heavily last night, so much so that I was worried about flooding the house. That didn't happen, but the other thing typical in these circumstances happened: I lost my PPP Internet connection:

Jul 12 12:00:35 echunga pppd[1076]: Modem hangup, connected for 44647 minutes
Jul 12 12:01:08 echunga pppd[1076]: Serial connection established.
Jul 12 12:01:09 echunga pppd[1076]: Using interface ppp0
Jul 12 12:01:09 echunga pppd[1076]: Connect: ppp0 <--> /dev/cuaa1
Jul 12 12:01:26 echunga pppd[1076]: Modem hangup, connected for 1 minutes
Jul 12 12:02:35 echunga pppd[1076]: Serial connection established.
Jul 12 12:02:36 echunga pppd[1076]: Using interface ppp0
Jul 12 12:02:36 echunga pppd[1076]: Connect: ppp0 <--> /dev/cuaa1
Jul 12 12:02:40 echunga pppd[1076]: local  IP address 139.130.136.138
Jul 12 12:12:14 echunga pppd[1076]: Modem hangup, connected for 9 minutes
Jul 12 12:14:27 echunga pppd[1076]: Modem hangup, connected for 1 minutes
Jul 12 12:23:48 echunga pppd[1076]: Modem hangup, connected for 8 minutes
Jul 12 12:24:18 echunga pppd[1076]: Serial connection established.
Jul 12 12:24:19 echunga pppd[1076]: Using interface ppp0
Jul 12 12:24:19 echunga pppd[1076]: Connect: ppp0 <--> /dev/cuaa1
Jul 12 12:24:49 echunga pppd[1076]: LCP: timeout sending Config-Requests
Jul 12 12:24:49 echunga pppd[1076]: Connection terminated, connected for 1 minutes
Jul 12 12:42:19 echunga pppd[1076]: Modem hangup, connected for 16 minutes

Changed the phone line to another one, and it worked. The nuisance is that I can't be sure this one is a line fault like the previous ones. It carried on fine for the rest of the day on the other line.

More work on the paper; it's pretty much finished, but somehow I need to keep working on it, and it's difficult to do that all at once. Still, I should be able to get it in by the time Adrian asks for it, unless my phone lines all go down again.


Sunday, 13 July 2003 Echunga
Top of page
previous day
next day
last day

Gradually all the phone lines are fading. It's not as sudden as last time, but it still kept me busy juggling cables to find a line which was marginally serviceable at any particular time. Started writing a blow-by-blow description of what was going on.

Apart from that, spent the day reading mail. I've taken to replying to non-urgent mail at less frequent intervals. Today I got through about 4,000 messages, a week's worth, and it kept me going most of the day. I wonder if that's better than spending several hours every day.


Monday, 14 July 2003 Echunga
Top of page
previous day
next day
last day

Miraculously, my phone service has not completely failed yet. Maybe it won't at all, though I'm getting pretty degraded performance and several line drops a day. Got two calls from Telstra complaints on my mobile before I even switched it on, both asking me to drive to a phone to call their 1-800 number, or pay to call them back on my mobile. Drove down the road in the afternoon and discovered some linesmen really working on the lines. Returned home, musing whether this was the result of my complaints or a coincidence, and got the third call from Telstra complaints, promising to “investigate”.

More work on the AUUG conference paper today. Though it's “finished”, I still find quite a bit to fiddle around with, and it kept me going most of the day.

David Newall called in the afternoon, wanting to come out and test his wireless card, not for the first time. He came out and we confirmed pretty quickly that his card was dead and so settled the matter. We also confirmed that he had done no serious damage to the CPU of his laptop when he removed it and accidentally removed a couple of pins: it seems that most pins on modern processors are power in or out pins. Turned out that David knows more about ducks than the people who sold us the two ducks last month, and gave us some interesting information.


Tuesday, 15 July 2003 Echunga
Top of page
previous day
next day
last day

Woken up this morning by Dave, a Telstra linesman, who wanted to hear whether my phones still had problems. They did, of course, so he headed off to look for the two which he had been sent to look for; it seems that Telstra's service coordinators look at each report individually. He also told me that the linesmen who had been working on the lines since yesterday knew nothing about the fault.

More slow work on the AUUG conference paper. I suppose it's OK the way it is, but I'll keep poking at it until Adrian reminds me that I haven't given it to him yet.

Stephen Rothwell contacted me in the afternoon: Ozlabs is getting a colocated server in Canberra, and I can participate for some ridiculously low sum. The only problem is that some of my content might be too contentious; I may have to split the site across two separate servers. Burnt some CD-Rs, including a coaster (don't try to burn from an NFS image; cdburn doesn't appear to tell you when there are underruns) and sent them off to him.

Dave and his mates found a cable fault—what else?—and promised to put in a slave cable tomorrow. That's still a breach of the Customer Service Guarantee, but it's a lot faster than last time. In fact, they worked overtime to connect it, making a mistake in the process which connected me to somebody else's phone number, which became apparent when somebody called that number and got me. I'm reminded that the German word for “wrong number” is “falsche Verbindung”, which also means “wrong connection”. That was definitely the case here.


Wednesday, 16 July 2003 Echunga
Top of page
previous day
next day
last day

Phone call from Kay at Alexander Downer's office. It seems that we have her to thank for the fact that people worked on the line fault all day yesterday. She was also complaining about the fact that Telstra never called her back to tell her what was going on.

Phone call from Angela at Telstra complaints after that. The line dropped twice, so she gave up without having achieved anything. It's almost as if they're trying to prove the point.

Spent the afternoon trying to get a Debian system to boot diskless. Somehow none of the HOWTOs helped much; fortunately the procedure isn't much different from FreeBSD, so I managed most of it. The only nuisance is that the grub loader requires dhcpd options which aren't present in FreeBSD:

/usr/local/etc/dhcpd.conf line 67: unknown option dhcp.grub-config
    option grub-config "(nd)/192.109.197.28/diskless/sat-gw/boot/grubconfig"
           ^
Configuration file errors encountered -- exiting
    

Spent some time wondering whether to fix dhcpd or grub. I suppose I should do both: a headless machine shouldn't prompt for boot information.


Thursday, 17 July 2003 Echunga
Top of page
previous day
next day
last day

The phones seem back to normal today. Got a couple of phone calls on my mobile from “private number” which disconnected when I tried to answer. Assumed that it was Angela from Telstra faults not being able to establish a connection. It wasn't until much later that I realized it must have been Yvonne: the network she's calling from doesn't forward caller information. Missed out talking to Yvonne as a result, and it seems that Telstra has forgotten about all three complaints.

Spent more time working on getting a diskless Debian installation working, and made a number of discoveries:

Having exhausted the patience of the OzLabs people, who were busy (as was I) playing with the new colocated server, joined up the Debian Australia mailing list and asked a question there. Got a few answers, but only one (amusingly from Chris Yeoh of OzLabs) explained the situation: the grub configuration file should have read

kernel (nd)/192.168.1.30/boot/kernel-2.4.17a root=/dev/nfs nfsroot=192.168.1.10:/tftpboot/192.168.1.30 ip=dhcp
Instead, it read:
kernel (nd)/192.168.1.30/boot/kernel-2.4.17a root=/dev/nfs
nfsroot=192.168.1.10:/tftpboot/192.168.1.30 ip=dhcp

As Glen Turner then pointed out, that was because the original web page used <code> tags instead of <pre> tags to display code.

Finally got the machine up and running. Then I discovered that it's not possible to swap on a diskless Linux machine. Grrr.


Friday, 18 July 2003 Echunga
Top of page
previous day
next day
last day

All sorts of new things are happening this week. Today I got a brand new, shiny NetBSD commit bit, and spent some time learning the ropes in NetBSD. The project itself is surprisingly different in atmosphere from the FreeBSD project. As a result, didn't get much work done.

As I had suspected, Telstra's complaints department just gave up on my three complaints. Got a call from Sam Stewart (female), with whom I already had an impossible time in March. She doesn't seem to have improved, though she did agree to to escalate the matter, something that she said in March wasn't possible.


Saturday, 19 July 2003 Echunga
Top of page
previous day
next day
last day

Spent most of the day catching up on my mail. Over the last few weeks I've been leaving non-urgent mail to the weekend before reading it. It's probable that it's less of a burden like that: previously it took me a couple of hours every morning to read my mail, and now it just takes a whole day. There's a down side, though: I get mutt to flag my mail so that I can see it easily, but things still slip through the cracks. The most obvious one was a couple of days ago when I got mail from the NetBSD systems admins: it didn't get flagged, and so I thought I had missed it. I also missed one addressed to me as president at auug.org.au, not an address I prefer. Maybe I should go back to the daily mail approach.

Apart from that, playing around with NetBSD. For some reason the Vinum that I had running a couple of months ago no longer works, and I wasn't even able to build a kernel. I fear I've blown away my only good copy. Ah well, more material for the kernel debugging tutorial.


Sunday, 20 July 2003 Echunga
Top of page
previous day
next day
last day

Still more work around NetBSD today. Building kernels still seems to be a black art, and I'm really puzzled how I managed to get Vinum working back in April. I suspect that part of it is that things have changed since then. Now config complained about missing header files: it was looking for them in the tools hierarchy. It seems that, when moving software in /usr/src/sys/dev from FreeBSD to NetBSD (yes, they go into the same place), there are a number of things to do:

It's also worth knowing that if you have to update the Makefiles above, you can install the corresponding header files in the tools directory like this:

$ cd sys/dev
$ /usr/src/obj/tooldir.NetBSD-1.6Q-i386/bin/nbmake-i386 dependall
    

That kept me going all day long. Lately I seem to be achieving nothing.


Monday, 21 July 2003 Echunga
Top of page
previous day
next day
last day

Still more work on NetBSD builds today. When I came in in the morning, discovered that the build had died in some obscure place which hadn't been reported before. It seems that I was just about the first person to trip over it. Updated a Makefile and started again, in the meantime discussing techniques for accessing CVS. The NetBSD people don't (officially) use cvsup, and prefer to check out directly across the net. I feel uncomfortable with that, but it's clear that checking out from an unofficial mirror isn't the way to go, especially when it left me with the Makefile in question four revisions out of date. Started using rsync instead, which moved a surprising amount of data onto my machine.

In the afternoon, a couple of long phone calls kept me from doing anything useful. Just before I called it a day, the build (which lasts for ever, even with -DNOCLEAN) died again with some out of date files. Another Makefile was responsible for that, apparently. Started a build to run overnight.


Tuesday, 22 July 2003 Echunga
Top of page
previous day
next day
last day

As suspected, in their stupid manner, SCO are trying to impose licenses on Linux. They haven't shown their potential customers any proof, and they're not giving them the choice of removing the code. Surely that must be illegal.

More work building NetBSD, and finally got it finished. Somehow incremental builds take far too long, and my sloppiness didn't help. Now to get the stuff committed. Got told off for using rsync to synchronize my repo; sigh. There must be some good way to maintain a valid copy of the repo locally.

The new OzLabs web site is up. Spent some time setting up a mirror of the primary web site there, somewhat confused by the fact that I'm going to have to omit certain content.


Wednesday, 23 July 2003 Echunga
Top of page
previous day
next day
last day

On the phone to Nick at the Australian Consumer and Competition Commission, trying to find out some ideas about SCO's intention to force UnixWare licenses on Linux users, and put in a formal complaint (number 349 661). Nick didn't immediately see anything they had done wrong, difficult when they haven't done anything in Australia, but if they were to send invoices to Linux customers, that would be illegal. The problem is, of course, that they're spreading FUD in the meantime. Spent some time looking through the summary of the Australian Trades Practices Act, but didn't get much further.

Yvonne is coming back tomorrow with my new laptop (Dell Inspiron 5100), which doesn't have a serial port, so spent some time thinking about how to handle my tutorials in September, which requires a serial connection between two machines. I had been planning to use the new machine and sydney, my Dell Inspiron 7500, but that obviously won't work. Instead, tried installing FreeBSD on an ancient Dell Latitude LXi (built in 1996, 100 MHz Pentium, 40 MB memory), but had difficulties: it doesn't have a CD-ROM, so planned on installing via the net. Unfortunately, the floppy drive appears to be defective, so removed the 26 GB disk from sydney and put in the 260 MB (1% of the size) drive from the new machine and installed that way. It worked, but the system didn't recognize the PCMCIA slots. I think it's time to give up on that one.


Thursday, 24 July 2003 Echunga
Top of page
previous day
next day
last day

Up early this morning to pick up Yvonne from the airport. A good thing too: she got on an earlier flight from Melbourne, so I had to leave an hour earlier than planned, leaving an unprepared Yana behind.

Once back home, started working on the new laptop, which proved more work than I had expected. This is the first machine I have ever used with Microsoft “Windows” XP, and it took a lot of getting used to. It has an NTFS file system, and the FreeBSD project doesn't have any tools to resize NTFS file systems. With the help of some people on IRC, found a Linux utility ntfsresize, part of the Linux NTFS project, which I was able to download.

In the meantime, attempted to back up the NTFS file system, initially with spectacular lack of success. The Knoppix CD we distributed last year didn't recognize the on-board Ethernet, so tried the FreeBSD 5.0 live file system disk. That didn't recognize the Ethernet either, so plugged a PCMCIA card into the machine, which froze it.

Finally got an Ethernet connection with Knoppix and the PCMCIA card, and started copying the disk to wantadilla. While pondering what to do next, saw a mail message in the FreeBSD-mobile mailing list, describing exactly the same thing about a new Inspiron 5150. That unfolded during the time I was copying the 30 GB disk: the following entry in /boot/loader.conf does the trick:

hw.pci.allow_unsupported_io_range=1

It produced a couple of error messages, though; I think I'll need to investigate further:

start (88000000) < sc->membase (e0200000)
end (ffffffff) > sc->memlimit (e02fffff)
start (88000000) < sc->membase (e0200000)
end (ffffffff) > sc->memlimit (e02fffff)
ed1: <AmbiCom AMB8002T> at port 0x300-0x31f irq 10 function 0 config 32 on pccard0
ed1: address 00:10:7a:98:22:ba, type NE2000 (16 bit)

Also found that Duncan Barclay is working on a driver for the Broadcomm 4400 Ethernet chip. Checked out a source tree and started a make world.

It's interesting to note how laptops are evolving. The first laptop I could really run UNIX on was a 75 MHz Pentium that I bought in late 1996.

In fact, I had had a Toshiba 3200SX from about 1990, and I ran some form of Unix on it, probably Interactive System V/386. It had 3 MB of memory when I got it, but I upgraded it to 7 MB in 1993. It went to my brother-in-law Michael Ködderitzsch. I have added its (guessed) specs in the table below.

Here's an overview:

Machine       Year       Processor       Memory       Disk
andante       1989 (bought 1990)       80386SX-16       7 MB       40 MB
papillon       1996       75 Mhz Pentium       24 MB       300 MB (I think)
mojave       1998 (bought 1999)       266 MHz Pentium 2       96 MB       4 GB
sydney       2000       600 MHz Pentium 3       128 MB       24 GB
canberra       2001       1 GHz Pentium 3       256 MB       30 GB
      2003       2.4 GHz Pentium 4       512 MB       30 GB

The processor speeds have scaled quite nicely at a rate of 1.6× per year. Disks haven't, and I think I would have been quite happy with 256 MB of memory, but that's what came with the machine.

In addition, peripherals are changing. I already knew that I had bought a machine without a serial port and with only one PCMCIA slot. It's also missing a keyboard/mouse connector and a parallel port. The manufacturers are finally coming through on their promise to migrate everything to USB, which isn't going to make it easier for things like kernel debuggers.


Friday, 25 July 2003 Echunga
Top of page
previous day
next day
last day

More work on the new laptop today. What a pain! The last three laptops I had all installed without a problem. This one has given me nothing but problems. I'd like to blame Dell, but obviously a lot have to do with the fact that FreeBSD's laptop support is lagging. Tried to install the Broadcomm driver and discovered it would no longer compile: the function bus_dma_tag_create, which already had the remarkable number of 12 parameters, grew another couple earlier this month. Sent Duncan a message and carried on with a 3Com 575 card, which kept freezing the system on the most recent -CURRENT. Tried a vanilla 10 Mb/s card, which ran, but it kept having problems with DMA.

Finally checked out a source tree from the end of May and built that. It's nice to be able to build a world in under half an hour-this machine is actually faster in that respect than the servers I was looking at at Internode at the end of last month, lending credibility to the suspicion that there's something wrong with their servers. The end-of-May kernel worked OK with the 3Com and 10 Mb/s cards, but I still couldn't get the wireless to work. Compiled the Broadcomm driver, which worked, sort of, but 70% packets dropped on pinging on the local network suggest that it's still just a work in progress.

Turned my attention to the X server, which kept SIGSEVing. It worked fine under Knoppix, so tried the Knoppix configuration file. Still SIGSEGV. Looking at the X log files, I found the following section in the Knoppix files:

(II) RADEON(0): initializing int10
(II) RADEON(0): Primary V_BIOS segment is: 0xc000
(--) RADEON(0): Chipset: "ATI Radeon Mobility LW (AGP)" (ChipID = 0x4c57)
(--) RADEON(0): Linear framebuffer at 0xf0000000
(--) RADEON(0): MMIO registers at 0xe0100000
(--) RADEON(0): VideoRAM: 16384 kByte (64-bit DDR SDRAM)
(II) RADEON(0): Primary Display == Type 2
(II) RADEON(0): Panel ID string: G08303141XD
(II) RADEON(0): Panel Size from BIOS: 1024x768
Under FreeBSD, I got:
(II) RADEON(0): initializing int10
(==) RADEON(0): Write-combining range (0xa0000,0x20000) was already clear
(==) RADEON(0): Write-combining range (0xc0000,0x40000) was already clear
(WW) RADEON(0): Bad V_BIOS checksum
(II) RADEON(0): Primary V_BIOS segment is: 0xc000
(==) RADEON(0): Write-combining range (0x0,0x1000) was already clear
(--) RADEON(0): Chipset: "ATI Radeon Mobility M7 LW (AGP)" (ChipID = 0x4c57)
(--) RADEON(0): Linear framebuffer at 0xf0000000
(--) RADEON(0): MMIO registers at 0xe0100000
(==) RADEON(0): Write-combining range (0xe0100000,0x80000) was already clear
(--) RADEON(0): VideoRAM: 16384 kByte (64-bit DDR SDRAM)
(==) RADEON(0): Write-combining range (0xe0100000,0x80000) was already clear
(II) RADEON(0): CloneDisplay option not set -- defaulting to auto-detect
(II) RADEON(0): Primary Display == Type 2
(II) RADEON(0): Panel ID string: ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
(II) RADEON(0): Panel Size from BIOS: 65535x65535

   *** If unresolved symbols were reported above, they might not
   *** be the reason for the server aborting.

Fatal server error:
Caught signal 11.  Server aborting

It looks as if FreeBSD isn't reading the Video BIOS parameters correctly. Sent out a mail message asking if anybody else had seen this problem, and tried to debug the X server, something I haven't done in a long time. Made some progress about finding out where it was, but not enough.


Saturday, 26 July 2003 Echunga
Top of page
previous day
next day
last day

What a day! Started off looking at the X server, and discovered that debugging it is a Real Pain. It's been a long time since I've messed around with the server, and I have forgotten how to set debug symbols for compilation. I thought it was in xc/config/cf/site.def, but there doesn't seem to be any way to do it there. FreeBSD.cf is obviously wrong; it gets overwritten, and the make log file doesn't show where. Ended up configuring, modifying the host.def files, and then running make Makefiles again.

Installed the new server and decided to reboot, so thought it would be a good idea to test a patch to the boot selector that Phil Kernick had sent me far too long ago. It was not a good idea. This is the second time I have tested this patch, and the second time it rendered my system unbootable. Not only that, when I replaced the old bootstrap (via the live file system CD-ROM), it still wouldn't boot. Spent a lot of time digging in the guts of the partition table, though it was obviously still correct (otherwise I wouldn't have been able to boot via CD-ROM), and more time reading the source of the bootstrap, which did help: it was clear that it was failing the last test for some reason, after rewriting the boot sector. Finally tried with the 4.8 live file system CD-ROM and found that it worked: there must be something wrong with boot0cfg on release 5 of FreeBSD.

Left that for another day and returned to the X server, where I finally found a way to get debug symbols. The problem is that the server loads modules without divulging the load address, so you can't just use the add-symbol-file command of gdb. Ended up putting the following debug printf in radeon_driver.c:

    xf86DrvMsg(pScrn->scrnIndex, X_INFO,
           "entering RADEONGetBIOSParameters, pScrn 0x%x, info 0x%x"
           " load address %x\n",
           pScrn,
           info,
           RADEONWaitForFifoFunction );

What's the RADEONWaitForFifoFunction? The first function in the object file. The resultant printout looked like this:

(II) RADEON(0): entering RADEONGetBIOSParameters, pScrn 0x8932000, info 0x87e0000 load address 88ed000
This in turn allowed me to tell gdb:
(gdb) add-symbol-file radeon_driver.c 0x88ed000

Unfortunately, some other objects are loaded from ar archives, and I didn't find a way to get symbols for them.

After a lot of further examination, discovered that the server was deriving its values from the video BIOS, which is located between 0xc0000 and 0xcefff. For some reason, the memory range between 0xcc000 and 0xcefff was filled with 0xff bytes, thus explaining the message about the checksum mismatch. The question is, why? Fired the machine up with Microsoft and dumped the area (I see the DEBUG program is still there in Microsoft XP, apparently unchanged since the Seattle Computer Products days), and was thus able to confirm that the rest of it was correct. That was necessary, since the identification strings aren't that obvious:

C000:0080  0D 0A 4D 37 2D 43 53 50-33 32 20 54 45 53 54 20   ..M7-CSP32 TEST
C000:0090  42 49 4F 53 20 31 38 30-2F 32 33 30 4D 48 7A 0D   BIOS 180/230MHz.
C000:00A0  0A 00 28 43 29 20 31 39-38 38 2D 32 30 30 32 2C   ..(C) 1988-2002,
C000:00B0  20 41 54 49 20 54 65 63-68 6E 6F 6C 6F 67 69 65    ATI Technologie
C000:00C0  73 20 49 6E 63 2E 20 42-4B 2D 41 54 49 20 56 45   s Inc. BK-ATI VE
C000:00D0  52 30 30 38 2E 30 30 35-2E 30 30 30 2E 30 30 35   R008.005.000.005
C000:00E0  00 20 6A 78 64 65 6C 6C-2E 61 62 61 20 76 36 31   . jxdell.aba v61
C000:00F0  31 20 00 4D 37 20 20 41-47 50 20 44 47 44 31 55   1 .M7  AGP DGD1U
C000:0100  4E 00 00 90 60 00 08 A0-08 00 08 05 60 00 07 1E   N...`.......`...
It's interesting to note the text TEST.

Sent out another mail message and called it a day.


Sunday, 27 July 2003 Echunga
Top of page
previous day
next day
last day

Back to the X server this morning, and ended up converting the dump I made of the video BIOS under Microsoft into C program code and including it in the server, so the configuration routines use it instead of the BIOS in the machine. Mercifully, that worked, so spent some time considering a more automated way of setting up a new machine without hours of configuration.

Also started building the instant-workstation port, which seems singularly badly named in view of the time it takes to compile KDE. Maybe I should remove KDE from the list.

Catching up with other things all day long. I have collected over 5,000 mail messages since last cleaned up last weekend.


Monday, 28 July 2003 Echunga
Top of page
previous day
next day
last day

The reprint of The Complete FreeBSD has been delayed somewhat, and Andy sent me a mail message over the weekend asking for the updates by Monday (i.e. tomorrow). Spent a bit of time looking at that, and got Yet Another final version ready.

In the afternoon, got a call from Jo Holland (female), a SENIOR Customer Relations Manager from Telstra, to whom Sam Stewart (also female) had escalated her own inability to communicate. Jo placed great emphasis on the title SENIOR, but did nothing to justify it. She confirmed at great length, for example, that they had closed two of my complaints without even informing me because they were duplicates. I asked her if she thought it was good customer relationships to close things without informing the customer. She went back into a repetition of her long-winded description of how they were duplicates, and wouldn't be stopped. After four iterations, I finally got her attention long enough to ask her to escalate the issue further. She said there was no further escalation path (the same thing that Sam Stewart said a few months ago), and suggested I take it to the Telecommunications Industry Ombudsman, which sounds like a damn good idea. At least that way they will have to justify themselves in writing.

Finally got some time to work on the debug tutorial. I had forgotten how much material I had collected for it. It looks as if my course materials will be more substantial than I had thought.

After dinner received a mail message from a reader pointing out yet more (minor) errors in the Vinum chapter of The Complete FreeBSD. sigh And that after I had already submitted my “final” draft. Spent another hour on that. Hopefully it's right now.


Tuesday, 29 July 2003 Echunga Images for 29 July 2003
Top of page
previous day
next day
last day

Into town today for the ADUUG lunch, after which finally down to O'Connell's second-hand bookshop to find a reasonable copy of “The Canterbury Tales”: the one I bought in Los Gatos 12 years ago has no commentary whatsoever.

Back home with some hardware which Daniel O'Connor had lent me: a wireless access point and a PCI firewire adaptor. I have not been able to use wireless under FreeBSD 5 since I upgraded my system over a month ago, and I had been spending some time trying to investigate the issue. My wireless setup involves IBSS, without a base station, and I wondered if that had something to do with it. Connected up the access point and it worked immediately, so my assumption was right. Now to get it fixed.

I had really not intended to do anything with the firewire card for some time. It looks like an ideal thing for remote kernel debugging, but I didn't really have time to look at it. On IRC, however, Daniel encouraged me, and so I put one in the Athlon box (monorchid in this case) and tried it out:

<Daniel> groggy: tried the firewire stuff yet?
<groggy> Daniel: No.
<groggy> OK, I'll take a look.
<Daniel> no hurry :)
* groggy reboots adelaide wiht ACPI and watches it hang when starting X.
<groggy> *sigh*
<subdue> grog has been unlucky this month
<Daniel> well his new laptop was cheap
<Daniel> so it's not all bad
<groggy> subdue: I seem to be attracting bugs.
<groggy> fsck. fsck. fsck.
<subdue> bring bug spray next time
<groggy> On the positive side, my wireless is now working, but only in BSS mode.
<subdue> that's a good start
<groggy> Daniel:
<groggy> fwohci0: <Lucent FW322/323> mem 0xd9005000-0xd9005fff irq 5 at device 12.0 on pci0
<groggy> fwohci0: OHCI version 1.0 (ROM=1)
<groggy> fwohci0: No. of Isochronous channel is 8.
<groggy> fwohci0: EUI64 00:01:99:00:00:03:62:2b
<groggy> fwohci0: Phy 1394a available S400, 3 ports.
<groggy> fwohci0: Link S400, max_rec 2048 bytes.
<groggy> firewire0: <IEEE1394(FireWire) bus> on fwohci0
<groggy> if_fwe0: <Ethernet over FireWire> on firewire0
<groggy> if_fwe0: Fake Ethernet address: 02:01:99:03:62:2b
<groggy> fwe0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> mtu 1500
<groggy>         ether 02:01:99:03:62:2b
<groggy>         ch 1 dma -1
<groggy> Daniel: Interesting, my laptop doesn't do that.
<Daniel> groggy: kldload firewire sbp if_fwe ?
<groggy> fwohci0: vendor=104c, dev=8029
<groggy> fwohci0: <1394 Open Host Controller Interface> mem 0xe0200000-0xe0203fff,0xe0206000-0xe02067ff irq 10 at device 4.1 on pci2
<groggy> fwohci0: OHCI version 1.10 (ROM=0)
<groggy> fwohci0: No. of Isochronous channel is 4.
<groggy> fwohci0: EUI64 00:c0:4f:32:26:e8:80:61
<groggy> fwohci0: Phy 1394a available S400, 2 ports.
<groggy> fwohci0: Link S400, max_rec 2048 bytes.
<groggy> firewire0: <IEEE1394(FireWire) bus> on fwohci0
<groggy> fwohci0: Initiate bus reset
<groggy> fwohci0: BUS reset
<groggy> fwohci0: node_id=0xc000ffc0, gen=1, CYCLEMASTER mode
<groggy> firewire0: 1 nodes, maxhop <= 0, cable IRM = 0 (me)
<groggy> firewire0: bus manager 0 (me)
<groggy> sbp0: <SBP2/SCSI over firewire> on firewire0
<groggy> if_fwe0: <Ethernet over FireWire> on firewire0
<groggy> if_fwe0: Fake Ethernet address: 02:c0:4f:e8:80:61
<groggy> fwe0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> mtu 1500
<groggy>         ether 02:c0:4f:e8:80:61
<groggy>         ch 1 dma -1
* groggy grabs a cable and wanders into the Mike Smith Memorial Room.
<groggy> fwe0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
<groggy>         inet 192.168.1.1 netmask 0xffffff00 broadcast 192.168.1.255
<groggy> === root@adelaide (/dev/ttyp2) /home/grog 8 -> ping 192.168.1.2
<groggy> PING 192.168.1.2 (192.168.1.2): 56 data bytes
<groggy> 64 bytes from 192.168.1.2: icmp_seq=0 ttl=64 time=1.006 ms
<groggy> 64 bytes from 192.168.1.2: icmp_seq=1 ttl=64 time=0.181 ms
<groggy> 64 bytes from 192.168.1.2: icmp_seq=2 ttl=64 time=0.191 ms
* groggy likes this new toy.

It's interesting how much easier it was to set up firewire than the Ethernet cards. It's also interesting to note how much faster the ping times are. ping times across 100 Mb/s Ethernet run to about 450 µs. Daniel also pointed out that the cost of these cards is very low. It's obviously something to look at as soon as I have time.


Wednesday, 30 July 2003 Echunga
Top of page
previous day
next day
last day

So now my laptop is more or less working the way I like it. It only took five days. I think I need to spend some time ensuring that FreeBSD works better with laptops. Upgraded to the latest -CURRENT and managed to hang the system when running dhclient against the wireless card, but only once. Still, there's a lot of work to be done.

Spent most of the day writing up my column for Daemon News. DragonFlyBSD is the big thing at the moment. It'll be interesting to see how it pans out.

In the afternoon, took a look at the satellite data card that I had ordered for Bernd Wulf and discovered it wasn't what I had ordered: previously they've supplied Telemann SM200D cards, but this one here was made by somebody in Korea, and it has completely different specs. Spent some time looking for drivers, but of course the CD-ROM only has Microsoft drivers on it. Looks like we're in for more problems.


Thursday, 31 July 2003 Echunga
Top of page
previous day
next day
last day

Up early this morning to see Donald, one of the ducks we bought a couple of months ago, wandering around by himself (well, we think he's a drake). The other one, whom we thought might be female, and thus called Daisy, was nowhere to be seen. Spent a bit of time looking around, and Yvonne thought she saw her at the other end of the north-east paddock in a flock of sacred ibises, but it turned out to be a particularly white sacred ibis. Spent some time wondering where she had got to. Yvonne has the theory that a fox might have taken her, but he would have had to take her quite a way, and you'd expect to have heard quite a commotion. Also, Donald didn't seem unduly concerned, so we're now wondering if, at the age of only six months, she's already brooding her first batch of eggs.

Later out and discovered a surprising number of white feathers, notably tail feathers, on the edge of the pond. On closer examination, some (but not all) must have been from Donald, who was missing a couple. Also pawprints and signs of a scuffle. I fear that's the end of Daisy. I'm not convinced that it was a fox—we're in Australia after all—but a dog would have done just as good a job.

In fact, we did see foxes in the area, so it's quite possible that our guess was right.

In the afternoon off to Sydney, discovering in the process that my mobile phone was completely discharged, and that I had packed the wrong power supply. Will I ever get these things right? In Sydney, checked in to the Duxton and discovered that they had a collection of power supplies, presumably left behind by guests, and they had one for my phone, so it wasn't that much of a problem after all. Bumped into Luke Schapel and out to have a couple of drinks in a nearby pub. I didn't realize that this is the location of Kirribilli, the Prime Minister's constituency.


Do you have a comment about something I have written? This is a diary, not a “blog”, and there is deliberately no provision for directly adding comments. It's also not a vehicle for third-party content. But I welcome feedback and try to reply to all messages I receive. See the diary overview for more details. If you do send me a message relating to something I have written, please indicate whether you'd prefer me not to mention your name. Otherwise I'll assume that it's OK to do so.


Top of page Previous month Greg's home page Today's diary entry Next month Greg's photos Copyright information

Valid XHTML 1.0!

$Id: diary-jul2003.php,v 1.48 2023/07/31 03:28:10 grog Exp $