Re: Are you listening Eadon?
Did when I tried it on my cars EMS..:-)
Samsung laptops will no longer be irreparably destroyed when their users try to boot Linux on them, kernel chieftain Linus Torvalds made certain today. The brainboxes down at Ubuntu-maker Canonical penguinery issued a warning over the incompatibiity and have been tackling the nuclear bug that destroyed the whole Samusung laptop …
Did when I tried it on my cars EMS..:-)
Well it is a sign that Linux isn't widespread even 22 years after it first appeared.
The irony of a company making a lot of Linux based phones but having a laptop that won't run it.
No... But with Vista that would have been an improvement!
Samsung supplied the code example.
Will they replace the Bricks?
I doubt it, they will probably claim the "Made for Windows 7/8" sticker on the laptop states its intended use.
Pretty damn snappy response by the coders there. Very nice. But if you are one of the unlucky people who just bricked their laptop, what are your options? It's not like you can boot anything any more to even turn off the bad behavior.
Are Samsung going to earn themselves some brownie points by offering a repair scheme/program? Or are they going to take Redmond's coin and hide behind "well, we said that only Windows was supported"?
Saw a fix proposed involving disconnecting power, taking back off and temporarily removing motherboard battery, due to it being a NVRAM corruption linked here.
If not it's a question of asking for a factory replacement as this should reasonably be covered by any reasonable hardware warranty, unless the warranty specifically prohibits using software other than specified, in which case it would be a consumer rights issue.
The ability to boot from CD or USB is a fairly long-established feature in the PC world and quite widespread amongst sys-admins. Others have mentioned that CD-ROMs from magazines or USB sticks from elsewhere may actually be live distros.
These are both legitimate use-cases. It is a reasonable expectation of the savvy customer that such practices should not brick the machine, especially if the vendor makes no attempt to disable booting from CD or USB. Equally, it is an unreasonable expectation of the vendor that an unsavvy customer can prevent this being attempted. Therefore, the goods are not fit for purpose.
that would be bash I guess.
If it's a boot problem, more like ash, or busybox.
BTW: Back when I was "qualifying" servers, and writing tests for add-in cards, it was not unusual to get a demand that my tests run under DOS (Usually FreeDOS). Apparently many manufacturers don't like taking the time to boot either Linux or Windows. Big fun explaining how a DOS program to test a 10Gbit NIC with 64-bit DMA was going to cost them.
And yes, I ran across Mobos that had lots of "PCIe" slots, which were only "qualified" as graphics card slots. That is, "We do not respond to bug reports when anything but one of our approved video cards is plugged in to those slots. Oh, and some "8-lane" slots were on the far side of a 1-lane HT link.
Is it true that one of these bricked lappys is still more useful than one that boots Windows 8?
Is it true that one of these bricked lappys is still more useful than one that boots Windows 8?
No, but the interface is a lot nicer.
I know we all like to stick it to the man (Samsung) and we all fight for the underdog (Linux) but is this actually all Samsungs fault?
Yes a very serious bug has been highlighted here and at the very least I expect that Samsung should be doing something to plug this hole from their end, to avoid it becoming an exploit in the future. But should they (apart from good customer service/good will/great PR) replace the laptops that have been bricked?
People keep going on about this code that Samsung supplied so I re-read the article and the original story and got the following from this article
"Long ago Samsung told me that it was just fine to be doing this, and that there would not be any problems (I based the samsung-laptop driver on code that Samsung themselves gave me.)"
So a long time ago in a galaxy far, far away someone at Samsung told him he could do it. When did they give him this code? Recently or "Long ago"?
Is it just possible this exalted code monkey did something wrong? After all "To Err is to be human"!
And from the original article
"The Samsung laptop driver module source code is here. It was written by Greg Kroah-Hartman, who said he based it on code from Samsung."
Since we know GKH doesnt work for Samsung, he has written the code based on code from Samsung, again how old is this code?
Before everyone skim reads this and just sees Samsung good Linux Bad, this is not what I am saying. What I am trying to point out is that the majority of people are that blinkered into believing the major corporations are out to get them that they refuse to believe that when something goes wrong it isnt there (the corporations) fault!
It would be nice to see a little bit of objectivity from the comentards, maybe we might see it from the article writers then!!
Two downvotes and counting. You see what you get for posting a comment that attempts to be even handed? The days when The Register was a place for sensible and witty comments are long gone. It has been hijacked by ex News Of The World readers and disgruntled ex Gnome Ubuntu users.
So, if you want to get upvotes in future, do as they do. Make sure that every comment you make trashes "Micro$oft" and "Windoze" so you can be seen to be "one of the boys".
Because balanced, intelligent comments are no longer wanted on The Register.
"Two downvotes and counting"
Thing is, bear in mind in that the comment section's monthly pageviews are into the seven-figures ballpark now. A handful of down or upvotes really isn't indicative of anything. IMHO.
So, comment away. PS: you won't get much love for saying "Micro$oft" around here, anyway.
There's one basic rule with firmware - nothing a user does should brick a machine unless they explicitly try updating that firmware.
Samsung failed that rule, Samsung's fault.
Reading through this (to me anyway) it basically says that although Samsung made an error in the version of UEFI they should of issued (version 2 instead of version 1). It was actually the Linux module that over wrote the boot entry for setup. No way should that be even accessible so yes to some extent Samsung is to blame, but who wrote the code that enabled it to do that in the first place? (and before everyone says Samsung, they didnt the just supplied some code that this code was based on!)
"The implementation in Samsungs UEFI shows some weird behavior. Error code EFI_INVALID_PARAMETER should only be returned, if one of the given pointers to variables is NULL and pointing to an invalid memory section. Samsungs implementation also throughs this error, if the given memory blocksize is not exactly 128 bytes, so for example (like the Linux-efivars module does) 1024 bytes. The Linux module does not expect the strange error code (it checks for NULL pointers itself) and does not report any UEFI variables, no boot entries, no nothing. The installer accepts that and installs the Linux boot entry into the first slot, where actually the boot entry for the setup is located - overwriting that entry! Setup is dead since Linux took its boot entry.
This bug does not only cause Linux to stumble, also UEFI Shell version 2.0 does not start at all. The shell also allocates a larger buffer for the variable name, which causes the shell to exit with error trying to allocation the environment variables within the data section. A small change within the source code and it runs like a charm: Samsung UEFI-Shell 2.0 64Bit (patched 64-bit shell, put in on FAT16/32-USB-stick as /EFI/BOOT/BOOTx64.efi, then boot from stick with UEFI boot switched on)
The error probably has its origin in mixing up UEFI version 1 and 2. In version 1 variable names still had a fixed size of 128 Byte. Version 2 changed this, but Samsung didn't."
So Samsung didnt change the version of UEFI, probably because it was a working stable version with the OS they distributed (W7/8). Im not saying this is a correct way of business, but their attitude seems to be if its not broke, dont fix it. How can they be blamed for (and be expected to replace peoples laptops) this error? A group of users have basically downloaded some code from someone they dont know, they havent checked it, it has bricked their laptop and they want to blame the company that sold them a working laptop. Lets get this straight, they have probably invalidated the warranty by changing the laptop from what was sold.
Have a look at your warranties and see exactly what is and isnt covered, also for those that say Samsung (and to be honest any other large company) should test on more than just Windoze, do you honestly expect them to test every flavour of Linux/Unix out there or just test the software they are selling the laptop with???
PS: you won't get much love for saying "Micro$oft" around here, anyway.
Pfft. Micro$oft is so 2010, dahling. It's "Micro$haft" these days innit?
I'm a Windows only helpdesk admin. I have occasionally booted from a Linux distro disk to do something (usually resetting the password for the admin account on the Windows system). Even I recognize Ubuntu as a major Linux distro and expect Samsung should have tested this.
No, that not an acceptable tag line for a QA department. Their line is supposed to be "If it ain't been tested, it can't be shipped." or something along those lines. And it should include major software distributions which work on the hardware.
No, I've never worked in the QA department, but I've had plenty of lunches with those who did, and took their jobs seriously. For a hardware vendor, this is a mistake akin to a software vendor shipping a CD with malware installed in the boot sector.
The problem here isn't that the author of the driver didn't screw up. He did. The problem is Samsung still committed a shooting offense.
I thought is was Micro$uck$
If hardware / firmware can be destroyed by software then that hardware is not fit for purpose.
Khaptain, you got downvoted because you do not understand the difference between firmware and software. Your comparison between this and chipping a BMW is laughable.
The firmware is a form of embedded software to control the hardware the last time I checked it.
Well done Billium, you really helped us to understand your "level" of understanding.
Would you kindly like to explain to everyone your perceived difference between Firmware and Software....
Samsung has obviously become the new AMD of firmware writing ;-p
No doubt Torvalds will come up with the usual ignorant, expletive ridden diatribe, laying into dedicated volunteers for making mistakes while he makes fancy speeches around the world, raking in millions off the back of other people's hard work.
Now watch the Linuxtards downvote this one in a lather. Sad.
"Re: No doubt Torvalds will come up with the usual ignorant, expletive ridden diatribe
Surely [Diatribe Needed]?
No, there are plenty of expletive ridden diatribes available. It's the 'ignorant' requirement that's hard to meet. Possibly impossibly so. Even though he probably hasn't written a full new subroutine for the kernel in years, I find it doubtful anyone out there knows it better than he does. And as one of the folks to whom Linus recently recently sent such a missive noted, 'it's usually because they deserved it.'
I believe Samsung has licensed their UEFI BIOS from Phoenix, and Samsung would likely not have modified the code for the EFI Variable Store. I am the lead EFI developer for a supplier of embedded processor boards, and I can reasonably say that the Variable Store is one of the most dangerous sub-systems in the BIOS. Since the BIOS boot process depends on information in the Variable Store, it is very easy to make a board unbootable by corrupting the Variable Store. UEFI makes this even more dangerous, since an OS can call BIOS functions through the Runtime Services table, a table of pointers to BIOS functions, as the efivars driver is doing. Frankly, if the BIOS vendors are going to depend on the Variable Store being fault tolerant, then they need to rewrite that code to be fault tolerant.
If the firmware has 'variables' it's not really firmware.
There should be a fallback routine to provide some sort of recovery interface in the event of corrupt data.
"If the firmware has 'variables' it's not really firmware."
It is Intel and Microsoft reinventing Open Firmware. That had variables, conditional execution and a whole raft of other things (and thankfully did not have a f*** GUI).
1. It is still Firmware
2. It is Intelnovation - imitating badly something done by someone else like amd64, via AES instruction set, etc.
If the firmware has 'variables' it's not really firmware.
So, from my uneducated viewpoint we now have, in order of hardeness:
??? (for dynamic variable storage)
Call we call ??? something like "spongeware"? "Jellyware"? "squishyware"?
1. A 30 megabyte blob of sourcecode + hardware dependent extensions probably contain lots of lots of bugs. Probably way more than the bit of assembler code in the BIOS.
2. Samsung doesn't have high quality standards, at least not when it comes to their own EFI extensions.
For me that means that for future hardware I will prefer one without EFI, because it will be buggy for the next 20 years. I also will try to avoid Samsung as they are likely to add more bugs and even critical bugs. (Although seriously, Samsung never has been on my radar for laptops, they never showed up anywhere where I was looking)
Now if I may gaze into the crystal ball to predict the following:
Eventually there will be bugs found which can brick the hardware just by a boot attempt from USB or an SD card. Since there's a service mode in modern CPUs the attack vector might even be USB at runtime or the managment mode of the Ethernet chip. (Intel offers extensive OS independent management over Ethernet with their chipsets)
This will even work for machines with "Secure" Boot enabled, making them somewhat less secure than their BIOS equivalents. Of course none of that will be patched. Some people will however still defend Secure Boot with their life, claiming that it's not just another vendor lock-in system to prevent Microsoft from completing with others.
Spot on Mystic Meg. +1 for you.
Booting into Linux does not FUBAR the Samsung laptops forever. The BIOS chip just needs to be re-flashed, which is no big deal for most folks with a clue.
long ago, I worked in a processor design and configuration test lab inside of Intel.
I can not be specific as to were or how due to the requirements of the job.
However, low level code writers at Intel would indeed need to and did write code at the firmware/hardware level... designed and written, to be delivered on a floppy to a specific machine because this stuff was very brick-ly capable by design. Its purpose was to brick *forever* certain north bridge or south bridge chips under test or even the CPU itself if necessary. no details will be given. The reasons are obvious, they rightfully did not want buggy designs to be available at any cost into the world at large... think of it as releasing a plague...
But I assure you that with just a few commands or even just booting a floppy (at that time that was a common booting device, kind of obsolete now) with the code would utterly and forever bring down a given mobo and or rewrite firmware on a chip... any chip can be done in so to speak...
firmware is not forever-ware... flag errata is real. a CPU can be designed to fix certain known bugs in a given OS such as windows as an obvious example... why do you think the term win-tel came to be... at one time long ago Intel processors had a real advantage with Windows, due to Flag Errata capabilities in the CPU fixed some "difficulties" Windows had with other company’s CPU design’s -- long ago in the mid 1990s... Of course now with the rise of Linux, even in the 1990s, it was a favorite of many Intel engineers for also obvious reasons. All CPUs of x86 designs from all of the survivor company’s can run Linux code very well. AMD64 is a very good choice as is Intel CPUs, I do believe that Samsung will smell the coffee and see that bucking Linux is not such a good idea... Not long term... it is the future for a foreseeable time, Windows as it is a MS proprietary is at the disadvantage, long term... as it becomes more irrelevant in the marketplace its failures will be of an increasing scale due to the general industry’s need to move on.
I sure wish that the Linux community had stepped up and developed a user friendly version of Linux and "encouraged" software developers to make similar Linux software to Windoze software so one could migrate easily for Biz purposes. I've tried several commercial versions of Linux and IME:
1. Customer technical support was nonexistent - i.e. they could not advise how to set up a modem in Linux
2. The popular Windoze software companies don't seem to have any interest in Linux - probably due to Microsucks "marketing dollars"?
3. You pretty much need to be a PC geek to make the switch for a Biz - which is unfortunate
Until someone comes up with a better O/S than Windoze - which would not be hard to do... and has the software companies support for said O/S, Windoze will continue to be the ruse forced on the majority of PC users of the world, many of whom have no clue what a poor O/S it really is.
You nailed the problem better than you realise. Making a better OS than windows is possible, there are many linux destro's I can easily see used on desktop. However getting the software companies and even hardware companies to support is neigh on impossible.
I have 3 windows 7 systems. 1 runs just windows and due to installing and uninstalling some software has various features missing. Simple things like going directly to the downloads from the web browser to where they were downloaded, same issue with my mail client. I assume something was removed/modified that shouldnt have been but that is the softwares fault.
I have a laptop. Low powered but I dont need a monster. Windows recognises the hardware as ok but not great and it runs like its been kneecapped twice. I dont use the windows OS because it is so unusable and slow that it isnt worth trying. I dual boot with linux mint and it takes a couple of minutes to boot to the login screen. From that point it runs at a perfectly normal (not slow) speed. No driver issues or problems.
My home desktop monster is pretty nice and beefy (for games). Windows runs fine, except for unknown reasons the Nvidia graphics drivers fail if I am browsing the internet (assume its a hardware acceleration issue although turning that off doesnt fix it). Mint runs with no issues and no fuss. No driver issues, no complication and totally stable.
I did have fedora on my desktop for work except the gnome SSH-keyring thing didnt work (fedora 17). Having to manually add my keys from command line was an additional step I soon got bored of. The stripping of proprietary stuff requires more setup from the beginning but wow was it fast. Gnome3 looked nice but is not very usable so I installed cinnamon. This is until I caved over the SSH issue which is unforgivable when I use it for work.
Ubuntu/mint had issues on my specific hardware which caused a freeze/crash every hour (reason for installing fedora). After a few months I added an SSD and re-downloaded mint. Either the SSD fixed the crash or ubuntu solved the issue. I dont care which I am happy.
Windows has the software monopoly but their OS is not much more stable than linux. Finding the right linux destro for you can take a little research, but you dont make a long term investment without a little research. And linux is free.
I am not advocating one over the other, it depends on what you want the system to do. But windows aint great and linux aint sucky. You just need to find what is right for you.
Back to topic, this is clearly a samsung issue and I hope they get it all resolved quickly as I like their products generally. Changing your OS is a fundamental requirement of a PC and should not be so easily bricked. But accidents can happen and if samsung rectify the broken machines with little fuss then I dont see why people should be unhappy. It certainly doesnt need sniping from cultists from either windows or linux camps.
Making a better OS should probably start with working what you *don't* need, then removing it/never adding it in the first place.
Clue to MS - the following are not OS requirements:
- Media player
- web browser
- 2 GUI's
- Media center
- Office apps
> they could not advise how to set up a modem in Linux
Setting up a modem in Linux is trivial - there are thousands of people who cuold have shown you how to do this.
My guess - since this is the usual cause of such issues - is that no-one could show you how to set up a WinModem. And the reason for this is really simple - it's not a modem. It's little more than an analogue adaptor, with the modem stuff being done by the core processor and interfacing by undocumented means.
It's essentially impossible to get a WinModem working under anything but Windows unless the hardware manufacturer decides to help out. And they didn't.
Minor nit: It is also a Linux issue as can be seen from the fact that a closer inspection of the code resulted in a fix, and from the sounds of it, an improvement in working, but problematic code. I'll go a bit easier on the Linux guys than the vendor on this one because it sounds like the vendor was unhelpful when they were trying to write the driver. For the Linux code writer the punishment is a stern email from Linus, and public embarrassment (which from the sounds of it have already been delivered).
I concur that even if they hadn't been gits about supplying code documentation, Samsung still comes in for higher criticism because they SHOULD be testing for this. Maybe not every version from every distributor, but certainly Red Hat, Ubuntu, Debian, and SUSE with either CentOS or Slackware taking 5th position for minimal testing.
You sir have OBVIOUSLY never worked on a help desk. Having walked down a good many rows of cubicle farms I can assure you that FREECELL is the MOST important application in the OS.
So you finally learned what the HCF1 instruction does!
1 aka Halt and Catch Fire (http://en.wikipedia.org/wiki/Halt_and_Catch_Fire)