[SOLVED] Issues updating Samsung 860 EVO ssd firmware
Linux - SoftwareThis forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
I want to update my Samsung 860 EVO ssd firmware on linux, but I'm encountering errors. Some background to the situation is that Samsung provides an iso to make a linux livecd with to update firmware, but apparently Samsung has recently stopped caring about the quality of those images and they don't work. What some people have done is extract the initrd from the iso and run the updater locally on their system. Here are some posts I found and have been following that show how to do that (the blog seems to have gotten its information from the reddit thread): https://www.reddit.com/r/zfs/comment..._ssd_firmware/ https://blog.quindorian.org/2021/05/...in-linux.html/
When I follow all those steps including installing unzip as mentioned in both posts, the updater scans for a bit and then aborts with the following error message:
Code:
eError_TransportFailed from ATACmd_Identify.cpp
terminate called after throwing an instance of 'FeatException'
Aborted
I have been unable to find much discussion about this error message and not sure how to resolve it. I'm cautious of running the updater with gdb because I don't want different behavior screwing the ssd while debugging if undefined behavior is causing this. I have everything backed up, but I don't want a bricked ssd at the moment.
I am trying to update the firmware from RVT02B6Q to RVT04B6Q.
I don't know Samsung doesn't provide them. Supposedly there's compatibility for older systems (that's all support wrote according to a post on a form). Even if there's no real benefit to the firmware update, I want to at least make sure I can update the firmware on Linux without booting into Windows so if there is a future update that fixes a serious flaw and Samsung's live updaters still don't work, I can update from my system and not floundering to set up a windows system to detect my ssd and update from there.
I think the OP wanted to install Magician - it's for Windows only.
Nothing in my original post or any of the posts I linked to suggests this. The ISOs to to extract the initrd or make into a livecd to update Samsung ssd firmware can be obtained at https://www.samsung.com/semiconducto...ownload/tools/ and the specific ISO I'm referring to can be obtained at https://s3.ap-northeast-2.amazonaws....T04B6Q_Win.iso. I don't know why Samsung decided to put a Win suffix in the filename, but I couldn't find an ounce of Microsoft in there.
I've not noticed any issues. The articles I can find about it only say that users have been reporting problems without mentioning specific problems they're having.
I've got a PM981 in my laptop, an 860 Pro and a 970 Pro in my office file server, and an 860 EVO and 2 x 860 Pro in my home desktop. All 100% Linux machines, all have factory firmware.
None of them have exhibited any noticeable problems. The oldest one is over 3 years old. The office server is over 2 years old.
EDIT: I'll keep researching, but if anyone can provide more information about the specific combinations which have trouble, I'd greatly appreciate it.
There was an article a while back about the hardware Linus uses:
Quote:
Originally Posted by The guy who wrote the Linux kernel
I've refused to touch spinning media for over a decade by now, and for the last several generations I've tried to avoid the hassle with cabling, etc., by just going with an m.2 form factor. I've had several of the Samsung SSD's, they've been fine. A few generations ago there were lots of bad SSD's, these days it's much less of an issue, but I've stuck with what works for me.
EDIT #2: Ok, after doing some research into it, this problem only occurs with particular SATA controllers. The way to find out if your SATA controller is impacted is to search through your kernel logs for the text, "FPDMA QUEUED".
If those words do not appear in your system logs, then your hardware combination is fine. You can use your system as normal.
If those words do appear in your system logs, you can append "libata.force=noncq" to the kernel command line to work around the problem. The article linked to by cwizardone above says that this will now be the default behaviour on all affected hardware combinations.
It's most likely to happen with old AMD SATA controllers.
The problem will happen during periods of high IO, like copying a large file onto the drive. I will also add that this problem is not unique to Linux. If your SATA controller is one of those impacted, using it under Windows 10 can cause your system to freeze requiring a hard reboot. The way to fix it in Windows is similar to the Linux workaround... by disabling NCQ. To do it, you need to add this to your registry:
That Youtube video doesn't show a solution to the issue and has disabled comments so no one can ask if they fixed it since then. Every command except for the last one just extracts the iso and cleans up, the actual update command (the last command) is just one step.
Some background to the situation is that Samsung provides an iso to make a linux livecd with to update firmware, but apparently Samsung has recently stopped caring about the quality of those images and they don't work.
Then as indicated by a previous poster, you should complain to Samsung. They provide a bootable environment which runs their scripts to update the firmware of their drives. The whole process happens independently of the OS installed. The only part of the process which depends upon an OS is the burning of the iso to a USB or CD/DVD. This can easily be done on any platform.
If I'm reading the situation correctly, then this impacts upon everyone who has a Samsung SSD, not just Linux users.
I note that the instructions mention that the upgrader won't detect the drive if it is in a hardware RAID. Are you running a RAID?
So you've paid Samsung for a product, and now you want to upgrade the firmware.
Samsung provide a means to upgrade the firmware, but it doesn't work.
Have you attempted to contact Samsung, telling them how it doesn't work, and asking for support in making it work?
I didn't contact support at first because the blog that was posted in May 2021 said that this has been an issue for years and I assumed sojmeone has contacted them about it already but with no avail. I would contact them now, but their ssd support is closed on the weekends.
Then as indicated by a previous poster, you should complain to Samsung. They provide a bootable environment which runs their scripts to update the firmware of their drives. The whole process happens independently of the OS installed. The only part of the process which depends upon an OS is the burning of the iso to a USB or CD/DVD. This can easily be done on any platform.
If I'm reading the situation correctly, then this impacts upon everyone who has a Samsung SSD, not just Linux users.
I note that the instructions mention that the upgrader won't detect the drive if it is in a hardware RAID. Are you running a RAID?
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.