Did you notice the Ubuntu driver is called "ath5k_pci" while the BT driver is called "ath5k"? It's on the last line of the code you posted.

Honestly I don't know if it makes a difference but it might be worth investigating.

One other thing, have you tried using Wireshark to record the DHCP transaction on both Ubuntu and Backtrack? You could look at the frames and see if they're different.

I have a hunch... but I could be way off. Maybe Ubuntu supplies the DHCP server with a host name, whereas BT doesn't. It might be a funky DHCP server that doesn't play friendly unless you give it a hostname. But I could be way off.