Running Intrepid on Thinkpad X60s a bit cooler

One of the areas where out of the box Windows Vista beats out of the box Ubuntu is handling temperature. As X60s has rather slim chassis then temperatures inside and on surfaces are quite similar. And this is not so convenient if you’re right-handed trackpad user as this is the exact warmest spot on top.

I’ve been using the following bash script recently to get temperatures down a bit:

echo 5 | sudo tee /sys/bus/pci/drivers/iwl3945/*/power_level
echo "auto" | sudo tee /sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/power/level
sudo iwconfig wlan0 power on
sudo iwconfig wlan0 txpower 12

First line seems to make the most difference.

When using the laptop after running the script I find that with light wireless activity Gkrellm reports following temperatures:

BAT1: 34 BAT2: 32 CPU: 50 GPU: 48 PCI: 46 THM0: 50 THM1:52

And after reverting changes it seems to stabilize with:

BAT1: 35 BAT2: 34 CPU: 50 GPU: 48 PCI: 51 THM0: 51 THM1:52

Unfortunately I’m afraid it has a price because occasionally my wireless connection seems to drop for no apparent reason and the only way to get it working again is to reboot. Not nice but could be due to something else.

For some further power usage cutdown – and mostly if it makes it cooler it also reduces power consumption – you could apply powertop suggestions:

echo 1500 | sudo tee /proc/sys/vm/dirty_writeback_centisecs
echo min_power | sudo tee /sys/class/scsi_host/host0/link_power_management_policy
echo 5 | sudo tee /proc/sys/vm/laptop_mode

Also without changes powertop reports 17.2W and after 13.7W, those are not absolute values as there was almost no wireless or CPU activity but they do highlight relative difference.

Last but not least, if you don’t use bluetooth you can switch it off using Fn+F5, but you knew that already, didn’t you?

Cryptic JBoss error

After some weeks I tried to run JBoss again. I was welcomed with the following exception:

Failed to boot JBoss:
java.lang.RuntimeException: Unable to create a KernelInitializer based on the specified KernelConfig
at org.jboss.kernel.KernelFactory.createKernelInitializer(KernelFactory.java:156)
at org.jboss.kernel.KernelFactory.assembleNewKernel(KernelFactory.java:99)
at org.jboss.kernel.KernelFactory.newInstance(KernelFactory.java:67)
at org.jboss.kernel.plugins.bootstrap.AbstractBootstrap.bootstrap(AbstractBootstrap.java:114)
at org.jboss.kernel.plugins.bootstrap.AbstractBootstrap.run(AbstractBootstrap.java:83)
at org.jboss.bootstrap.microcontainer.ServerImpl.doStart(ServerImpl.java:79)
at org.jboss.bootstrap.AbstractServerImpl.start(AbstractServerImpl.java:398)
at org.jboss.Main.boot(Main.java:209)
at org.jboss.Main$1.run(Main.java:544)
at java.lang.Thread.run(libgcj.so.81)
Caused by: java.lang.ArrayIndexOutOfBoundsException: 0
at org.jboss.reflect.plugins.MethodInfoImpl.<init>(MethodInfoImpl.java:103)
at org.jboss.reflect.plugins.introspection.ReflectMethodInfoImpl.<init>(ReflectMethodInfoImpl.java:78)
at org.jboss.reflect.plugins.introspection.IntrospectionTypeInfoFactoryImpl$2.run(IntrospectionTypeInfoFactoryImpl.java:211)
at org.jboss.reflect.plugins.introspection.IntrospectionTypeInfoFactoryImpl$2.run(IntrospectionTypeInfoFactoryImpl.java:200)
at java.security.AccessController.doPrivileged(libgcj.so.81)
at org.jboss.reflect.plugins.introspection.IntrospectionTypeInfoFactoryImpl.getMethods(IntrospectionTypeInfoFactoryImpl.java:198)
at org.jboss.reflect.plugins.ClassInfoImpl.getDeclaredMethods(ClassInfoImpl.java:394)
at org.jboss.beans.info.plugins.AbstractBeanInfoFactory.getMethods(AbstractBeanInfoFactory.java:232)
at org.jboss.beans.info.plugins.AbstractBeanInfoFactory.getBeanInfo(AbstractBeanInfoFactory.java:153)
at org.jboss.beans.info.plugins.AbstractBeanInfoFactory.getBeanInfo(AbstractBeanInfoFactory.java:124)
at org.jboss.config.plugins.AbstractConfiguration.getBeanInfo(AbstractConfiguration.java:69)
at org.jboss.kernel.plugins.config.AbstractKernelConfig.getBeanInfo(AbstractKernelConfig.java:65)
at org.jboss.kernel.plugins.config.property.PropertyKernelConfig.getImplementation(PropertyKernelConfig.java:175)
at org.jboss.kernel.plugins.config.property.PropertyKernelConfig.createKernelInitializer(PropertyKernelConfig.java:120)
at org.jboss.kernel.KernelFactory.createKernelInitializer(KernelFactory.java:150)
...9 more

And I know it was working before! Suspected Java update 7 that came recently form Ubuntu repository, but no one else seemed to have a similar issue.

Somehow default java that system uses has been changed. It wasn’t sun-java any more. As soon as I ran:

sudo update-alternatives --config java

and choosed sun-java, it started working again.

Perhaps saves some time for someone.

Is that what Orkut meant by “You’ve got extraordinary tools to succeed, use them accordingly”? :P

Enough is enough

I’ve ditched Ubuntu’s version of Thunderbird and using the version from Mozilla now. For some mysterious reason 2.0.0.17 on Ubuntu occasionally forgets that I have a calendar and puts out numerous error messages concerning Lightning addon. Mozilla’s version doesn’t do that even if I use the exact same profile folder. Might give it another try when Ubuntu packages next version.

Green screen of weird (GSOW)

Windows users are somewhat scared about the BSOD. Haven’t experienced it ever so I wouldn’t know. But..
I finally switched from Gutsy to Hardy. The whole desktop effects part has been made a lot easier to setup. Only had to figure out how to have Compiz with the taskbar option “show windows from all desktops” disabled.
Also Hibernate is still picky enough that I had to tell both resume file and boot entry where to find swap, duh. But after doing that it works. Suspend is funny though, it greets with green screen flash on resume and one line of text that vanishes quickly enough that you can’t read. It doesn’t seem to cause any problems though, other that beauty ones :D.
Estonian ID-card with Firefox 2 didn’t want to notice that I have Java installed, had to edit some postinstall script, not too troublesome when Launchpad has detailed instructions for you.
Otherwise X60s and Hardy get along very well, haven’t noticed any other issues so far. This way I might test my luck with fingerprint reader and HDAPS again.