Blog

Synaptics ClickPad: by far the dumbest laptop touchpad ever invented

There isn’t much to say about these abominations, so I’ll keep it short. Many new laptops, most often from HP, are coming with multitouch trackpads known as “ClickPads.” Whoever designed them is a complete idiot, because the mouse buttons are directly underneath the bottom of the touch surface itself! There is no clean way to tap a button with your thumb with another finger on the touch surface. Other than very cautiously placing a single finger down on the desired button, there is no way to avoid moving the pointer while attempting to click. In fact, the only way to fix the misbehavior is to install the latest Synaptic drivers and, buried deep within the advanced options, reduce the functional area of the pad to not include the button section.

WHO COMES UP WITH THIS CRAP?!

Linux PowerPC yaboot + initramfs/initrd woes solved; no more “unable to mount root fs” problem!

This one had me ripping my hair out for two days straight. Anyone who has tried to create a Linux bootable CD for a PowerPC system has either run into this problem, followed some kind of magic set of directions that don’t explain the details that could cause this problem, or do something crummy like using the CD as the root filesystem.

PowerPC systems are very different from i386/i686/x86_64 systems in how they boot, and because they are much less common, they garner less interest and also have less available documentation and Internet forum assistance. The specific problem that I ran into is this: using the Tritech Service System’s construction for x86 as a template, and gleaning information from other PPC bootable CD images, I was able to create a CD that would properly boot the iBook G3 I used for testing into yaboot, the PowerPC Linux loader. The process of figuring out how to pull this off took many hours of reading and dissection, and I could easily chalk a full day’s work up as wasted on this process due to the fact that it’s not well-documented. From there, yaboot was configured to load my kernel and initrd (in this case, an initramfs, not an initrd, but the loading process is the same.) However, I was greeted every single time with kernel output that showed no indication of any initrd/initramfs being loaded and handed off to the kernel. I was stumped. It seemed as if I had done everything that the others do, yet it didn’t work. I tried these things to resolve the problem, to no avail:

  • Copying the map.hfs file from another Linux distribution that seemed more complete
  • Editing yaboot.conf to add and remove things like ramdisk_size=16384 or device=cd: to the options
  • Recompiling the PPC32 kernel with initrd turned on (shouldn’t be needed for initramfs, but I was quite annoyed and desperate)
  • Playing with the ofboot.b text file to see if anything inside could make a difference (CHRP is becoming a dirty word in my book)
  • Booting the G3 to Open Firmware and typing excessively cryptic and obnoxious commands that make learning “sed” look like a cakewalk
  • Pondering the consumption of potent alcoholic beverages while at work to defer blame for not figuring this nonsense out

So, after two days of trying to go from a collection of packages and a kernel to a real-world bootable Tritech Service System 2.7.6 ISO for PowerPC Macs, and nearly losing my sanity in the process, I finally hit upon an obscure, nasty, rarely discussed, extremely STUPID, yet horribly important fact:

yaboot doesn’t load initrd or initramfs if the kernel image is compressed.

Yes, that’s it. That’s the source of my ills. The godforsaken bootloader will detect a compressed kernel and simply and quietly ignore the “initrd=/boot/initrd1.gz” parameter. The even simpler solution? Instead of using the compiled kernel at arch/powerpc/boot/zImage.pmac, one must use the compiled kernel at…well, you might not believe this…just plain vmlinux. The uncompressed raw kernel image produced immediately under the Linux kernel folder you build in. That’s all that I had to do, and I have never been so pissed off over such a small detail in my life.

All too often in the computer world, I see the “user” aspects of things documented repeatedly and done to death; entire volumes have been written just to explain how to perform basic functions or configure a program to the liking of the user. Even the process of compiling a Linux kernel is so thoroughly documented and explained that it’s fairly hard to fail to do it if you use a decent guide. Why is it, though, that these crucial points involving low-level details and bootloader quirks are overlooked and go largely undocumented? If I type “yaboot initramfs” into Google or Yahoo or Bing, why doesn’t the very first page that appears scream at me in bold text “YABOOT WILL NOT LOAD INITRD IMAGES IF THE KERNEL IMAGE IS COMPRESSED!” I know of approximately ZERO bootloaders that have this obnoxiously non-standard behavior. I’ve messed with LILO, SILO, GRUB, SYSLINUX, ISOLINUX, PXELINUX, BootX, and U-Boot on a $99 WM8650 ARM-based netbook, and not once have I run into this problem with ANY of those bootloaders AT ALL.

I hope that this information helps anyone trying to master a Linux on PowerPC bootable ISO to not waste two days and use their CD burner to create ten useless shiny silver coasters in the process. Also, could someone explain to me WHY the yaboot bootloader can’t load both images as compressed images?

AMD beats Intel on price versus performance every single time.

UPDATE: I wrote a newer “AMD beats Intel” article with much better information and more relevant processors.

This was written April 1, 2012 and is not an April Fool’s joke. If you’re reading this years later for some reason, check to see if my reasoning still applies.

I walked into a CompUSA store to purchase myself a new machine with lots of cores for faster compilation of the Tritech Service System, among other things I do daily that require Linux and for which I didn’t have a decent home machine to work with. Ever since I got Netflix, my Toshiba Satellite P775-S7215 (arguably the best laptop I’ve ever used in my life, and certainly more than I ever paid for a laptop before) has been stuck in Windows 7 so that I can watch things while I work. It’s also nice to have the Windows GUI running for Internet use and document reading while plunking around in Linux on the compiling machine, which I have given the name “Beast” because…well, it’s a beast…but I digress. I walked into a CompUSA store, started tossing items into the shopping cart, and got to the CPUs, for which someone must help me since they’re behind a counter.

I asked what they had, and then said I was debating AMD vs. Intel. The employee behind the counter made the blanket statement, “Intel is always going to beat AMD.” I knew better, so I headed over to my favorite place to compare raw CPU performance, and started asking him for CPU prices and names. When PRICE was taken into account, AMD always beat Intel, rather than what he had told me, and he seemed as if he had lost a piece of his religion when I told him about it. There’s a serious problem in the computer hobbyist world where blanket statements are made and repeated ad infinitum regarding a variety of things, and this AMD vs. Intel performance debate is the worst of them all.

Before I explain why I say Intel loses to AMD on every price-to-performance ratio comparison, I’d like to mention another hardware experience that came before this which illustrates that skepticism and Google-Fu are extremely powerful tools. The WD20EARS 2TB 5900RPM SATA hard drives no longer have the excessive head unloading issue, which was a severe problem and very common cause of failure before even a single year of use was had in those particular Western Digital drives (and I believe some other early WD Green drives as well). I know this because I looked it up while staring at two of these drives I wanted, and reading that the issue was no longer present in the newer series of WD20EARS drives, and then purchasing them and using smarton montools in Linux to CHECK THE HEAD UNLOAD COUNT during a variety of usage scenarios. The count didn’t exceed 100 unloads within a week, and that put the issue to rest for me. (The approximate unload count needed for a drive to start failing is 300,000 and 100 in a week would take 3,000 weeks to reach that unload count.) I got two 2TB hard drives for $80 before the Thailand flooding happened, and I don’t have to worry about a manufacturer-caused premature failure occurring in them.

On to the meat of this discussion. My methodology is extremely simple. Go to a website such as Newegg, pull up CPUs that are the same price (or very nearly so), and compare the CPUs at cpubenchmark.net. If you’d like to give them some sort of price-to-performance score so you can perform comparisons across prices, you can divide the CPU benchmark score by the price, then multiply by 100 (since you’ll get LOTS of decimal places). Let’s see how this works out in real-world terms. As of April 1, 2012, the price of an AMD Phenom II X6 1045T processor at Newegg is $149.99, while the best Core i3 available at Newegg (the Core i3-2130 dual-core) is also $149.99. There are two other Core i3 CPUs at that price, but they are slower or are a first-generation i3, and anyone who is a savvy buyer will get the best bang for the buck, so those are being ignored. Why not an i5 or i7? Well, it’s not an apples-to-apples comparison when you put a Phenom II X6 against an i5 or i7, not because of some notion of “CPU generation,” but because you can’t even get a Core i5 desktop CPU at Newegg for less than $179.99, so there’s simply no i5 or better in the Phenom II X6 price range; also keep in mind that I’m justifying a personal purchase which fits personal budgetary concerns (mine was a 1035T for $130), and I put the price difference toward getting 16GB of RAM instead. If you have a higher budget, you’d need to compare against a better AMD CPU, which we’ll do in a minute. So if we perform the price-to-performance score calculation that I came up with earlier, what do we come up with for these CPUs? We’ll also compare the cheapest available i5, which on a price-to-performance scale is also beaten by the selected Phenom II X6.

AMD Phenom II X6 1045T Thuban 2.7GHz: 3355

Intel Core i3-2130 Sandy Bridge 3.4GHz: 2942

Intel Core i5-2300 Sandy Bridge 2.8GHz: 3130

So in terms of price-to-performance (which most of us refer to as “bang for the buck”) the AMD Phenom II X6 stomps both the i3 and i5 chips closest to its price. (Interestingly enough, we also see that the i5 is a much better value than the i3, both of which are the newer Sandy Bridge chips.) Let’s look at the new AMD FX chips that some of my friends have been raving about (and building gaming machines with) to see how they compare against the best possible Intel offering for the same price…

AMD FX-8120 Zambezi 3.1GHz ($189.99): 3743

Intel Core i5-2400 Sandy Bridge 3.1GHz ($189.99): 3222

The AMD FX chip pummels the Core i5 at the same price point, and even my Phenom II X6 fails to be “worth it” compared to the FX-8120. If I was not on a budget, I would have gone for the FX-8120 instead. Note how even though the i5-2400 is the best Intel chip in this comparison so far, it still scores 133 points lower than the Phenom II X6. Higher numbers mean more value for the price. Let’s do a few more comparisons against CPUs that I might be interested in if I was building a high-performance box with a higher budget, such as the awesome i7-2600K, just to see where the numbers fall.

Intel Core i7-2600K Sandy Bridge 3.4GHz ($324.99): 2799

Intel Core i7-3960X Extreme Edition Sandy Bridge-E 3.3GHz ($1049.99): 1342

AMD FX-8150 Zambezi 3.6GHz ($249.99): 3307

I’ve gathered all of these numbers into a chart to summarize the point of this article. I think the chart speaks for itself. I also invite you to do your own math and draw your own conclusions. Feel free to leave a comment as well!

[SOLVED] Code 12 on Windows 7: the device cannot find enough free resources

Moving a Windows 7 image created on an AMD platform to an Intel platform, I ran into the dreaded Code 12 error with my Intel GMA3150 video device, indicating that it could not find enough free resources it can use. The culprit was the AMD PCI Express (3GIO) Filter Driver under the System Devices category in Device Manager. Right-click on the AMD PCI Express (3GIO) Filter Driver, uninstall the device, check the box to also REMOVE THE DRIVER FILES (otherwise it will return immediately) and reboot the computer. Install any missing device drivers normally, and reboot again, and you will no longer have the Code 12 error.

If this helped you, would you please link back to this article? I’d appreciate it! Leave any questions in the comments section.

Kernel panic – not syncing: Attempted to kill init! (glibc problem)

While working on the Tritech Service System, I made the mistake of using a glibc package compile for an i686 in the initramfs for an i586 kernel. I happened to do some searching to figure out the source of the problem, since all of my kernels would crash with this message in the exact same place, and thought I’d share it with everyone. This could frustrate custom Linux distro attempts easily.

In short: if the kernel panics because something “attempted to kill init!” then make sure your C library (glibc, eglibc, uclibc, dietlibc, whatever) is not compiled for a CPU higher than the CPU you’re trying to run on.

What’s happening is the system is attempting to execute “init” which immediately terminates due to the fact that the library uses invalid CPU instructions (the older processor doesn’t know about the newer instructions compiled into the library). The message “attempted to kill init!” is technically correct: init was killed because it tried to do something bad, but init is required to run anything else, so once init immediately crashes out, there’s nothing left for the system to do, and the kernel hangs itself up.

It’s 2012, and the Embeddable Linux Kernel Subset (ELKS) is back!

A long time ago, some Linux kernel developers forked the Linux kernel (in truth, it was more “rewrite” than “fork”) into a version that would run on 8086/8088-class processors, like in the original IBM PC and PC/XT. That kernel was coined the Embeddable Linux Kernel Subset, or ELKS for short. The project has seen very rocky times in the 2000s as developers gradually moved away from the project, interest slowly faded, and perhaps the near-death blow for ELKS was the tragic loss of Riley H. Williams, whose contributions of time and skill kept ELKS going for years until his death. (Rest in peace, Riley; we miss you.) After Riley died, no one who was involved had the time or energy to steer the ELKS project anywhere. I released a broken tarball of all of the source code contained in the ELKS CVS database on SourceForge, dubbed it release version elks-0.1.3, and hoped that someone else with more time and knowledge than myself would be inspired and take the initiative to get the ball rolling again.

Other than an occasional blip on the ELKS mailing list (linux-8086 at vger.kernel.org), nothing really happened. I tried to spark some conversation about where ELKS should go, but almost nothing came of that effort either. ELKS was doomed to obscurity, and even I mostly forgot about it as I was distracted by other things in my life. And then, something changed!

Juan Perez-Sanchez posted a patch to linux-8086 to fix compilation errors on 2012-01-10. I starred it but didn’t really think much of it, because I was very busy that day, and I forgot about it. Juan, though, wasn’t kidding around. Over the remainder of January of 2012, Juan posted four more patches to the mailing list to fix a variety of small issues. Hans posted that “it is good to know that ELKS is not completely abandoned,” and after seeing that message in my inbox on top of all these patches, I couldn’t keep myself away any longer.

I transitioned the code on SourceForge from CVS to Git on Feb 5, and the next day I imported the CVS commit history into Git as well. I’ve decided to fully take the reins, suck it up, and become the leader of ELKS, particularly since I am the only administrator left on SourceForge who is active. So far, there has not been a single day since 2012-02-05 that the list hasn’t had a post. I’ve begun digging up some old hardware to test on, and I can safely say that ELKS isn’t dead.

ELKS is back. Anyone who wants to help should subscribe to the linux-8086 mailing list at vger.kernel.org and contribute!

Celeron 900 doesn’t like 8GB of RAM (in my eMachines E527-2537

I have an eMachines E527-2537 laptop which I picked up on an Amazon lightning deal, and two of my friends have identical laptops as well. The unit specifications say that a maximum of 4GB of RAM is supported, but I’ve seen some situations where those specifications weren’t accurate and higher amounts of memory can be taken. I replaced the 2GB with 8GB (2x 4GB DDR3) to see what would happen. The system recognizes the RAM, but a very odd thing happened…

Apparently, installing more than 4GB of RAM causes the processor to run at the speed of a 486!

While everything seems to function properly, it does so at an unusable speed. So, apparently an Intel Celeron 900 system doesn’t tolerate more than 4GB being installed. Even one 4GB stick works as long as the second slot isn’t populated, so it’s a capacity limit rather than a per-DIMM size limit.

Hopefully this helps someone who runs into the same weirdness!

Getty Images “Lucy” responds: “I find these comments hilarious”

Here we go again on the Getty Images merry-go-round. An individual claiming to be “Lucy” working for Getty Images (email mungous1983@aol.com, I ask my readers to verify that this is a legitimate Getty Images employee and not a mere troll and let me know) posted this in response to what has become a massive post of mine, “The Getty Images Extortion Scheme:”

I work for Getty Images (“the enemy”). Just thought I would point out that the Getty family no longer have anything to do with the running of the company. Mark Getty is a director by name only.
I find these comments hilarious by the way – I wonder what you would be saying if you were the photographer whose work was being used with credit/payment?
I agree the letters can be a little aggressive, but they are standard letters sent out whether you are an individual or a big corporation. There are so many infringements that we simply do not have the time to personalise each letter. However, if anyone who recieves one simply calls the number on the letter and explains the situation, you will find things a lot more human and reasonable.

In response to her, I posted this lengthy comment, which deserves its own post. Getty Images execs, listen up, because you are all fools if you don’t pay attention!

Lucy, unfortunately, you seem to have missed the point AND approached this matter with the same attitude that everyone here is complaining about. The problems with the letter are many and varied, but the largest problem that it takes the immediate approach of threatening to sue. Unfortunately for your company, if someone removes the images you claim to be infringing, all the screenshots in the world will not help, as they can easily be forged and by the time your lawsuit made it to court, all Internet caches of the supposedly infringing site would have long since been purged. As a matter of practicality, your letter is equivalent to the “pay up or else” notices sent by such unscrupulous firms as USCG and CEG.

But that’s not the REAL problem. The problem is that you are hostile towards customers. “I find these comments hilarious.” YOU might find them to be hilarious, but the person you’re demanding $1500 from under threat of lawsuit for an image whose licensing costs a tiny fraction of that amount does not see the funny side.

Lucy, I spoke to a lady in Great Britain OVER THE PHONE (not online, a real human voice) who had a tiny “psychic” website and received a Getty threat letter. She was almost crying because someone else designed her site and she didn’t know they had used a potentially infringing image, and her husband was bedridden with cancer and she was broke…AND she didn’t even operate the business any longer, she just hadn’t had the site taken down. She was freaking out because of the letter you think is so very reasonable and generous. This is what people like you, who have little consideration for others, do to people when you don’t give a damn and send blanket threat letters like this. To be perfectly honest, it’s unconscionable at best.

The simple remedy is to change the threat letter from “WE WILL SUE YOU IF YOU DON’T PAY US THOUSANDS” to a friendly request for customer conversion. Assume that the person who put up the site is not acting in bad faith and simply request that they license the image properly, and make it easy to do so, at the price they’d pay if they had searched for and licensed the image themselves. Getty would never have built such bad mojo if this approach had been taken from the start, and their customer base would likely have grown, as well as become more educated. When you take the threatening approach to copyright enforcement, though, you can expect nothing more than the digital equivalent of “get off my property.”

I will continue to advise people to thwart your moronic potential lawsuits and brush off your foolish customer-hating letters until I am advised that you have corrected this bad business practice, and you can’t do a damn thing about it, no matter how “hilarious” you think the backlash against your company is.

New PC prices haven’t gone up…is hard drive price spike really price gouging?

The flooding in Thailand caused new hard drive prices to shoot up beyond the $80 mark for pretty much any mechanical hard drive in existence. Panic buying and speculative middleman purchasers fueled a massive drop in retailer hard drive stock, causing retailers to either run out, temporarily remove hard drives from their websites, or severely restrict purchases per customer.

However, it’s been three weeks since the mass hysteria and huge price spikes occurred, and something extremely suspicious has caught my eye:

Despite the cheapest hard drives more than doubling in price, brand new full-sized laptops are still readily available for around $300.

Why? If the cost of a $40 hard drive (the kind usually found in cheap new laptops) is now $90, how is it at all possible that retail prices on laptops might have risen $20-$30 per unit at worst? Where is the PC price spike from hard drive “shortage” that we should all be seeing? I simply can’t believe that it’s standard competitive forces, because if the cost to replace a laptop is $50 higher, the price at retail should be jumping at least by that much due to the fact that the next batch will cost more to acquire. You don’t buy a unit at $250, sell it for $300, and then buy the next batch of pretty much the same thing for $300 to sell at $330. That means taking a loss on current stock relative to new stock, and retailers simply can’t afford to do such a thing unless the stuff won’t sell at all and they’re intentionally liquidating items in order to lose less. However, does that mean EVERY retailer is doing a loss-leading liquidation right now? That seems pretty impossible.

Unless the hard drive “shortage” is artificial, and therefore a bogus, exploitative construct. Something we might even label “price gouging.”

In fact, that explanation makes the most sense to me. Western Digital has many factories outside of the flooded Thailand one. Nidec, the manufacturer of 80% of the drive motors for hard drives worldwide, also has places to shift production, one of which is apparently in the United States. Seagate’s raw production capacity is unaffected by the flooding, though their supply chain might be affected to some extent while the production shift occurs. I’ve read many (admittedly hearsay) accounts in comment sections and forums all over the Internet that explain that the factories outside of the flooded areas were not operating anywhere close to their maximum output capacity.

Only adding to my suspicion is that online retailers who only three weeks ago had completely pulled hard drives from their item lists (or severely throttled sales) now have almost the same selection of drives that they had before the whole disaster began…with pricing on the lower cost drives anywhere from double to triple the previous price, and higher units going for at least 40-50% their original price. How is it possible that, two weeks later, there are suddenly plenty of drives available, yet all at these grossly inflated prices?

I do have a personal stake in this mess: I run a computer service business in which we apply a slight markup to drives and charge labor to install them and shuffle data and Windows installations around. Our determination for our customers as to whether or not a repair is “worth it” has a ceiling in the form of the cost of a whole new computer vs. the cost of repair, and if the repair is due to hard drive failure, that repair cost has risen for us by no less than $50. We are essentially forced to lose markup on hard drives, and possibly even perform work below its actual market value, because a customer faced with a $200 repair quote (half of which is no-profit acquisition cost of a low-capacity new hard drive at this point) is apt to simply go for a brand new $300 laptop instead.

I want to know the truth. I want to know if the shortage is really caused by the flooding knocking out the manufacturing capacity, or if it’s now simply all of the retailers taking advantage of the situation and squeezing us little guys. I don’t like competing with brand new computers, and I happen to be based in a county where plenty of the residents don’t understand that a brand new computer isn’t always a great deal just because it has a low price. At $40 per drive, I can survive and even live a somewhat comfortable life. At $60, I could survive and perhaps take a minor hit that makes things tight, but manageable. When I’m having to quote $90-$100 just to get a replacement hard drive, I start having serious problems making money, and when I don’t see the same price spike happening to these “el cheapo” new machines that supposedly receive drives from the exact same sources, you can bet I’m going to get mighty suspicious.

I can guarantee that the first online retailer to cut hard drive prices down to the point that they’re somewhat sane again will suddenly become a favorite of many currently disgruntled small shops who are in the same boat as me.

Leave a comment with your thoughts, if you know something I don’t, or if I’m just completely off-base.

ZDNet readers: see if this comment sounds true!

From a comment I dug up on ZDNet a minute ago: “ZDNet Readership Maintenance Methodology”

This seems to be the basic formula used on ZDNet to keep people reading and hotly commenting:

1. Have one writer trash a product in an article, no matter how silly or ignorant the premises or discussion have to be.
2. Readers foam at the mouth with opinion both ways, generating massive interest in the readership and getting them involved. Loverock Davidson finds a way to twist the post to be Windows-favorable no matter how trollish he has to get, further inciting comment riots and building the “conversation.” Article writer is accused of being a fanboy, zealot, or being bought off, further fueling the fire.
3. Have another writer praise the same product, again disregarding common sense and logic and standards if required.
4. Step 2 repeats. Loverock doesn’t change. Article writer is still a fanboy or zealot or shill. Enough foaming at the mouth is now made to put shaving cream corporations out of business.
5. Repeat steps 1-4 for anything and everything imaginable. Windows, Linux, Apple, Android, phones, tablets, netbooks, servers, Ubuntu, Oracle, Microsoft, whatever.

Sounds quite true to me. What do you think?