supine.com- home
This site best viewed with a high blood caffeine level and your monitor upside down.

Thu, 12 Jun 2008

They made this bed, they should sleep in it.
After reading yet another story on a "credit crisis" casualty, this time Bear Stearns, I was affronted enough to write the following letter to the editor:

To: letters@smh.com.au
Subject: Financial companies shouldn't have their cake and eat it too.

Another day, another debt laden company goes to the wall. The US Federal
Reserve steps in "to promote the orderly functioning of the financial system".
Why couldn't they step in during the good times, billion dollar profits and
million dollar bonuses "to promote the orderly functioning of the financial
system"? The industry decries regulation that would "prevent innovation" during
the good times but then they want bail outs when things turn sour. Natural
selection should be allowed to take care of the "innovators". They made this
"bed", they should "sleep" in it.

They published it but they made some small changes, mostly fixing my grammar and spelling:

Subject: Lopsided intervention

Another day, another debt-laden company goes to the wall. The US Federal
Reserve steps in "to promote the orderly functioning of the financial system"
("Nervous traders fear worse to come", March 17). Why couldn't they step in
during the good times of billion-dollar profits and million-dollar bonuses to
promote the orderly functioning of the financial system? The industry decries
regulation that would "prevent innovation" during the good times but then they
want bail-outs when things turn sour. Natural selection should be allowed to
take care of the "innovators". They made this bed, they should sleep in it.

And the fallout from this one? Bear has been bought by JP Morgan Chase for around $2/share after trading near $160/share as little as a year ago. Ka-ching!

Bear Stearns plunge
Source: Yahoo! Finance

[2008/06/12 / social / finance permanent link]

Links of the Day: June 12, 2008
del.icio.us/help/api/posts
Blosxom doesn't have XML-RPC support by default so I'll need to script an API call to download daily bookmarks.

Aaron Straup Cope / Net-Delicious - search.cpan.org
Someone may have already done the heavy lifting for me!

Publishing Links With Perl, by Jeffrey Veen
Just in case I get lazy and need a cheat sheet...

http://edward.de.leau.net/code/wpds.txt
Actually this one turned out more useful.

net::delicious bug #30310: Error messages when used with warnings on
I was getting an error ("Use of uninitialized value in -f at /usr/share/perl5/Net/Delicious.pm line 228.") from my script, seems there is already a bug filed for it.

Royal Pingdom : Javascript framework usage among top websites
Caught my attention because the name MooTools sounds like something JohnF would nave named.

[2008/06/12 / daily links permanent link]

Obscure compliment...
...in a ticket at $work[0]:

MB's mutt-fu is strong.

[2008/06/12 / tech permanent link]

Ubuntu Hardy unlikely to have working Ralink drivers...
So I've been persisting with using the rt2x00 drivers with 2.6.24 on Ubuntu Hardy but it wasn't only slow (interface was quite often at 1Mb/s rather than 54Mb/s) but unreliable, dropping out every 15-20 minutes. A quick bounce of the interface brought it back but it's just un-acceptable to do that indefinately.

I'd been booting into an older kernel in order to get working drivers, in the hope the new ones would be fixed and using them would be a quick reboot away, but after following the bug in launchpad it seemed quite clear that I was dreaming.

I bit the bullet last night and installed the old drivers. I had to pull them from CVS rather than using the packaged ones. But a quick 'make && sudo make install' and everything is working perfectly again.

I left a little note in the bug:

I'm not sure why this is "Medium". Most computers these days are doorstops if
they don't have reliable networking.

You have a LTS release due next month and you are persisting with releasing
broken drivers for Ralink chipsets. There was a point about a month ago where
someone needed to make a call and either revert to the old drivers or commit to
getting the new ones working in time for Hardy.

I for one am using the old drivers.

[2008/06/12 / tech / linux permanent link]

Wireless interface renaming fun on Hardy...
As I mentioned in in my last post I was having problems with wireless.

As the drivers for the rt2500 chipset have been a problem in the past, I assumed it was the same issue rearing it's ugly head again. I was wrong.

My system had a wlan0_rename interface as well as the expected ra0 interface.

$ sudo iwconfig 
lo        no wireless extensions.

eth0      no wireless extensions.

ra0       no wireless extensions.

wlan0_rename  IEEE 802.11g  ESSID:"XXXXXXXX"  

Hmmmmm... looks like some udev fun! I'd come across the udev replacement for /etc/iftab after we swapped out a network card at $work[0] and the interfaces came up in an odd order. I figured it was something similar here.

$ sudo vim /etc/udev/rules.d/70-persistent-net.rules 
:%s/ra0/wlan0/g
$ sudo vim /etc/network/interfaces
:%s/ra0/wlan0/g
$ sudo rmmod rt2500pci rt2x00pci rt2x00lib 
$ sudo modprobe rt2500pci 
$ iwconfig 
lo        no wireless extensions.

eth0      no wireless extensions.

wmaster0_rename  no wireless extensions.

wlan0     IEEE 802.11g  ESSID:"XXXXXX"  

Bingo!

[2008/06/12 / tech / linux permanent link]

Reading something into your bash history...
An interesting idea from jimmac via jdub.

At home:

(marty@merboo)-(03:42:46 Fri Apr 11)-(~)
$ history|awk '{a[$2]++ } END{for(i in a){print a[i] " " i}}'|sort -rn|head
106 screen
96 ssh
48 sudo
43 vim
25 ifconfig
25 cd
17 make
12 ls
12 cat
10 iwconfig

...and at work:

marty@boober:~ $ history|awk '{a[$2]++ } END{for(i in a){print a[i] " " i}}'|sort -rn|head
142 ssh
82 screen
45 sudo
42 dig
24 pstree
18 offlineimap
14 vim
12 telnet
8 ooffice
8 mutt

[2008/06/12 / tech / linux permanent link]

Corner cases make me a sad panda
At $work[0] we've had issues with a server that has a Nvidia SATA controller. The errors look a little something like:

 ata2.00: cmd 60/08:78:3f:8f:3b/00:00:00:00:00/40 tag 15 cdb 0x0 data 4096 in
          res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
 ata2.00: cmd 61/00:80:66:32:77/01:00:00:00:00/40 tag 16 cdb 0x0 data 131072 out
          res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
 ata2: soft resetting port
 ata2: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
 ata2.00: configured for UDMA/133
 ata2: EH complete
 ata2: timeout waiting for ADMA LEGACY clear and IDLE, stat=0x400
 sd 1:0:0:0: [sdb] 488390625 512-byte hardware sectors (250056 MB)
 sd 1:0:0:0: [sdb] Write Protect is off
 sd 1:0:0:0: [sdb] Mode Sense: 00 3a 00 00
 sd 1:0:0:0: [sdb] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
 ata2: EH in ADMA mode, notifier 0x0 notifier_error 0x0 gen_ctl 0x1501000 status 0x0 next cpb count 0x10 next cpb idx 0x0

It appears some sata_nv "features" (NCQ) were added to Linux 2.6.22 but some Hitachi hard drives don't support it. Redhat has errata on this.

Of course we're running that combination. Sigh.

[2008/06/12 / tech / linux permanent link]

Google doesn't seem to care about your privacy...
SMH is reporting about Google's imminent launch of "Street View" in Australia. Richard Chirgwin points out the spineless journalism that let quotes like the following through to the keeper:

Still reeling from the backlash by privacy activists after Street View began in
the US last year, Ms Mayer said Google was developing technology to blur faces
and number plates but she did not know whether it would be ready in time for
the Australian launch.

My response to that would be: if the technology is coming you should wait for it and avoid the snafus in the first place.

[2008/06/12 / tech / internet permanent link]

Bankwest feedback falls on deaf ears...
$better_half was trying to login to Bankwest the other day and it didn't work from the desktop. Tried a few different things and eventually tested it from the laptop which worked. The only difference between the two is that one is amd64 and the other is x86. I had a look at the source but there didn't appear to be any wacky javascript to mess things up.

So, I thought I'd be helpful and let their web developers know:

...our home computer which used to work fine. It just returns her to the login
prompt without any error message.

The system is AMD64 Linux (Ubuntu 8.04) and I had her test with both Firefox2
(2.0.0.7) and Firefox3 (beta4).

I had her test from my laptop and that worked fine.

The laptop is x86 Linux (Ubuntu 8.04) and Firefox3 (beta4).

I wasn't expecting a great response but I got a "talk to the hand"!

Thank you for your message.
Please have your wife contact our 24 hour Customer Help Centre on 13 17 
18 to enable one of our operators to assist with the enquiry.

Due to security restrictions, we are unable to access or discuss 
information specific to your account via this unsecure message service 
as it is not possible to complete the identification requirements.
Please accept our apologies for this inconvenience however the strict 
guidelines of the Privacy Act commit us to this action.

Ummmm, hello?

Sigh.

[2008/06/12 / tech / internet permanent link]

If fibre goes down in a forest, does the twisted pair hear it scream?
So at $work[0] we're trying to bring up a new service for a customer. It's a 2meg service from T, which terminates on our side like so:

fibre -> managed media converter -> twisted pair -> router

We think we're ready to turn it up and a T technician is booked. For 01:30am due to customer requirements. Sigh.

Technician reports he can't see either the media converter nor the router. He's on the "basement switch" (a designation which means nothing to yours truly, especially at that hour of the morning). Eventually my sleep deprived haze allows me to parse that he is on a switch in the facility and can't connect to the service.

Except our understanding is that their end of the service doesn't terminate in the facility. Their switch is in one meet-me-room but it had cable tray / riser capacity issues. So this service's fibre went to the meet-me-room at the other end of the building. Where T doesn't have a switch. But they did have some spare fibre already pulled from an exchange. So a fibre tie later and our service terminates elsewhere. And in my blubbering state I can't convince the technician of this. Cutover canceled. Furrfu.

So what does the subject have to do with this saga I hear you ask?

The technician wanted me to pull the twisted pair from the router to check for link protocol going down on an interface of the switch he was logged into to. Even presuming he was on the right switch, my original reaction was that it wouldn't work because the media converters act like bridges, not repeaters, and the link protocol wouldn't change at his end.

I wanted to confirm / deny this ungodly hour of the morning theory, but my Google-fu appears to be suffering 5 month old child process lossage. JohnF did the heavy lifting for me and turned up this question and answer which covered a similar scenario. The pertinent response that address my question is:

Coming in a bit late here, but...

Has the OP looked at how the media converter is set up? Many media converters
have a test mode where a down link status is not passed from one side to
another. Once you take it out of test mode, it will pass status. Usually it's a
small push button, or a switch.

Sean

So the answer to my question is: it depends!

[2008/06/12 / tech / hardware permanent link]

Many to one SNAT on Cisco IOS
So, at $work[0] we needed to do a "many to one" SNAT on Cisco IOS. I'd only ever previously done this by SNAT'ing to an interface, however this required specifying the IP.

My Google-fu failed me, I could turn up how to do the "SNAT to interface" and "SNAT one to one from a network to a pool" but not quite what we needed.

So I thought I'd try having a pool with a single IP in it, ala:

ip access-list extended SNAT_SRC_ACL
 permit ip w.x.y.z 0.0.0.63 any
ip nat pool SNAT_POOL a.b.c.d a.b.c.d netmask 255.255.255.0
ip nat inside source list SNAT_SRC_ACL pool SNAT_POOL overload

Which worked!

And then five seconds later a workmate found a site that described exactly this technique. Argh!

[2008/06/12 / tech / cisco permanent link]

Daily Links Automated
As can be seen from the previous post I'm back!

The best bit is that post was created automatically. I use del.icio.us to bookmark interesting things I read day to day. It has support for daily links posted to your blog but that requires XML-RPC support which Blosxom doesn't have out of the box.

So I wrote a small perl script which downloads links daily and creates a post if there are any for that day. Most of the heavy lifting is done by Net::Delicious (which I turned into a deb package for Ubuntu Hardy) and to save time a lot of inspiration was drawn from Edward de Leau's WordPress script.

Final problem. I want it to run at midnight UTC (del.icio.us' "get by date" API works in UTC) in order to grab all the links for an entire day when they are fresh, fresh, fresh. But how do you run this out of CRON on a system that is in timezone "Australia/Sydney" with all it's daylight savings fun, fun, fun?

# Only want this to run just before midnight GMT
59 9 * * *	/bin/date +\%z | /bin/grep -q 1000 && /path/to/delicious2blosxom.pl
59 10 * * *	/bin/date +\%z | /bin/grep -q 1100 && /path/to/delicious2blosxom.pl

Run it twice a day but check for the current UTC offset first. The first covers normal Sydney time, the second daylight savings. Sweet!

[2008/06/12 / meta permanent link]