Buggy MTRR on Acer Aspire One ZG5

The problem: $ dmesg |grep mtrr mtrr: no more MTRRs available I found on my ‘new-to-me’ AA1 that MTRR handling in the BIOS was messed up. Thanks to this [bug report][1] I figured out that I should compile the kernel with MTRR sanitizer enabled. That is: $ zgrep -i MTRR /proc/config.gz CONFIG_MTRR=y CONFIG_MTRR_SANITIZER=y CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=1 CONFIG_MTRR_SANITIZER_SPARE_REG_NR_DEFAULT=1 And output of /proc/mtrr is as follows. Before and after. $ cat /proc/mtrr reg00: base=0x0fffe0000 ( 4095MB), size= 128KB, count=1: write-protect reg01: base=0x0fffc0000 ( 4095MB), size= 128KB, count=1: uncachable reg02: base=0x000000000 ( 0MB), size= 512MB, count=1: write-back reg03: base=0x020000000 ( 512MB), size= 512MB, count=1: write-back reg04: base=0x03f800000 ( 1016MB), size= 8MB, count=1: uncachable reg05: base=0x03f600000 ( 1014MB), size= 2MB, count=1: uncachable reg06: base=0x03f500000 ( 1013MB), size= 1MB, count=1: uncachable reg07: base=0x000000000 ( 0MB), size= 128KB, count=1: uncachable after kernel modification: reg00: base=0x000000000 ( 0MB), size= 1024MB, count=1: write-back reg01: base=0x03f500000 ( 1013MB), size= 1MB, count=1: uncachable reg02: base=0x03f600000 ( 1014MB), size= 2MB, count=1: uncachable reg03: base=0x03f800000 ( 1016MB), size= 8MB, count=1: uncachable reg04: base=0x040000000 ( 1024MB), size= 256MB, count=1: write-combining This is needed for decent video playback with the on-board Intel 945 video.

Gentoo: About "optimizing"

As Linux-Mag points out ([Gentoo Optimizations Benchmarked][1]) using gcc optimizations for “omg, teh speed” is not all that practical. Sure, I’ll add some compiler flags here and there as long as I am compiling everything anyway but I don’t consider that a feature of Gentoo Linux. I actually prefer Gentoo for the package management and customization via USE flags (even with the headaches that they cause sometimes). [1]: http://www.linux-mag.com/id/7574/

Using sshfs with rtorrent

I had this genius idea about using sshfs with rtorrent. I thought that this use case would fit best in situations where you have good bandwidth but not much diskspace, such as my linode VPS (review). So, I’ll attempt to share my findings in this regard. If you are not familiar with rtorrent. You just need to know that it is a powerful, lightweight bittorrent client. It has a “watch” feature that watches a directory for new torrents, and obviously it can put downloaded files in a specified location.

Re-locating a linode installation

I recently had a bit of downtime on my linode. If you are wondering what a ‘linode’ is, check out my review or the website. And a big thank you to the folks that used my [referral code][3] when they got setup with linode themselves, you guys rock! So, about my recent 1⁄2 day downtime. It was self-inflicted because I wanted to move to a different datacenter. I moved my linode from Newark, NJ to Dallas, TX.

Intelligent lighttpd directory structure w/evhost.path-pattern

Searched high and low to find this silly little info. Finally found it [here][1]. # define a pattern for the host url finding # %% => % sign # %0 => domain name + tld # %1 => tld # %2 => domain name without tld # %3 => subdomain 1 name # %4 => subdomain 2 name # Set default vhost server location here evhost.path-pattern = "/www/%0/htdocs" # If we don't have a %3, default to htdocs $HTTP["host"] =~ "^[^.]+\.[^.]+$" { evhost.path-pattern = "/www/%2.%1/htdocs/" } # If we don't have a %4, find the subdomain $HTTP["host"] =~ "^[^.]+\.[^.]+\.[^.]+$" { evhost.path-pattern = "/www/%2.%1/subdomains/%3/" } # If we have a %4, find the subdomain2.subdomain1.