It says to update firmware, but how can you do that from Linux? The instructions are all about some Windows program. Thanks!
EDIT: I'm quite happy with the warning from this article, fixed a potential future problem!
It says to update firmware, but how can you do that from Linux? The instructions are all about some Windows program. Thanks!
EDIT: I'm quite happy with the warning from this article, fixed a potential future problem!
I'm on Arch and apparently I installed the update at some point in the past.
$ fwupdmgr get-updates
Devices with no available firmware updates:
• SSD 980 PRO 2TB
It would be good to put some pressure on Samsung to use the Linux Vendor Firmware Service. I just opened a support ticket about it.fwupd is at least manually adding a warning about the affected firmware. https://github.com/fwupd/fwupd/pull/5481
curl -O https://semiconductor.samsung.com/resources/software-resources/Samsung_SSD_980_PRO_5B2QGXA7.iso
mkdir /mnt/iso
sudo mount -v -o loop ./Samsung_SSD_980_PRO_5B2QGXA7.iso /mnt/iso/
mkdir /tmp/fwupdate
cd /tmp/fwupdate
gzip -dc /mnt/iso/initrd | cpio -idv --no-absolute-filenames
cd root/fumagician/
sudo ./fumagicianhttps://blog.quindorian.org/2021/05/firmware-update-samsung-...
And it seems to have worked. After extracting this updater tool and running it, smartctl kept showing the old firmware version (3B2QGXA7), but after reboot it now shows the new version (5B2QGXA7).
I took the risk of running this while the OS (Archlinux) was running with the disk mounted (this is the OS install disk), and at first sight this didn't cause issues. But still do it at your own risk!!
├─SSD 980 PRO 2TB:
│ Device ID: 03281da317dccd2b18de2bd1cc70a782df40ed7e
│ Summary: NVM Express solid state drive
│ Current version: 5B2QGXA7
My home is on non-redundant stripe of two 980 Pro which both had the bad firmware, so I was obviously motivated, but not panicked as it's replicated hourly to spinning rust (and I have offsite backups). I treat Flash memory as dynamic ram with only slightly better retention. isoinfo -R -i xxx.iso -x /initrd | gzip -dc | cpio -idv --no-absolute-filenames "root/fumagician*"
if you don't want to go through the mounting and extracting everything. bsdtar xOf xxx.iso initrd | gzip -dc | cpio -idv --no-absolute-filenames "root/fumagician*"
(And of course then running `root/fumagician/fumagician` in either case.)After installing unzip, the firmware updated successfully.
https://blog.quindorian.org/2021/05/firmware-update-samsung-...
I've done it some months ago, so I don't remember if it was that one exactly.
I'm now relieved to know that 5B2QGXA7 is still the current one.
nvme fw-log /dev/nvme0
nvme id-ctrl /dev/nvme0 -H | grep Firmware
nvme fw-download -f firmware.ebin /dev/nvme0
nvme fw-commit /dev/nvme0 -s 2 -a 3
nvme fw-log /dev/nvme0
In an unlikely event, may need to change the slot (-s)Extracting the actual firmware update from the files Samsung gives you might be an issue though.