Skip to content
A scene from Ireland

Neil @ Home

Linux.conf.au 2009 - Hobart Tasmania

I recently had the pleasure of attending linux.conf.au 2009. When I go to these conferences I like to write a trip report to share will my colleagues. And having written it, I thought I would share it with you too.

Enjoy.

linux.conf.au 2009 was held in late January in Hobart, Tasmania - the southernmost city in Australia. With a population of around 200,000 it is big enough to offer all the facilities conference attendees would require, without being so big that it takes an hour just to get out into the countryside. And the country side is well worth seeing as Tasmania has much beautiful scenery and wilderness to enjoy.

The talks covered a wide range of the sort of technical and social commentary that you would expect from an Open Source based conference. From providing low-infrastructure small town telephony through mesh networks (google:Mesh Potato) through the use of wikis in documentation and community building to the difficulties of building a robot to play a clarinet, there were talks for all tastes.

One theme that emerged for me (possibly because I attended a number of talks at the "mobile devices" mini-conference) relates to issues with Embedded Linux.

Screen Lock on the Freerunner

(golly, nearly two years since I have posted anything. I probably just think that I have nothing interesting to say...)

About 6 months ago I purchased an Openmoko Neo Freerunner - a nice (if not totally modern) piece of hardware that could make a nice feature-phone if it had working software (which some day it probably will). I've been playing with it on-and-off over the months, though have never used it as a regular phone.

Just lately I have had various bits of leave which have allowed me time to play more intensively with the phone and get it to do some things that it didn't before, or to get it to do them differently. And I thought it might be nice to write about some of that.

Background: I use the "FSO" distribution. However I've discarded illume and e-wm in favour of matchbox-window-manager and matchbox-panel. They might not look as pretty by they seem to be much lighter on resources and they stay quite nicely out of my way. I also don't use "zhone" and have disabled most of "frameworkd"...

All of my programming has been with python using the GTK toolkit for display (via pygtk). I wouldn't say that GTK is a particularly good tool kit (I've used TK before (with TkTcl) and my memory is that it was a much more well rounded kit. But memory could be playing tricks on me). I'm using GTK simply because it was something different but easy to learn.

The first little project I want to talk about and share is my program for locking the screen.

mdadm 2.6.1 released

Yes, I forgot to announce 2.6 here, sorry about that.

2.6.1 is just some minor bug fixes. The release is motivated primarily by the fact that I have implemented raid6 reshape (i.e. add one or more devices to a raid6 while online). For the moment you need to collect patches from the linux-raid mailing list or wait for the next -mm release. They will hopefully be in 2.6.21-rc2. Earlier versions of mdadm can start a raid6 reshape with a new kernel, but there is one small case where it didn't quite do the right thing so I wanted to get that fix out.

2.6 introduced --incremental mode. This is intended for interfacing with 'udev'. When a new device is discoverred it is passed to "mdadm --incremental" and mdadm tries to include it in an md array if that is appropriate. As soon as all devices become available, the array is ready. Of course if one device is missing, we have a problem. Do we start the array degraded as soon as possible, or wait for the missing device to appear, possible waiting forever... No go answers to this question yet. mdadm allows you to try either.

Newer, faster, better

Hurray. I now have something you might almost call fast internet to my home - and hence to this server...

Thanks to eXeTeL.com.au and Optus I now have ADSL2. It seems to be about 4Mbit/sec downstream and 800Kbit/sec down, but that is a lot better than 1500/256!

So you might find this site slightly faster now... for those who look.

The change over took about 2 days :-( So if you thought my site was down for a long time, you were right!!

Back now.

Improved support for comments

A couple of people actually left comments (woo-hoo!!).
This helped me see a number of problems with the comment feature. So I've fixed some things.

  • A default title for the comment gets filled in.
  • I get mail when people submit comments.
    BULLET - People can leave an email address and subsequent comments on the same article will get sent to them. Of course they can edit their comment and remove the email address.

I still need to record and display the date/time when the comment was made, and maybe even make an 'atom' feed of comments....

Another TODO list : nfsd

I love todo-lists. They are liberating. If you don't know what to work on next, you write a TODO list. Then you just work through the things on the list. Or maybe you don't, but having written them all down, they no longer rattle around in your brain and distract you from more important things.

Anyway, to the point. Someone recently asked me what my priorities for the Linux NFS server were and while I'm not spending a lot of time on it at the moment, there are things that I would like to see done, so I wrote a little todo list. And having written it, I might as well share it. So here it is...

BULLET - auto-adjust the number of nfsd threads. I'd really like the sysadmin not to have to choose a number, but it should still be possible to set a maximum. I imagine: BULLET - slow growth when there is high load and we have never had this many running before BULLET - slow decay in numbers when <50% are in use fast growth when we have dropped below the highwater mark and load is high BULLET - A maximum that is somehow based on the requested number of threads BULLET - Some way of measuring if extra threads in actually improving throughput, and feed that in to the growth calculations.
BULLET - Find a way to overcome the current bottle neck when replying to requests on a udp socket.

BULLET - explore whether it would help to make the scheduling of nfsd threads more SMP (and NUMA) aware.

BULLET - Finalise and implement upcall changes to support new NFSv4 features like auth-type selection and fs_locations

BULLET - make exporting of filesystem via NFSv4 work more smoothly (mountd should automatically create the 'virtual filesystem' thing).

Metad - a daemon for controlling daemons

As I progress in winding up my position at the Computing Support Group at cse.unsw I'm looking for programs that I wrote which might be more widely useful and trying to make them available to the open source community.

One such is 'metad' which you can find in my git repository at git://neil.brown.name/metad or http://neil.brown.name/git/?p=metad.

metad is a daemon for managing other daemons. It is a bit like inetd in that it starts programs and waits for them to complete. However it isn't just starting programs based on network activity - that is possible, but was a later addition.

The main purpose is to run all other little daemons one seems to need and to allow those daemons to be stopped and started remotely. It may not be very interesting on a single-user machine, but it is wonderful when administering a network

A good tongue to speak in.

So, Christian: You think you would like to be able to "Speak in tongues"?

Let me suggest a good tongue to start with.

They say "Money speaks all languages" so if you speak with money, you can speak in all tongues.

I encourage you then to speak your worship of God with the language of Money. Give, as Christ has given so much to you.

Then your 'speaking in tongues' will truely be a blessing to many (including yourself) and will be glofirfying to God.

A new lease of life for my network

Ever since I moved this blog and the nearby git repos to my home network I have had weird intermittent network problems. I worked just enough for me to convince myself that it seemed to be working, but not enough for people to have convenient access from outside.

After fiddle with cables a bit with no real success I did some more systematic testing and discovered that the wired ports on my Netcomm wireless/ADSL modem were just not doing the right thing.

So I decided it was time for an upgrade. Not only would it then work immediately, but I could have VOIP integrated into the same box (instead of separate) and be ready for ADSL2 - if that ever gets to the 'lucky country' (well... a few exchanges have it, but not many).

A few hundred dollars for an NB9W and a couple of hours later it all works again nicely. The VOIP QoS applied to all my traffic without esoteric routing being required, and my webside gives a consistent 20KB/sec to the world. Now I just have to tidy up the wires before someone trips over...

A man after God's own heart

Preamble

I've been preaching a very occasional series at church based on 1 Samuel, and I'm coming to the end. Not the end of the book, but the end of the life of Samuel, and I feel it is a good time to take a break from that book. It's been fun but I think it is time to move on.

Anyway, the final sermon will start from I Samuel 16:1-13 where Samuel anoints David to be the next King of Israel, and God tell him (Samuel)

"Do not consider his appearance or his height, for I have rejected him. The LORD does not look at the things man looks at. Man looks at the outward appearance, but the LORD looks at the heart"

The question I want to answer is "When He looked at David's heart, what did the LORD see?".