Sunday, February 10, 2013

Samsung Laptop UEFI Bugs: Not Just for Linux

Samsung Laptop UEFI Bugs: Not Just for Linux

About ten days ago I posted about a problem with Samsung laptops getting bricked when trying to boot Linux using UEFI. There was a fair amount of commentary on the problem, and we later updated the article to indicate that it appears the problem is in the NVRAM and that removing the CMOS battery and power is enough to clear the problem. That's certainly still a major bug, and the best thing to do is to simply avoid using UEFI with Linux on Samsung laptops. Except, the bug appears to be quite a bit deeper than just a Linux driver.

According to Matt Garrett, the problem is that the "UEFI Black Box" is supposed to take certain actions when specific conditions are met, but the UEFI code or some other aspect of the firmware is misbehaving. Bugs in firmware can be some of the most damaging, and in this case the bugs appear capable of bricking a laptop, even when what you're doing is done according to written specifications.

Matt explains, "This is pretty obviously a firmware bug. Writing UEFI variables is expressly permitted by the specification, and there should never be a situation in which an OS can fill the variable store in such a way that the firmware refuses to boot the system. We've seen similar bugs in Intel's reference code in the past, but they were all fixed early last year. For now the safest thing to do is not to use UEFI on any Samsung laptops. Unfortunately, if you're using Windows, that'll require you to reinstall it from scratch." Additional details are available in Matt's post.

What's not clear is whether the data that's written that causes the laptops to fail to boot is battery powered (i.e. removing the CMOS battery will clear the error) or if the problem is being written to NAND in some cases. If the latter is happening, the only way to fix the problem would be to send the unit to Samsung for service (or buy a new motherboard). We'll update if there's any additional information.

Source: Matthew Garrett

No comments:

Post a Comment

//PART 2